인프런 커뮤니티 질문&답변

유도연님의 프로필 이미지
유도연

작성한 질문수

바닥부터 시작하는 STM32 드론 개발의 모든 것

2-2. ICM-20602 6축 센서 인터페이스

ICM20602 관련 질문입니다!

작성

·

324

0

제가 다른 보드를 활용해서 자이로 센서 값을 읽어보려고 하는데요,

PA5, PA6, PA7이 각각 CLK, MISO, MOSI에 연결되어 있는 건 같고,

Interrupt 핀이 C4, CS 핀이 A4인 것과 자이로 센서가 ICM20608-G 인 것에서만 차이가 있습니다. 그래서 헤더파일을 그에 맞게 바꿨습니다.

 

 

제목 없음.jpgICM20608-G 의 레지스터 맵을 보면 WHO_AM_I 의 기본값이 0xAF 인것만 빼면 ICM20602와 크게 다른 게 없어보이는데 왜 ICM20602_Initialization(); 을 실행하면

"ICM20602 Not OK: 0x00 Should be 0x12"

라고 뜨는 걸까요? 0x00으로 뜬다면 어떤 문제가 있는 걸까요?

감사합니다!

답변 2

0

유도연님의 프로필 이미지
유도연
질문자

센서 핀 Initialization 전에 딜레이를 좀 주니까 해결되었습니다! 오실로로 클럭이랑 이것저것 확인해보다 보니 너무 빨리 whoami를 체크해서 그랬던 것 같습니다ㅎㅎ

ChrisP님의 프로필 이미지
ChrisP
지식공유자

아 그렇군요! 그 문제는 발견하기 매우 까다로운데 잘 찾아내셨네요 ㅎㅎ 그럼 앞으로도 문제없이 잘 진행되길 바라겠습니다~

0

ChrisP님의 프로필 이미지
ChrisP
지식공유자

안녕하세요!

WHOAMI 를 읽었는데 0x00 이 읽혔다면 센서가 제대로 읽히지 않은 것 같습니다.

원인의 될 만한 것이 너무 많기 때문에 하나씩 확인을 해봐야 합니다.

핀맵에 문제가 없다면 오실로스코프로 각 핀들의 파형이 잘 출력되는지 관찰해보고 문제를 찾아봐야할 것 같습니다.

CS 핀과 SCK, MOSI 핀을 먼저 확인해보세요!

 

유도연님의 프로필 이미지
유도연

작성한 질문수

질문하기