LibDriver ADS1110
Loading...
Searching...
No Matches
driver_ads1110_basic.c
Go to the documentation of this file.
1
36
38
39static ads1110_handle_t gs_handle;
40
50{
51 uint8_t res;
52
53 /* link interface function */
61
62 /* set addr pin */
63 res = ads1110_set_addr_pin(&gs_handle, addr);
64 if (res != 0)
65 {
66 ads1110_interface_debug_print("ads1110: set addr failed.\n");
67
68 return 1;
69 }
70
71 /* ads1110 init */
72 res = ads1110_init(&gs_handle);
73 if (res != 0)
74 {
75 ads1110_interface_debug_print("ads1110: init failed.\n");
76
77 return 1;
78 }
79
80 /* set default rate */
82 if (res != 0)
83 {
84 ads1110_interface_debug_print("ads1110: set rate failed.\n");
85 (void)ads1110_deinit(&gs_handle);
86
87 return 1;
88 }
89
90 /* set default gain */
92 if (res != 0)
93 {
94 ads1110_interface_debug_print("ads1110: set compare failed.\n");
95 (void)ads1110_deinit(&gs_handle);
96
97 return 1;
98 }
99
100 /* start continuous read */
101 res = ads1110_start_continuous_read(&gs_handle);
102 if (res != 0)
103 {
104 ads1110_interface_debug_print("ads1110: start continuous read mode failed.\n");
105 (void)ads1110_deinit(&gs_handle);
106
107 return 1;
108 }
109
110 return 0;
111}
112
121uint8_t ads1110_basic_read(float *s)
122{
123 int16_t raw;
124
125 /* read data */
126 if (ads1110_continuous_read(&gs_handle, (int16_t *)&raw, s) != 0)
127 {
128 return 1;
129 }
130
131 return 0;
132}
133
142{
143 uint8_t res;
144
145 /* stop continuous read */
146 res = ads1110_stop_continuous_read(&gs_handle);
147 if (res != 0)
148 {
149 return 1;
150 }
151
152 /* deinit ads1110 */
153 res = ads1110_deinit(&gs_handle);
154 if (res != 0)
155 {
156 return 1;
157 }
158
159 return 0;
160}
driver ads1110 basic header file
uint8_t ads1110_set_rate(ads1110_handle_t *handle, ads1110_rate_t rate)
set the sample rate
uint8_t ads1110_deinit(ads1110_handle_t *handle)
close the chip
uint8_t ads1110_set_addr_pin(ads1110_handle_t *handle, ads1110_address_t addr_pin)
set the iic address pin
struct ads1110_handle_s ads1110_handle_t
ads1110 handle structure definition
uint8_t ads1110_stop_continuous_read(ads1110_handle_t *handle)
stop the chip reading
uint8_t ads1110_init(ads1110_handle_t *handle)
initialize the chip
uint8_t ads1110_continuous_read(ads1110_handle_t *handle, int16_t *raw, float *v)
read data from the chip continuously
ads1110_address_t
ads1110 address enumeration definition
uint8_t ads1110_set_gain(ads1110_handle_t *handle, ads1110_gain_t gain)
set adc gain
uint8_t ads1110_start_continuous_read(ads1110_handle_t *handle)
start the chip reading
#define ADS1110_BASIC_DEFAULT_GAIN
uint8_t ads1110_basic_init(ads1110_address_t addr)
basic example init
uint8_t ads1110_basic_read(float *s)
basic example read
#define ADS1110_BASIC_DEFAULT_RATE
ads1110 basic example default definition
uint8_t ads1110_basic_deinit(void)
basic example deinit
uint8_t ads1110_interface_iic_read_cmd(uint8_t addr, uint8_t *buf, uint16_t len)
interface iic bus read command
uint8_t ads1110_interface_iic_init(void)
interface iic bus init
uint8_t ads1110_interface_iic_deinit(void)
interface iic bus deinit
void ads1110_interface_delay_ms(uint32_t ms)
interface delay ms
void ads1110_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t ads1110_interface_write_cmd(uint8_t addr, uint8_t *buf, uint16_t len)
interface iic bus write command