| 123456789101112131415161718192021222324252627282930313233343536373839 |
- #include "libs/os.h"
- #include "bsp/bsp.h"
- #include "bsp/icm20602.h"
- #include "libs/logger.h"
- #define i2c_addr 0xD0
- #define ICM_WHO_AM_I 0x75
- static void icm_check_device(void);
- static int icm_i2c_read_bytes(u8 reg, u8* data, u8 length);
- void icm20602_init(void){
- icm_check_device();
- }
- static void icm_check_device(void)
- {
- u8 data = 0;
- icm_i2c_read_bytes(ICM_WHO_AM_I, &data,1);
- sys_debug("%d\n", data);
- }
- #if 0
- int icm_i2c_write_byte(u8 reg, u8 data)
- {
- return shark_i2c_write_byte(1, i2c_addr, reg, data);
- }
- int icm_i2c_write_nbytes(u8 reg, u8* data, u8 length)
- {
- return shark_i2c_write_nbytes(1 ,i2c_addr, reg, data, length);
- }
- #endif
- static int icm_i2c_read_bytes(u8 reg, u8* data, u8 length)
- {
- return shark_i2c_read_nbytes(1 ,i2c_addr, reg, data, length);
- }
|