-
20140612 (초음파 모듈 Ultra Sonic)부산IT학원/스마트컨트롤러 2014. 6. 12. 16:33
79일차
-------------------------------------------
ATMega2560 Ultra Sonic(초음파 모듈)
-------------------------------------------
--- ATMega128 소스를 그대로 가져왔다.
몇몇 값이 달라서 그것만 수정 후 실행해 보았다.
- 수정한 것들
- usonic.h
- usonic.c
요것만 바꾸고 실행하면 된다.
그런데 ATMega128 때에도 거리 측정 값이 좀 이상했다.
눈 대중으로만 봐도 20Cm 는 넘는 거리인데, 10Cm 밖에 안나온다는 것...
ATMega128 때는 그냥 넘어갔지만 이번엔 자세히 살펴보았다.
여러 Reg 를 살펴보고 값도 바꾸어 보았지만
알수가 없었는데 normal mode는 이중 버퍼가 안된다는 것을 대충 보았다.
뭔말인지 이해할 수 없었지만 혹시 TCNT0 값에 문제가 있는가 보았다.
usonic.c 소스에 아래 코드를 추가하여 값을 확인해 본 결과,
TCNT0 값이 118을 넘겼을 때에 0으로 초기화되는지 알았는데
118에 도달했을때? 인터럽트만 발생시키고 계속 값이 차올랐다.
그러니 비교방식을 써봐야 별 의미가 없었다.
그래서 0으로 초기화 시켜주는 소스를 추가하고 나니
그나마 근사치?로 나왔다.
'부산IT학원 > 스마트컨트롤러' 카테고리의 다른 글
20140616 (TCP/IP client, server 소스) (0) 2014.06.16 20140613 (TCP/IP) (0) 2014.06.13 20140611 (Network) (0) 2014.06.11 20140610 (TWI로 외부 EEPROM과 통신) (0) 2014.06.10 20140609 (TWI) (0) 2014.06.10