sc7a20.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #ifndef _SC7A20_H
  2. #include "stm8s.h"
  3. #define SDO 0
  4. #if (SDO == 1)
  5. #define SC7A20_I2C_ADDR 0x19 //I2C写地址:7位I2C地址+一位写
  6. #else
  7. #define SC7A20_I2C_ADDR 0x18 //I2C写地址:7位I2C地址+一位写
  8. #endif
  9. #define SC7A20_REG_WHO_AM_I 0x0F
  10. #define SC7A20_REG_MODE 0x1F
  11. #define SC7A20_REG_CTRL_1 0x20
  12. #define SC7A20_REG_CTRL_2 0x21
  13. #define SC7A20_REG_CTRL_3 0x22
  14. #define SC7A20_REG_CTRL_4 0x23
  15. #define SC7A20_REG_CTRL_5 0x24
  16. #define SC7A20_REG_CTRL_6 0x25
  17. #define SC7A20_REG_STATUS 0x27
  18. #define SC7A20_REG_X_L 0x28
  19. #define SC7A20_REG_X_H 0x29
  20. #define SC7A20_REG_Y_L 0x2A
  21. #define SC7A20_REG_Y_H 0x2B
  22. #define SC7A20_REG_Z_L 0x2C
  23. #define SC7A20_REG_Z_H 0x2D
  24. #define SC7A20_REG_CTRL_INT1 0x30
  25. #define SC7A20_REG_STATUS_INT1 0x31
  26. #define SC7A20_REG_TH_INT1 0x32
  27. #define SC7A20_REG_DELAY_INT1 0x33
  28. #define SC7A20_REG_CTRL_INT2 0x34
  29. #define SC7A20_REG_STATUS_INT2 0x35
  30. #define SC7A20_REG_TH_INT2 0x36
  31. #define SC7A20_REG_DELAY_INT2 0x37
  32. #define SC7A20_REG_CLICK_CRTL 0x38
  33. #define SC7A20_REG_CLICK_SRC 0x39
  34. #define SC7A20_REG_CLICK_COEFF1 0x3A
  35. #define SC7A20_REG_CLICK_COEFF2 0x3B
  36. #define SC7A20_REG_CLICK_COEFF3 0x3C
  37. #define SC7A20_REG_CLICK_COEFF4 0x3D
  38. #define SC7A20_REG_DIG_CTRL 0x57
  39. extern void SC7A20_Write_Byte(uint8_t RAddr, uint8_t WData);
  40. extern void SC7A20_Read_Byte(uint8_t RAddr, uint8_t *RData);
  41. extern void SC7A20_Init(void);
  42. extern void SC7A20_GetInfo(int16_t* x, int16_t* y, int16_t* z);
  43. #endif