ADS1112_ATY.h 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. /**
  2. * @file ADS1112_ATY.h
  3. *
  4. * @param Project DEVICE_GENERAL_ATY_LIB
  5. *
  6. * @author ATY
  7. *
  8. * @copyright
  9. * - Copyright 2017 - 2026 MZ-ATY
  10. * - This code follows:
  11. * - MZ-ATY Various Contents Joint Statement -
  12. * <a href="https://mengze.top/MZ-ATY_VCJS">
  13. * https://mengze.top/MZ-ATY_VCJS</a>
  14. * - CC 4.0 BY-NC-SA -
  15. * <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/">
  16. * https://creativecommons.org/licenses/by-nc-sa/4.0/</a>
  17. * - Your use will be deemed to have accepted the terms of this statement.
  18. *
  19. * @brief functions of DS18B20 for C platform
  20. *
  21. * @version
  22. * - 1_01_230828 > ATY
  23. * -# Preliminary version, first Release
  24. * - 1_02_231229 > ATY
  25. * -# add multy addr and channel
  26. ********************************************************************************
  27. */
  28. #ifndef __ADS1112_ATY_H
  29. #define __ADS1112_ATY_H
  30. #include "INCLUDE_ATY.h"
  31. #include "HW_I2C_ATY.h"
  32. /******************************* For user *************************************/
  33. // Set AD0/AD1 voltage level for device address, 0 for low, 1 for high, 2 for float
  34. #define ADS1112_AD0 0
  35. #define ADS1112_AD1 0
  36. #if ((ADS1112_AD0 == 0) && (ADS1112_AD1 == 0))
  37. #define ADS1112_ADDRESS (0x48)
  38. #elif ((ADS1112_AD0 == 0) && (ADS1112_AD1 == 2))
  39. #define ADS1112_ADDRESS (0x49)
  40. #elif ((ADS1112_AD0 == 0) && (ADS1112_AD1 == 1))
  41. #define ADS1112_ADDRESS (0x4A)
  42. #elif ((ADS1112_AD0 == 2) && (ADS1112_AD1 == 0))
  43. #define ADS1112_ADDRESS (0x4B)
  44. #elif ((ADS1112_AD0 == 1) && (ADS1112_AD1 == 0))
  45. #define ADS1112_ADDRESS (0x4C)
  46. #elif ((ADS1112_AD0 == 1) && (ADS1112_AD1 == 2))
  47. #define ADS1112_ADDRESS (0x4D)
  48. #elif ((ADS1112_AD0 == 1) && (ADS1112_AD1 == 1))
  49. #define ADS1112_ADDRESS (0x4E)
  50. #elif ((ADS1112_AD0 == 2) && (ADS1112_AD1 == 1))
  51. #define ADS1112_ADDRESS (0x4F)
  52. #endif
  53. #define VREF_COM 1.24
  54. // #define __DEBUG_ADS1112_ATY
  55. // #define ADS1112_I2C I2C_C1
  56. /******************************************************************************/
  57. #define CHANNEL_0_1 0
  58. #define CHANNEL_2_3 1
  59. #define CHANNEL_0_3 2
  60. #define CHANNEL_1_3 3
  61. #define CONVERSION_CONTINUOUS 0
  62. #define CONVERSION_ONCE 1
  63. #define RESOLUTION_12BIT 0
  64. #define RESOLUTION_14BIT 1
  65. #define RESOLUTION_15BIT 2
  66. #define RESOLUTION_16BIT 3
  67. #define GAIN_1 0
  68. #define GAIN_2 1
  69. #define GAIN_4 2
  70. #define GAIN_8 3
  71. uint8_t ADS1112_Setting(uint8_t adChannel, uint8_t conversion, uint8_t resolution, uint8_t gain, uint8_t addr, uint8_t channel);
  72. uint16_t ADS1112_Read(uint8_t chipAddr, uint8_t addr, uint8_t channel);
  73. float ADS1112_VoltageConvert(uint16_t u16Data);
  74. #endif /* __ADS1112_ATY_H */
  75. /******************************** End Of File *********************************/