DRV_FLASHC
DRV_FLASHC API Status
API |
|---|
DRV_FLASHC API Reference
Header File
Functions
-
int32_t drv_flashc_reset(void)
reset flash
set 0xff to flash
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
uint32_t drv_flashc_read_flash_id(void)
read flash device id
- 返回:
flash id
-
int32_t drv_flashc_set_read_mode(flashc_read_mode_e read_mode, uint8_t m_value)
set flash controller read line mode
设置数据读取使用的是几线 2线默认使用的命令是0x03 4线默认使用的命令是0xEB
- 参数:
read_mode – [in] 参考 flashc_read_mode_e
m_value – [in] 用0xEB与0xBB的线的时候,需要配置此M值,切换成”Continuous Read Mode”
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
uint8_t drv_flashc_get_line_mode(void)
get flash controller read line mode
读取数据使用的是几线
- 返回:
line_mode 参考 flashc_line_mode_e
-
int32_t drv_flashc_erase_sector(uint32_t address)
flash sector erase
flash擦除命令,发送的flash命令为0x20
- 参数:
address – [in] 擦除的首地址
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_flashc_erase_block_32K(uint32_t address)
flash erase block 32K
flash擦除命令,发送的flash命令为0x52
- 参数:
address – [in] 擦除的首地址
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_flashc_erase_block_64K(uint32_t address)
flash erase block 64K
flash擦除命令,发送的flash命令为0xD8
- 参数:
address – [in] 擦除的首地址
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_flashc_erase_chip(void)
flash erase chip
flash擦除命令,发送的flash命令为0xC7
- 参数:
address – [in] 擦除的首地址
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_flashc_deep_power_down(void)
deep power down
发送的flash命令为0xB9
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_flashc_release_deep_power_down(void)
release deep power down
发送的flash命令为0xAB
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_flashc_read_bytes(uint32_t address, uint8_t *pu1_buf, uint32_t size)
flash read data
软件方式向flash中写数据
- 参数:
address – [in] 读数据的目标地址的首地址
pu1_buf – [in] 数据指针
size – [in] 数据大小,bytes。小于等于32
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_flashc_write_enable(void)
flash write enable
发送0x06命令
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_flashc_write_disable(void)
flash write disable
发送0x06命令
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_flashc_write_bytes(uint32_t address, const uint8_t *pu1_buf, uint32_t size)
flash write data
软件方式向flash中写数据
- 参数:
address – [in] 写数据的目标地址的首地址
pu1_buf – [in] 数据指针
size – [in] 数据大小,bytes
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
uint16_t drv_flashc_read_status_s0_s7_reg(void)
read flash low 8bits register
发送0x05命令读取寄存器S0~S7
- 返回:
寄存器S0~S7值
-
uint16_t drv_flashc_read_status_s0_s15_reg(void)
read flash low 16bits register
(1)发送0x05命令读取寄存器S0~S7 (2)发送0x35命令读取寄存器S8~S15
- 返回:
寄存器S0~S7值
-
int32_t drv_flashc_write_status_s0_s7_reg(uint16_t status_reg_data)
read flash low 8bits register
发送0x01命令写寄存器S0~S7
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_flashc_write_status_s0_s15_reg(uint16_t status_reg_data)
read flash low 16bits register
发送0x01命令写寄存器S0~S15
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_flashc_set_quadread_cmd(uint8_t modesel)
-
uint8_t drv_flashc_get_quadread_cmd(void)
get cmd use for 4 line
获取4线模式下与flash通信的命令
- 返回:
mode 0:0xEB; 1:0xE7
-
int32_t drv_flashc_set_m_value(uint16_t value)
-
uint8_t drv_flashc_get_m_value(void)