회원가입 ID/PW 찾기
AA
 또 댓글수 초과네요...ㅠㅠ ㅎㅎ
암튼 아래 글에 대한 답변을 드리자면.....
0.1ms 짜리 타이머 인터럽트를 만들어서 카운팅 변수를 하나 할당한 다음에
여러 포트를 동시제어하는방법도 있습니다.
예를들어 서보 4개가 있을경우, 1번서보는 PA0, 2번은 PA1, 3번은 PA2, 4번은 PA3에 연결되있다 칩시다...
1번서보는 2ms, 2번은 2.1ms, 3번은 2.2ms, 4번은 2.3ms 라 하면
0.1ms짜리 타이머이므로 타이머 인터럽트 한번에 해당 변수를 1씩증가시키고...
변수가 0인상태에서 PA0~PA3까지 모두 High, 변수가 20일때 PA0에 Low
변수가 21일때 PA1에 Low, 변수가 22일때 PA2에 Low, 변수가 23일때 PA3에 Low를 순차적으로 걸면
펄스는 각각 정확히 나가겠죠??
그리고 20ms주기이므로 변수가 200이 될때까지 유지하다 200이 되면 변수를 0으로 초기화하고 다시
루틴을 반복하면 되겠죠 ㅎㅎ 그럼 아래와 같은 펄스가 만들어집니다 ^^

servo_graph.jpg
댓글 0

하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
  • 사람은 자기가 한 약속을 지킬만한 좋은 기억력을 가져야 한다.
    - 니체
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.