Go to the documentation of this file.
35 #include "mikrosdk_version.h"
38 #if mikroSDK_GET_VERSION < 20800ul
39 #include "rcu_delays.h"
45 #include "drv_digital_out.h"
46 #include "drv_digital_in.h"
47 #include "drv_spi_master.h"
69 #define EEPROM7_OPCODE_STATUS_RDSR 0x05
70 #define EEPROM7_OPCODE_STATUS_WRBP 0x08
71 #define EEPROM7_OPCODE_STATUS_WREN 0x06
72 #define EEPROM7_OPCODE_STATUS_WRDI 0x04
73 #define EEPROM7_OPCODE_STATUS_WRSR 0x01
79 #define EEPROM7_OPCODE_EEPROM_SECURITY_READ 0x03
80 #define EEPROM7_OPCODE_EEPROM_SECURITY_WRITE 0x02
81 #define EEPROM7_OPCODE_EEPROM_SECURITY_RDEX 0x83
82 #define EEPROM7_OPCODE_EEPROM_SECURITY_WREX 0x82
83 #define EEPROM7_OPCODE_EEPROM_SECURITY_LOCK 0x82
84 #define EEPROM7_OPCODE_EEPROM_SECURITY_CHLK 0x83
90 #define EEPROM7_OPCODE_MP_REG_RMPR 0x31
91 #define EEPROM7_OPCODE_MP_REG_PRWE 0x07
92 #define EEPROM7_OPCODE_MP_REG_PRWD 0x0A
93 #define EEPROM7_OPCODE_MP_REG_WMPR 0x32
94 #define EEPROM7_OPCODE_MP_REG_PPAB 0x34
95 #define EEPROM7_OPCODE_MP_REG_FRZR 0x37
101 #define EEPROM7_OPCODE_MP_REG_SPID 0x9F
107 #define EEPROM7_OPCODE_SW_RESET_SRST 0x7C
113 #define EEPROM7_SEC_WRITE_DISABLE 0x00
114 #define EEPROM7_SEC_WRITE_ENABLE 0x01
120 #define EEPROM7_PIN_WRITE_PROTECT_DISABLE 0x00
121 #define EEPROM7_PIN_WRITE_PROTECT_ENABLE 0x01
122 #define EEPROM7_PIN_HOLD_PROTECT_DISABLE 0x00
123 #define EEPROM7_PIN_HOLD_PROTECT_ENABLE 0x01
129 #define EEPROM7_STATUS_ERROR 0x00
130 #define EEPROM7_STATUS_SUCCESS 0x01
131 #define EEPROM7_DUMMY 0x00
132 #define EEPROM7_ENABLE_WRITE_DISABLE 0x00
133 #define EEPROM7_ENABLE_WRITE_ENABLE 0x01
134 #define EEPROM7_DEVICE_NOT_READY 0x00
135 #define EEPROM7_DEVICE_IS_READY 0x01
153 #define EEPROM7_MAP_MIKROBUS( cfg, mikrobus ) \
154 cfg.miso = MIKROBUS( mikrobus, MIKROBUS_MISO ); \
155 cfg.mosi = MIKROBUS( mikrobus, MIKROBUS_MOSI ); \
156 cfg.sck = MIKROBUS( mikrobus, MIKROBUS_SCK ); \
157 cfg.cs = MIKROBUS( mikrobus, MIKROBUS_CS ); \
158 cfg.wp = MIKROBUS( mikrobus, MIKROBUS_RST ); \
159 cfg.hld = MIKROBUS( mikrobus, MIKROBUS_PWM )
eeprom7_return_value_t
EEPROM 7 Click return value data.
Definition: eeprom7.h:209
err_t eeprom7_generic_write_then_read(eeprom7_t *ctx, uint8_t *data_in, uint8_t len_in, uint8_t *data_out, uint8_t len_out)
EEPROM 7 data writing function.
EEPROM 7 Click context object.
Definition: eeprom7.h:169
err_t eeprom7_check_status(eeprom7_t *ctx, uint8_t check_bit)
Status register bits check function.
uint32_t spi_speed
Definition: eeprom7.h:198
uint16_t eeprom7_read_status(eeprom7_t *ctx)
Read status function.
void eeprom7_write_memory(eeprom7_t *ctx, uint32_t addr, uint8_t *p_tx_data, uint8_t n_bytes)
Write EEPROM memory function.
pin_name_t sck
Definition: eeprom7.h:190
err_t eeprom7_send_cmd(eeprom7_t *ctx, uint8_t cmd)
Send command function.
pin_name_t cs
Definition: eeprom7.h:191
@ EEPROM7_ERROR
Definition: eeprom7.h:211
err_t eeprom7_default_cfg(eeprom7_t *ctx)
EEPROM 7 default configuration function.
void eeprom7_sw_reset(eeprom7_t *ctx)
Software device reset function.
err_t eeprom7_init(eeprom7_t *ctx, eeprom7_cfg_t *cfg)
EEPROM 7 initialization function.
void eeprom7_enable_hold_operation(eeprom7_t *ctx, uint8_t en_hold)
Enable hold operation function.
err_t eeprom7_generic_read(eeprom7_t *ctx, uint8_t reg, uint8_t *data_out, uint8_t len)
EEPROM 7 data reading function.
spi_master_mode_t spi_mode
Definition: eeprom7.h:199
void eeprom7_cfg_setup(eeprom7_cfg_t *cfg)
EEPROM 7 configuration object setup function.
err_t eeprom7_generic_write(eeprom7_t *ctx, uint8_t reg, uint8_t *data_in, uint8_t len)
EEPROM 7 data writing function.
void eeprom7_enable_write(eeprom7_t *ctx, uint8_t en_write)
Enable write function.
pin_name_t wp
Definition: eeprom7.h:194
pin_name_t chip_select
Definition: eeprom7.h:177
uint8_t eeprom7_is_device_ready(eeprom7_t *ctx)
Check the device is ready function.
spi_master_t spi
Definition: eeprom7.h:175
uint8_t eeprom7_get_status(eeprom7_t *ctx)
Get status function.
pin_name_t miso
Definition: eeprom7.h:188
void eeprom7_read_memory(eeprom7_t *ctx, uint32_t addr, uint8_t *p_rx_data, uint8_t n_bytes)
Read EEPROM memory function.
EEPROM 7 Click configuration object.
Definition: eeprom7.h:186
digital_out_t hld
Definition: eeprom7.h:172
@ EEPROM7_OK
Definition: eeprom7.h:210
void eeprom7_enable_write_protect(eeprom7_t *ctx, uint8_t en_write_protect)
Enable write protect function.
pin_name_t hld
Definition: eeprom7.h:195
spi_master_chip_select_polarity_t cs_polarity
Definition: eeprom7.h:200
digital_out_t wp
Definition: eeprom7.h:171
pin_name_t mosi
Definition: eeprom7.h:189
void eeprom7_set_status(eeprom7_t *ctx, uint8_t status)
Set status function.