PIC18单片机程序存储器详解:结构、保护与MPLAB编译器

需积分: 39 18 下载量 92 浏览量 更新于2024-08-10 收藏 4.45MB PDF 举报
"存储器构成-ertec200pv1-schematic" 本文档主要介绍了存储器在微控制器,特别是PIC18F系列中的构成和工作原理。在存储器结构方面,它强调了程序存储器的寻址机制和容量。使用21位的程序计数器(PC)可以寻址最大2Mb的程序存储空间,而实际的PIC18FXXXX单片机的片上程序存储器范围从4KB到128KB不等,并且某些型号支持扩展外部存储器。 在系统启动时,PC被设置为0,执行位于地址0的第一条指令。中断向量位于0x000008和0x000018,通常会有一个GOTO指令在地址0处,以便跳过中断向量。程序指令大多数是16位,但也存在32位的双字指令,不允许执行奇数字节的指令。 MPLAB C编译器在生成代码时,通过段属性`code`将指令存储到程序存储器中,而`romdata`和`rom`关键字用于将数据存储到程序存储器。编译器支持两种存储模型:小存储模型和大存储模型。在小存储模型中,指向程序存储器的指针为16位,而在大存储模型中,指针为24位。 在某些PIC18XXXX器件中,存在代码保护功能,允许代码正确执行但防止读取或复制。程序存储器可以通过表读指令读取,而表写指令则用于通过特殊代码序列写入程序存储器。 此外,文档提到了PICkit3 Debug Express和MPLAB C课程,这表明了开发工具和编程环境在实际应用中的重要性。PIC18F45K20是MPLAB C课程中使用的微控制器实例。 请注意,Microchip Technology Inc.的文档强调了中文翻译的辅助性质,建议同时参考英文原版以获取最准确的信息。文档还提醒用户,Microchip不对译文中的错误负责,并明确表示对于器件应用、质量和性能的任何声明或保证都是没有的。用户必须确保其设计符合技术规范,并自行承担使用Microchip器件的风险。 最后,文档中提到了Microchip的多个商标,显示了其在嵌入式控制解决方案领域的品牌识别度。这些商标包括Microchip、dsPIC、MPLAB、PIC以及一系列与开发工具和产品线相关的标识。