bma253(4250).c 667 B

123456789101112131415161718192021222324
  1. #include "bma253_defs.h"
  2. void i2c_check(uint8_t result,uint8_t* res){
  3. switch(result){
  4. case HAL_OK:
  5. printf("HAL_OK : %d Result : %02x\r\n",result,res[0]);
  6. break;
  7. case HAL_ERROR:
  8. printf("HAL_ERROR : %d\r\n",result);
  9. break;
  10. case HAL_BUSY:
  11. printf("HAL_BUSY : %d\r\n",result);
  12. break;
  13. case HAL_TIMEOUT:
  14. printf("HAL_TIMEOUT : %d\r\n",result);
  15. break;
  16. }
  17. }
  18. int bma253_get_chip_id(void){
  19. uint8_t res[1]={0,};
  20. i2c_check(HAL_I2C_Mem_Read(&hi2c2, (uint16_t)BMA253_DEFAULT_ADDR<<1, BMA253_REG_BGW_CHIPID,I2C_MEMADD_SIZE_8BIT, res, I2C_MEMADD_SIZE_8BIT, 1000 ),res);
  21. }