KEA128 Flash 数据读写模块 - user_flash_write 和 user_flash_read 函数详解
//包含头文件 #include "flash.h"
//===========================================================================
//=================外部接口函数============================================== //========================================================================== //函数名称:user_flash_write //函数返回:无 //参数说明:page:目标扇区号(KEA128实际使用100~106) 每个扇区512Byte // pstartadd:写入扇区内部偏移地址(0~508) // data:写入数据 //功能概要:flash写入数据模块 //========================================================================== void user_flash_write(uint32_t page, uint32_t pstartadd, uint8_t data) { uint8_t state, wbuf[1]; wbuf[0] = data; state = flash_erase_sector(page); state = flash_write(page,pstartadd,1,wbuf); }
//========================================================================== //函数名称:user_flash_read //函数返回:读取数据 //参数说明:无 //功能概要:flash读取数据模块 //==========================================================================
uint8_t user_flash_read(uint32_t page, uint32_t pstartadd) { uint8_t rbuf[1]; rbuf[0] = *((uint8_t )(page512+pstartadd)); return rbuf[0]; }
//解读内容:这段代码是一个Flash数据的读写模块,包含了两个函数:user_flash_write和user_flash_read。
//user_flash_write函数用于向Flash中写入数据。它的参数包括目标扇区号(page)、写入扇区内部偏移地址(pstartadd)和要写入的数据(data)。在函数内部,首先将数据存储在一个长度为1的缓冲区wbuf中,然后调用flash_erase_sector函数来擦除目标扇区,最后调用flash_write函数将数据写入Flash。
//user_flash_read函数用于从Flash中读取数据。它的参数包括目标扇区号(page)和读取扇区内部偏移地址(pstartadd)。在函数内部,首先将目标地址的数据读取到一个长度为1的缓冲区rbuf中,然后返回缓冲区中的数据。
//这段代码的功能是提供了一个简单的接口来操作Flash的数据读写,方便其他模块对Flash进行读写操作。
原文地址: https://www.cveoy.top/t/topic/p4R4 著作权归作者所有。请勿转载和采集!