LibDriver FM24CLXX
Loading...
Searching...
No Matches
driver_fm24clxx_basic.c
Go to the documentation of this file.
1
36
38
39static fm24clxx_handle_t gs_handle;
40
51{
52 uint8_t res;
53
54 /* link interface function */
64
65 /* set chip type */
66 res = fm24clxx_set_type(&gs_handle, type);
67 if (res != 0)
68 {
69 fm24clxx_interface_debug_print("fm24clxx: set type failed.\n");
70
71 return 1;
72 }
73
74 /* set addr pin */
75 res = fm24clxx_set_addr_pin(&gs_handle, address);
76 if (res != 0)
77 {
78 fm24clxx_interface_debug_print("fm24clxx: set address pin failed.\n");
79
80 return 1;
81 }
82
83 /* fm24clxx init */
84 res = fm24clxx_init(&gs_handle);
85 if (res != 0)
86 {
87 fm24clxx_interface_debug_print("fm24clxx: init failed.\n");
88
89 return 1;
90 }
91
92 return 0;
93}
94
105uint8_t fm24clxx_basic_read(uint16_t address, uint8_t *buf, uint16_t len)
106{
107 /* read data */
108 if (fm24clxx_read(&gs_handle, address, buf, len) != 0)
109 {
110 return 1;
111 }
112 else
113 {
114 return 0;
115 }
116}
117
128uint8_t fm24clxx_basic_write(uint16_t address, uint8_t *buf, uint16_t len)
129{
130 /* write data */
131 if (fm24clxx_write(&gs_handle, address, buf, len) != 0)
132 {
133 return 1;
134 }
135 else
136 {
137 return 0;
138 }
139}
140
149{
150 /* fm24clxx deinit */
151 if (fm24clxx_deinit(&gs_handle) != 0)
152 {
153 return 1;
154 }
155 else
156 {
157 return 0;
158 }
159}
driver fm24clxx basic header file
uint8_t fm24clxx_set_addr_pin(fm24clxx_handle_t *handle, fm24clxx_address_t addr_pin)
set the chip address pin
uint8_t fm24clxx_init(fm24clxx_handle_t *handle)
initialize the chip
struct fm24clxx_handle_s fm24clxx_handle_t
fm24clxx handle structure definition
uint8_t fm24clxx_read(fm24clxx_handle_t *handle, uint16_t address, uint8_t *buf, uint16_t len)
read bytes from the chip
fm24clxx_address_t
fm24clxx address enumeration definition
fm24clxx_t
fm24clxx type enumeration definition
uint8_t fm24clxx_set_type(fm24clxx_handle_t *handle, fm24clxx_t type)
set the chip type
uint8_t fm24clxx_write(fm24clxx_handle_t *handle, uint16_t address, uint8_t *buf, uint16_t len)
write bytes to the chip
uint8_t fm24clxx_deinit(fm24clxx_handle_t *handle)
close the chip
uint8_t fm24clxx_basic_read(uint16_t address, uint8_t *buf, uint16_t len)
basic example read
uint8_t fm24clxx_basic_deinit(void)
basic example deinit
uint8_t fm24clxx_basic_init(fm24clxx_t type, fm24clxx_address_t address)
basic example init
uint8_t fm24clxx_basic_write(uint16_t address, uint8_t *buf, uint16_t len)
basic example write
uint8_t fm24clxx_interface_iic_write(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus write
void fm24clxx_interface_delay_ms(uint32_t ms)
interface delay ms
uint8_t fm24clxx_interface_iic_read(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus read
uint8_t fm24clxx_interface_iic_write_address16(uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
interface iic bus write with 16 bits register address
uint8_t fm24clxx_interface_iic_read_address16(uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
interface iic bus read with 16 bits register address
void fm24clxx_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t fm24clxx_interface_iic_init(void)
interface iic bus init
uint8_t fm24clxx_interface_iic_deinit(void)
interface iic bus deinit