LabVIEW与物联网:分布式家庭智能监控系统的代码保护与闪存操作
需积分: 49 37 浏览量
更新于2024-08-08
收藏 9.25MB PDF 举报
"这篇文档详细介绍了在代码保护期间如何操作基于PIC微控制器的闪存程序存储器,特别是涉及到了程序的写入过程和相关的寄存器设置。文档以PIC18F66K80系列微控制器为例,该系列采用nanoWatt XLP技术,并具有增强型闪存功能。"
在代码保护期间操作闪存程序存储器的过程至关重要,因为它确保了程序代码的安全性和完整性。在标题提到的"基于labview和物联网的分布式家庭智能监控系统"中,这种保护措施可能是为了防止未经授权的访问或修改嵌入式系统的固件。
首先,我们需要了解几个关键寄存器的作用:
1. **EECON1**:这是一个重要的控制寄存器,用于控制闪存和EEPROM的操作。例如,设置EECON1的EEPGD位可以指向Flash程序存储器,CFGS位用于访问配置或数据存储区。WREN位用于启用内存写入,WR位启动编程操作,WRERR位指示写错误,RD位则用于启动读取操作。
2. **EECON2**:虽然这个寄存器实际上不存在,但在编程过程中,需要连续写入55h和0AAh来启动编程序列。
3. **TBLPTR**系列寄存器:TBLPTRU、TBPLTRH和TBLPTRL共同构成了程序存储器的表指针,用于指定要访问的位置。
编程过程如下:
1. 设置EECON1寄存器,使能写操作(BSF EECON1, WREN)。
2. 关闭中断(BCF INTCON, GIE),以防编程过程中被中断。
3. 连续写入55h和0AAh到EECON2寄存器,这是编程操作的必要步骤。
4. 触发编程操作(BSF EECON1, WR)。
5. 重新开启中断(BSF INTCON, GIE)。
6. 禁止写操作(BCF EECON1, WREN)以保护闪存。
此外,文档还提到了一些中断和事件标志寄存器,如INTCON,它们在微控制器的中断管理中起到关键作用。INTCON中的GIE位用于全局中断使能,其他位如TMR0IF、INT0IF等则表示不同中断源的状态。
在基于PIC的物联网系统中,这样的操作对于确保固件的安全更新和防止恶意篡改至关重要。通过精确控制这些寄存器和执行严格的编程序列,开发者可以确保代码保护的有效性,从而保护智能家庭监控系统的正常运行和数据安全。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2021-08-10 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
臧竹振
- 粉丝: 48
- 资源: 4053
最新资源
- Raspberry Pi OpenCL驱动程序安装与QEMU仿真指南
- Apache RocketMQ Go客户端:全面支持与消息处理功能
- WStage平台:无线传感器网络阶段数据交互技术
- 基于Java SpringBoot和微信小程序的ssm智能仓储系统开发
- CorrectMe项目:自动更正与建议API的开发与应用
- IdeaBiz请求处理程序JAVA:自动化API调用与令牌管理
- 墨西哥面包店研讨会:介绍关键业绩指标(KPI)与评估标准
- 2014年Android音乐播放器源码学习分享
- CleverRecyclerView扩展库:滑动效果与特性增强
- 利用Python和SURF特征识别斑点猫图像
- Wurpr开源PHP MySQL包装器:安全易用且高效
- Scratch少儿编程:Kanon妹系闹钟音效素材包
- 食品分享社交应用的开发教程与功能介绍
- Cookies by lfj.io: 浏览数据智能管理与同步工具
- 掌握SSH框架与SpringMVC Hibernate集成教程
- C语言实现FFT算法及互相关性能优化指南