找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1968|回复: 4
打印 上一主题 下一主题
收起左侧

怎样在PIC单片机程序升级过程中保留eeprom中的数据

[复制链接]
跳转到指定楼层
楼主
ID:552978 发表于 2024-7-10 09:59 来自手机 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
50黑币
怎样在PIC程序升级过程中保留eeprom中的数据

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:401564 发表于 2024-7-11 21:55 | 只看该作者
看一下下载器的配置,或者是配置字
很久没有玩PIC了,忘记了,但好像记得是有这个选项的
回复

使用道具 举报

板凳
ID:808676 发表于 2024-7-13 06:34 | 只看该作者
如果录音机是pickit3,只需禁用eeprom录音选项
回复

使用道具 举报

地板
ID:1116913 发表于 2024-7-13 09:12 | 只看该作者
在程序升级之前,首先读取并备份EEPROM中的所有数据。在备份了EEPROM数据之后,可以安全地执行PIC的程序升级。程序升级完成后,将之前备份的EEPROM数据写回EEPROM。这一步是确保升级后所有重要数据都得以保留的关键。在编写升级程序时,确保升级过程不会意外地覆盖或修改EEPROM中的数据。这通常要求精确控制写入Flash存储器的地址范围。
回复

使用道具 举报

5#
ID:982617 发表于 2024-8-7 17:18 | 只看该作者
在使用微控制器(例如PIC)进行程序升级的过程中,保留EEPROM中的数据是一个关键点,因为EEPROM中的数据在断电后不会丢失。以下是在升级过程中保留EEPROM数据的方法:

### 1. **备份数据**
在升级程序前,先备份EEPROM中的关键数据。这可以通过专门的编程软件或使用带有EEPROM读取功能的编程器来实现。这样在升级失败或其他问题导致数据丢失时,可以恢复数据。

### 2. **程序设计考虑**
在程序设计阶段,应考虑数据在EEPROM中的存储方式和结构。使用结构化的方式存储数据,确保数据在程序升级后仍然可以正确读取和使用。避免在EEPROM中随意存储数据,这可能使得更新程序时容易覆盖数据。

### 3. **升级策略**
在升级过程中,避免直接覆盖EEPROM中的数据。如果升级失败或在升级过程中需要中断,确保程序设计有机制可以跳过或重新加载EEPROM中的数据。这可能涉及读取EEPROM中的版本信息,然后根据版本信息判断是否需要重新加载EEPROM数据。

### 4. **动态更新EEPROM**
考虑使用一个进程或状态机,用于在升级程序后动态更新EEPROM中的数据。这可以确保程序在运行时可以访问新的程序代码,同时保留原有的EEPROM数据。在程序初始化阶段,检查EEPROM中的状态,然后根据需要加载新数据或保留原有数据。

### 5. **使用FLASH编程**
对于需要频繁升级的情况,考虑使用能够在不重新编程的情况下更新数据的机制。例如,部分微控制器允许在运行时通过特定的命令对部分EEPROM区域进行读写,而无需中断程序执行。这种特性在设计时应充分利用。

### 6. **升级前后的备份**
在升级前和升级后立即备份EEPROM中的数据,以防止意外丢失数据。这可以使用外部存储设备或网络存储进行。

### 7. **错误处理和恢复**
设计程序时包括错误处理策略,比如在升级失败时能自动回到上一次的正常状态,并尝试或强制加载备份数据。

### 实例和工具
使用专门的微控制器编程软件(如 MikroC PIC,Proteus,或者使用像 avr-gcc 这样的开发工具),可以更轻松地管理EEPROM数据的访问和保护。这些工具通常提供针对EEPROM操作的库函数,便于编程时使用。

### 总结
在进行PIC程序升级时,保留EEPROM数据的关键在于周密的程序设计、有效的数据备份策略、和适当的升级过程控制。确保在升级过程中数据不被意外覆盖或丢失,通常是通过避免直接覆盖数据、使用备份和恢复机制,以及错误处理策略实现的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表