微芯片技术:5G与MEC在工业互联网中的应用与闪存编程
需积分: 50 39 浏览量
更新于2024-08-10
收藏 8.14MB PDF 举报
本文档主要介绍了如何在PIC18系列微控制器中进行闪存程序存储器的编程,特别是在5G和MEC(Mobile Edge Computing)在工业互联网应用的背景下,掌握微控制器的内存管理显得尤为重要。内容涉及到编程块大小、编程步骤、使用的寄存器以及编程过程中的中断管理。
在编程闪存程序存储器时,需要注意以下关键点:
1. **编程块大小**:编程单元是64字节,不支持字或字节级别的编程。这意味着一次写操作必须覆盖64字节的连续存储空间。
2. **编程流程**:首先,64字节的数据需读入RAM,更新数据后,地址装入表指针寄存器,执行块擦除,然后将要写入的数据写入保持寄存器,最后通过配置EECON1寄存器启动写操作。
3. **保持寄存器**:每个保持寄存器对应一个字节,编程时需要通过TBLWT指令执行64次,每次写入一个字节。
4. **写操作控制**:设置EECON1寄存器的EEPGD和CFGS位以指向并访问程序存储器,启用写操作(WREN位设为1)。在写操作开始前,需要禁止中断,并按照特定序列写入EECON2寄存器的值(55h和0AAh),然后置位WR位启动写周期。
5. **中断管理**:在写周期中,CPU会被挂起,由内部编程定时器控制,大约需要2毫秒。写操作完成后,重新启用中断,并可以通过表读操作校验存储器。
6. **默认值与安全编程**:器件复位或写操作后,保持寄存器默认值为FFh。FFh写入不会改变已有的数值,因此可以逐字节修改程序存储器,但无需在长写操作前加载所有保持寄存器,除非有位需要从0变为1。
7. **注意事项**:在置位WR位前,表指针地址必须在将要写入的地址范围内,以确保正确执行写操作。
这个过程对于理解如何在PIC18微控制器中高效且安全地更新固件至关重要,尤其是在5G和MEC技术应用于工业互联网的场景中,这种底层内存管理能力是保证系统稳定性和可靠性的基础。
108 浏览量
128 浏览量
106 浏览量
358 浏览量
195 浏览量
190 浏览量
177 浏览量
126 浏览量
郑云山
- 粉丝: 22
- 资源: 2万+
最新资源
- 原码一位乘法器.rar
- 微博情感分析,使用flask制作restful api,毕业设计衍生项目.zip
- Moodle:在Azure上部署可扩展Moodle群集的工具和指南
- AhmedZerouali.github.io
- pudding-api:用于使用Pudding API的工具
- gmrtdxt:实时 DXT 压缩器和优化器
- pcb2gcode:用于PCB隔离,布线和钻Kong的命令行工具
- AzureR:用于从R与Azure交互的软件包家族
- 多功能编辑上传.zip,我上传这个是为了以后我不这个资源丢失掉。所以储存起来。免费下载
- infinity-hall:Three.js尝试过程几何
- 毕业设计:微博用户情感分析系统Django+vue.zip
- NicoRandomPicker:https
- Brisk Plan-crx插件
- swagger-assert:启用断言 swagger 文档密钥和 API 响应
- Mono3D:“单目视频单声道化”的源代码(SIGGRAPH Asia 2020)
- 艾莎