ADS1112_ATY.h 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. /**
  2. * @file ADS1112_ATY.h
  3. *
  4. * @param Project DEVICE_GENERAL_ATY_LIB
  5. *
  6. * @author ATY
  7. *
  8. * @copyright
  9. * - Copyright 2017 - 2023 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 Familiar functions of DS18B20 for all embedded device
  20. *
  21. * @version
  22. * - 1_01_230828 > ATY
  23. * -# Preliminary version, first Release
  24. ********************************************************************************
  25. */
  26. #ifndef __ADS1112_ATY_H
  27. #define __ADS1112_ATY_H
  28. #include "INCLUDE_ATY.h"
  29. #include "HW_I2C_ATY.h"
  30. /******************************* For user *************************************/
  31. // Set AD0/AD1 voltage level for device address, 0 for low, 1 for high, 2 for float
  32. #define ADS1112_AD0 0
  33. #define ADS1112_AD1 0
  34. #define VREF_COM 1.24f
  35. // #define __DEBUG_ADS1112_ATY
  36. /******************************************************************************/
  37. #if ((ADS1112_AD0 == 0) && (ADS1112_AD1 == 0))
  38. #define ADS1112_ADDRESS (0x48)
  39. #elif ((ADS1112_AD0 == 0) && (ADS1112_AD1 == 2))
  40. #define ADS1112_ADDRESS (0x49)
  41. #elif ((ADS1112_AD0 == 0) && (ADS1112_AD1 == 1))
  42. #define ADS1112_ADDRESS (0x4A)
  43. #elif ((ADS1112_AD0 == 2) && (ADS1112_AD1 == 0))
  44. #define ADS1112_ADDRESS (0x4B)
  45. #elif ((ADS1112_AD0 == 1) && (ADS1112_AD1 == 0))
  46. #define ADS1112_ADDRESS (0x4C)
  47. #elif ((ADS1112_AD0 == 1) && (ADS1112_AD1 == 2))
  48. #define ADS1112_ADDRESS (0x4D)
  49. #elif ((ADS1112_AD0 == 1) && (ADS1112_AD1 == 1))
  50. #define ADS1112_ADDRESS (0x4E)
  51. #elif ((ADS1112_AD0 == 2) && (ADS1112_AD1 == 1))
  52. #define ADS1112_ADDRESS (0x4F)
  53. #endif
  54. #define CHANNEL_0_1 0
  55. #define CHANNEL_2_3 1
  56. #define CHANNEL_0_3 2
  57. #define CHANNEL_1_3 3
  58. #define CONVERSION_CONTINUOUS 0
  59. #define CONVERSION_ONCE 1
  60. #define RESOLUTION_12BIT 0
  61. #define RESOLUTION_14BIT 1
  62. #define RESOLUTION_15BIT 2
  63. #define RESOLUTION_16BIT 3
  64. #define GAIN_1 0
  65. #define GAIN_2 1
  66. #define GAIN_4 2
  67. #define GAIN_8 3
  68. uint8_t ADS1112_Setting(uint8_t channel, uint8_t conversion, uint8_t resolution, uint8_t gain);
  69. uint16_t ADS1112_Read(uint8_t chipAddr);
  70. float ADS1112_Voltage(uint16_t u16Data);
  71. #endif /* __ADS1112_ATY_H */
  72. /******************************** End Of File *********************************/