본문 바로가기

Robot/Project

자이로센서 myGyro300SPI의 통신문제 해결

자이로센서의 출력에 온도를 고려하기에서 자이로센서 myGyro300SPI를 사용할때 데이터가 하나씩 밀려들어오는 부분을 이야기했었습니다. 그리고 역시 Withrobot의 irmus님께서 정말 고맙게도 직접 오셔서 그 답변을 달아주셨다는...쿨럭... 그래서 그 답변대로 테스트를 해보았습니다.


위 답변인데요. 본래 제 코드의 문제점이 CS의 ON, OFF 부분


그리고 데이터 밀림은 dummy를 하나 받음으로 해결한다...


였습니다. 그래서 코드를


위와 같이 ReadGyro함수를 변경하고


기존의 코드에서 타이머핸들러 부분을 위와같이 두었습니다. ReadGyro 함수를 보면 어차피 여러개의 데이터를 받을거면 dummy를 읽는 부분이 좀 중복되긴 하지만, 사용상의 편의를 위해 그냥 저렇게 두었습니다. 그런데 자이로의 출력이 정상적으로 나오질 않습니다. 음 정상적이라고 할 수 있는데 중간중간에 4000대의 값이 불규칙적으로 들어온다는 것을 확인했습니다.

그래서 혹시나 하고 다시


위와 같이 CS ON-OFF를 사이사이에 삽입했습니다. ... 음... 깨끗한 데이터 출력을 보장받을 수 있더군요... 헉... 이.. 이건 또 무엇인지...

그러나 뭐... 제가 의도한데로 데이터출력이 나타나길래 일단 패스~~~~
원인이 무엇이었을까요? ㅎㅎㅎ...ㅜ.ㅜ
반응형