PIC单片机的闪存程序存储器读取技术
需积分: 50 7 浏览量
更新于2024-08-10
收藏 9.33MB PDF 举报
"这篇文档详细介绍了如何在基于Microchip PIC18F24K20微控制器的系统中读取闪存程序存储器的过程。它涉及到TBLRD指令的使用,该指令用于从程序存储器读取数据并存入数据RAM。通过TBLPTR寄存器指定程序存储空间的字节地址,执行TBLRD指令后,数据会被加载到TABLAT寄存器,并可自动更新TBLPTR以进行连续读取。文中还提到了内部程序存储器的组织结构,以字为单位,低有效位决定是读取字的高字节还是低字节。并且给出了一个示例,展示了如何读取闪存中的一个字,涉及了MOVLW、MOVWF等指令的使用。"
在Microchip的PIC18F系列微控制器中,程序存储器通常以闪存的形式存在,用于存放程序代码和常量数据。当需要从程序存储器读取数据时,可以使用表格读取(Table Read,简称TBLRD)指令。这个指令允许我们从指定的地址读取数据,而TBLPTR(表格指针)是一个关键的寄存器,它用来设置读取的起始位置。在描述中,例子展示了如何读取一个位于偶字节地址的字,首先通过MOVLW指令设置TBLPTRU、TBLPTRH和TBLPTRL来定位要读取的字的高位地址,然后通过连续两次执行TBLRD指令,分别读取字的偶数和奇数字节,并将数据存储到相应的寄存器。
值得注意的是,内部程序存储器的访问是字节对齐的,这意味着每个地址对应一个字节,通过地址的低有效位选择读取高字节还是低字节。在图6-4中,程序存储器的这种组织结构被清晰地表示出来,而TABLAT寄存器作为中间媒介,接收从程序存储器读取的数据。
该文档特别指出,虽然提供了中文版本,但英文原文是具有法律效力的,因此在使用和理解Microchip的产品时,不应忽略英文部分。Microchip Technology Inc.对于翻译可能存在的任何错误不承担责任,并强调用户需参考英文原版文档以获取最准确的信息。此外,文档还提醒用户在使用Microchip的器件时,必须遵循技术规范,并自行承担应用风险,因为Microchip不对信息的使用结果负责。
最后,文档中提及的PIC18F24K20是一款采用nanoWatt XLP技术的28引脚闪存单片机,适用于低功耗应用。该系列微控制器具有丰富的功能集和高效的处理能力,适用于各种嵌入式控制系统。
慕栗子
- 粉丝: 19
- 资源: 2万+
最新资源
- 基于Python和Opencv的车牌识别系统实现
- 我的代码小部件库:统计、MySQL操作与树结构功能
- React初学者入门指南:快速构建并部署你的第一个应用
- Oddish:夜潜CSGO皮肤,智能爬虫技术解析
- 利用REST HaProxy实现haproxy.cfg配置的HTTP接口化
- LeetCode用例构造实践:CMake和GoogleTest的应用
- 快速搭建vulhub靶场:简化docker-compose与vulhub-master下载
- 天秤座术语表:glossariolibras项目安装与使用指南
- 从Vercel到Firebase的全栈Amazon克隆项目指南
- ANU PK大楼Studio 1的3D声效和Ambisonic技术体验
- C#实现的鼠标事件功能演示
- 掌握DP-10:LeetCode超级掉蛋与爆破气球
- C与SDL开发的游戏如何编译至WebAssembly平台
- CastorDOC开源应用程序:文档管理功能与Alfresco集成
- LeetCode用例构造与计算机科学基础:数据结构与设计模式
- 通过travis-nightly-builder实现自动化API与Rake任务构建