게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
리눅스에서 GPIO로 PWM 파형 만드는 것 관련 질문좀 하겠습니다.
게시물ID : programmer_19260짧은주소 복사하기
작성자 : 휴먼곰
추천 : 0
조회수 : 1240회
댓글수 : 4개
등록시간 : 2016/12/09 19:52:19
옵션
  • 본인삭제금지
안녕하세요

리눅스 기반에서 GPIO를 High Low로 직접 설정하여 PWM 파형을 만들어야 하는 상황입니다.
PWM으로 출력되는 하드웨어 핀들이 모두 사용중이라, 부득이하게 GPIO 핀 하나를 PWM처럼 사용해야 합니다.

그런데 문제가 하나 있는데요,
핀을 High Low로 변경하면서 파형을 만드는 중에 태스크 스케줄링이 발생하여
스케줄되는 시간동안은 파형을 만들어내지 못하는 상황입니다.

4KHz의 주파수를 만들어야 하는데, struct timer_list 를 이용하여 add_timer() 함수도 써봤는데요,
제가 잘 모르는 탓인지, 500Hz 이상의 더 빠른 주파수는 만들어 내지 못합니다. HZ 계산의 한계인것으로 보이는데요.

혹시 이와 관련해서 스케줄링을 피하거나, 이것과 상관없이 일정 주파수를 만들어내는 방법이 있을까요!?

도와주세요 여러분 ㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜ
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호