打印
[技术问答]

HC32F005怎么实现EEPROM功能?

[复制链接]
1966|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
itv1860|  楼主 | 2019-5-25 14:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题,话说,他能实现吗

使用特权

评论回复
沙发
itv1860|  楼主 | 2019-5-25 14:27 | 只看该作者
国产的单片机为什么网上资料这么少

使用特权

评论回复
板凳
martinhu| | 2019-5-25 18:16 | 只看该作者
通过Flash模拟

使用特权

评论回复
地板
smartpower| | 2019-5-26 14:16 | 只看该作者
工程及使用说明,详见附件。

◆ 通过软件算法使用片内 FLASH 存储器实现可配置大小的 EE 存储区,默认为 32 字节。
◆ EE 存储区(32 字节)的数据擦写次数不少于 600 万次。
◆ EE 存储区写入操作为原子操作,写数据时断电不会造成数据混乱。
◆ 用户只需要调用相应的读写函数即可实现对 EE 存储区数据的读取与写入。
◆ 快速备份区(32 字节)适用于即将掉电时快速保存运行参数,仅需 1.2ms 即可保存 32 字节。
◆ 默认使用的数据存储区为 4 个 Flash Page,即 2K 字节。
◆ 不使用快速备份区时,软件算法占用的 ROM 区为 876 字节(IAR 最高优化)。
◆ 使用快速备份区时,软件算法占用的 ROM 区为 1228 字节(IAR 最高优化)。

HDEE5 Demo.zip

88.72 KB

HDEE5使用说明.pdf

145.8 KB

使用特权

评论回复
评论
itv1860 2019-5-26 15:14 回复TA
学到了,谢谢! 
itv1860 2019-5-26 15:14 回复TA
学到,谢谢! 
5
smartpower| | 2019-5-26 14:19 | 只看该作者
EE 存储区使用方法
3.1 在项目工程中添加 HDEE5.C 文件。
3.2 在程序的初始化阶段调用 HDEE_Ini 函数。
3.3 使用 HDEE_Read 函数读取 EE 存储区内的数据。
3.4 使用 HDEE_Write 函数将数据写入到 EE 存储区。
注意:在调用 HDEE_Ini 及 HDEE_Write 函数前请将系统时钟切换为 4MHz,调用完成后再将系统时钟切换为
应用所需要的频率

使用特权

评论回复
6
smartpower| | 2019-5-26 14:20 | 只看该作者
函数说明
5.1 EE 存储区初始化函数
原型:void HDEE_Ini( void );
功能:初始化 EE 相关的数据存储区域。
参数:无。
条件:需要用户将系统时钟切换为 4MHz。
5.2 EE 存储区读取函数
原型:uint8_t HDEE_Read( uint8_t EeAddr, uint8_t *pRdBuf , uint8_t RdCnt );
功能:按参数要求读取 EE 内的数据。
参数:EeAddr – 待读取的数据位于 EE 内的地址,范围为 0-31。
pRdBuf – 读到的数据的存储指针。
RdCnt – 需要读取的数据的字节数。
返回:返回非 0 代表成功读取数据,返回 0 代表读取数据失败。
5.3 EE 存储区存储函数
原型:uint8_t HDEE_Write( uint8_t EeAddr, uint8_t *pWrBuf , uint8_t WrCnt );
功能:按参数要求将数据存储到 EE。
参数:EeAddr – 待存储的数据位于 EE 内的目标地址,范围为 0-31。
pWrBuf – 待存储的数据的指针。
WrCnt – 待存储的数据的字节数。
返回:返回非 0 代表成存储数据,返回 0 代表存储数据失败。
条件:需要用户将系统时钟切换为 4MHz。





使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

18

主题

55

帖子

0

粉丝