예전에 작성한 글에 사용된 코드에서 I2C 코드만 에러를 복구하는 방향으로 코드를 작성했다.
코드의 내용은 MPU6050을 사용하여 각도를 추정하고 I2C에러가 발생했을 때 자동으로 복구하는 코드이다.
테스트 용으로 만들어서 코드가 지저분해 자세한 내용은 생략한다.
main.c, i2c.c, stm32f4xx_it.c 파일을 보면 쉽게 이해 갈 것이다.
결과 - (0)
에러가 발생하면 MPU6050을 초기화하고 I2C를 복구한다.
-
위 글에 나오는 알고리즘을 적용했다.
MPU6050.c 파일의
1
|
void MahonyAHRSupdateIMU(MPU6050* mpu6050,ANGLE * angle)
|
함수가 자세 추정 함수이다.
'임베디드 > 기타' 카테고리의 다른 글
Quaternion Open source AHRS 알고리즘 (0) | 2020.09.20 |
---|---|
APC220 통신 모듈 (0) | 2020.09.11 |