LibDriver CCS811
Loading...
Searching...
No Matches
driver_ccs811_update_test.c
Go to the documentation of this file.
1
36
38
39static ccs811_handle_t gs_handle;
40
50uint8_t ccs811_update_test(ccs811_address_t addr_pin, char *path)
51{
52 uint8_t res;
53 ccs811_info_t info;
54
55 /* link functions */
72
73 /* ccs811 info */
74 res = ccs811_info(&info);
75 if (res != 0)
76 {
77 ccs811_interface_debug_print("ccs811: get info failed.\n");
78
79 return 1;
80 }
81 else
82 {
83 /* print chip information */
84 ccs811_interface_debug_print("ccs811: chip is %s.\n", info.chip_name);
85 ccs811_interface_debug_print("ccs811: manufacturer is %s.\n", info.manufacturer_name);
86 ccs811_interface_debug_print("ccs811: interface is %s.\n", info.interface);
87 ccs811_interface_debug_print("ccs811: driver version is %d.%d.\n", info.driver_version / 1000, (info.driver_version % 1000) / 100);
88 ccs811_interface_debug_print("ccs811: min supply voltage is %0.1fV.\n", info.supply_voltage_min_v);
89 ccs811_interface_debug_print("ccs811: max supply voltage is %0.1fV.\n", info.supply_voltage_max_v);
90 ccs811_interface_debug_print("ccs811: max current is %0.2fmA.\n", info.max_current_ma);
91 ccs811_interface_debug_print("ccs811: max temperature is %0.1fC.\n", info.temperature_max);
92 ccs811_interface_debug_print("ccs811: min temperature is %0.1fC.\n", info.temperature_min);
93 }
94
95 /* start update test */
96 ccs811_interface_debug_print("ccs811: start update test.\n");
97
98 /* set addr pin */
99 res = ccs811_set_addr_pin(&gs_handle, addr_pin);
100 if (res != 0)
101 {
102 ccs811_interface_debug_print("ccs811: set addr pin failed.\n");
103
104 return 1;
105 }
106
107 /* app firmware init */
108 res = ccs811_app_firmware_init(&gs_handle);
109 if (res != 0)
110 {
111 ccs811_interface_debug_print("ccs811: app firmware init failed.\n");
112
113 return 1;
114 }
115
116 /* app firmware update */
117 res = ccs811_app_firmware_update(&gs_handle, path);
118 if (res != 0)
119 {
120 ccs811_interface_debug_print("ccs811: app firmware update failed.\n");
121 (void)ccs811_deinit(&gs_handle);
122
123 return 1;
124 }
125
126 /* finish update test */
127 ccs811_interface_debug_print("ccs811: finish update test.\n");
128 (void)ccs811_deinit(&gs_handle);
129
130 return 0;
131}
driver ccs811 update test header file
uint8_t ccs811_app_firmware_update(ccs811_handle_t *handle, char *path)
app firmware update
uint8_t ccs811_app_firmware_init(ccs811_handle_t *handle)
app firmware initialize
struct ccs811_info_s ccs811_info_t
ccs811 information structure definition
uint8_t ccs811_set_addr_pin(ccs811_handle_t *handle, ccs811_address_t addr_pin)
set address pin
struct ccs811_handle_s ccs811_handle_t
ccs811 handle structure definition
ccs811_address_t
ccs811 address enumeration definition
uint8_t ccs811_info(ccs811_info_t *info)
get chip information
uint8_t ccs811_deinit(ccs811_handle_t *handle)
close the chip
uint8_t ccs811_interface_gpio_reset_init(void)
interface gpio reset init
void ccs811_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t ccs811_interface_gpio_reset_deinit(void)
interface gpio reset deinit
uint8_t ccs811_interface_gpio_reset_write(uint8_t level)
interface gpio reset write
uint8_t ccs811_interface_iic_write(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus write
uint8_t ccs811_interface_iic_deinit(void)
interface iic bus deinit
uint8_t ccs811_interface_gpio_wake_init(void)
interface gpio wake init
uint8_t ccs811_interface_gpio_wake_write(uint8_t level)
interface gpio wake write
uint8_t ccs811_interface_bin_read_deinit(void)
interface bin read deinit
uint8_t ccs811_interface_iic_read(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus read
uint8_t ccs811_interface_bin_read(uint32_t addr, uint16_t size, uint8_t *buffer)
interface bin read
uint8_t ccs811_interface_bin_read_init(char *name, uint32_t *size)
interface bin read init
uint8_t ccs811_interface_gpio_wake_deinit(void)
interface gpio wake deinit
uint8_t ccs811_interface_iic_init(void)
interface iic bus init
void ccs811_interface_delay_ms(uint32_t ms)
interface delay ms
uint8_t ccs811_update_test(ccs811_address_t addr_pin, char *path)
update test
float supply_voltage_max_v
uint32_t driver_version
char manufacturer_name[32]
float supply_voltage_min_v
char chip_name[32]