对于PIC16F1719单片机,没有直接的EEPROM,而是使用高耐久度的程序闪存(PFM)作为非易失性数据存储区域。这个区域特别适合存储那些需要频繁更新的数据。读写这个内存区域需要操作一些特殊功能寄存器,比如用于地址的PMADRH:PMADRL
和用于数据的PMDATH:PMDATL
。
执行从闪存中读取数据的操作步骤如下:
- 将目标地址写入
PMADRH:PMADRL
寄存器对。 - 清除
PMCON1
寄存器的CFGS
位。 - 设置
PMCON1
寄存器的RD
控制位以启动读取操作。读取的数据将存储在PMDATH:PMDATL
寄存器对中。
要将数据写入闪存,可以按照以下步骤进行:
- 将目标闪存地址加载到
PMADRH:PMADRL
寄存器中。 - 将数据写入
PMDATH:PMDATL
寄存器中。 - 通过向
PMCON2
寄存器写入特定的值(先55h
,再AAh
)来执行解锁序列。 - 设置
PMCON1
寄存器中的WR
位以启动写操作。
这种操作过程确保了对非易失性内存的安全控制,用于存储关键数据。
高耐久度的程序闪存(PFM)是Microchip的PIC16(L)F1717/8/9系列微控制器中的一项存储技术,用于频繁更新的数据存储。根据提供的文档,这种高耐久度的程序闪存具有以下特性:
-
容量大小:
- 对于PIC16(L)F1717微控制器,PFM的容量为128字节。
- 对于PIC16(L)F1718/9微控制器,PFM的容量同样为128字节。
-
高耐久度:
- 这种闪存支持高达100,000次的擦写循环,非常适合需要频繁更新的非易失性数据存储。
-
地址范围:
- PIC16(L)F1717的高耐久度闪存地址范围为1F80h到1FFFh。
- PIC16(L)F1718/9的高耐久度闪存地址范围为3F80h到3FFFh。
-
应用:
- 高耐久度的程序闪存特别适合用于嵌入式系统中需要频繁更新的数据,如配置参数、运行计数器等。
这种PFM在设计上旨在代替传统的EEPROM,提供了更高的耐久性和更快的访问速度。对于一些嵌入式应用来说,它是一种高效且可靠的存储解决方案。
所以,写代码:
可以看到显示出了我写入的2345:
code:
https://docs.qq.com/sheet/DUEdqZ2lmbmR6UVdU?tab=BB08J2
讲解视频:
通过网盘分享的文件:2024-08-24 21-57-51.mkv
链接:https://pan.baidu.com/s/1ANlzKzfK70K93OQfueNE0w?pwd=tbsp
提取码:tbsp