文档详情

PIC16F877A单片机中文文献.pdf

发布:2019-11-11约6.58千字共5页下载文档
文本预览下载声明
PIC16F877A单片机是 microchip 公司的产品,它采用 14 位的 RISC指令系 统,内部集成了 A/D 转换器、 EEPROM、模拟比较器、带比较和捕捉功能的定时器 / 计数器、 PWM输出、异步串行通信电路等。 1. 程序存储器 程序存储器和堆栈 PIC16F877A单片机内部具有 8K×14位的 Flash 程序存储 器,程序存储器具有 13 位宽度的程序计数器地址范围: 0000H-1FFFH。由程序计 数器提供 13 条地址线进行单元选择,每个单元宽 14 位,即 PIC16F877A的指令 字节宽度为 14 位,能够存放一条 PIC 单片机系统指令。 在系统上电或其他复位情况下,程序计数器均从 0000H地址单元开始工作。 如果遇到调用子程序或系统发生事件中断时, 将把当前程序断点处的地址送入 8 级× 14 位的堆栈区域进行保护。堆栈是一个独立的存储区域,在调用的子程序 或中断服务程序执行完后,再恢复断点地址。通过 14 位程序总线,取出对应程 序之灵的机器码, 送入指令存储器, 将组成的操作码和操作数进行有效分离。 如 果操作数为地址,则进入地址复用器;如果操作数为数据,则进入数据复用器。 而操作码将在指令译码和控制单元中转化为相应的功能操作。 PIC 的多数指令均是顺序执行,即使条件跳转也是隔行间接跳转。具有大范 围转移功能的指令只有两条: 无条件 GOTO语句和调用子程序 CALL语句。但它们 受到 2KB范围的约束。所以必须将整个程序存储器以 2KB为单位进行分页。 PIC16F877A单片机的上电复位地址是 0000H,中端口地址是 0004H,中断产 生时 PC指针会自动指向该地址。在进行中断应用时,特别是涉及多个中断同时 打开时,必须要逐个对中断标志进行判断。 编程时, 在 0000H-0003H单元内要放 置一条 GOTO跳转指令,跳转到主程序,以避开 0004H存储器单元。 2. 数据存储器 数据存储器 PIC 单片机的数据存储器与传统的 MCS-51单片机一样,在配置 结构上可分为通用寄存器和特殊功能寄存器两大类。 数据存储器的每个存储单元 除具备普通存储器功能之外, 还能实现移位、 置位、 复位和位测试等通常只有寄 存器才能完成的操作,功能非常强大。 PIC16F877A单片机 RAM数据存储器与程 序存储器一样, 在其 512 个地址空间进行类似区域划分, 分为 4 个体,从左到右 纪委体 0、体 1、体 2 和体 3,每个体均为 128×8 位宽的存储单元。特殊功能寄 存器安排在低位地址存储单元, 通用寄存器在高位地址存储单元。 对通用寄存器 可以直接进行访问,也可以通过寄存器 FSR间接访问。 通过比较可知, 程序存储器的 4 等分区域采用串接方式排列, 而数据存储器 的 4 等分区域采用并联方式排列。通用寄存器 PIC16F877A单片机的通用存储器 扮演了其他单片机中的通用寄存器和片内 RAM存储器的双重角色。 PIC16F877A 单片机的通用寄存器主要分布在数据存储器 RAM个体的下半部分区域, 包括
显示全部
相似文档