网站大量收购闲置独家精品文档,联系QQ:2885784924

PIC16F877A单片机中文文献.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
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个体的下半部分区域,包括体0和体1区域各有96个单元及体2和体3区域各有112个单元。在体1、体2和体3的数据存储器RAM体内,分别存在一个映射的地址区域:F0H-FFH、170H-17FH和1F0H-1FFH。这些单元都是虚拟设计,本身的硬件结构并不存在,但它们的地址信息都可以索引到体0中的高地址70H-7FH处的16个RAM单元。正是基于这样的数据存储器结构,实际的通用寄存器单元数为368个。特殊功能寄存器SFR主要分布在数据存储器RAM个体的上半部分区域。PIC16F87X系列单片机的特殊功能寄存器的布局保持了高度一致,目的是便于PIC单片机之间的相互兼容和调换。特殊功能寄存器中,有的专门控制CPU内核的性能配置,有的专门用于控制各种外围设备模块的操作,因此又可依用途分为两类:一类是与CPU内核相关的寄存器,另一类是与外围模块相关的寄存器。状态寄存器的内容用来计算算数逻辑单元ALU的运算状态和算数特征、CPU的特殊运行状态、以及RAM数据存储器的体间选择等信息。状态寄存器与通用寄存器有着本质的区别,例如功能位TO 和PD只能读;另一些位的状态将取决于运算结果。对于借位,极性相反,执行减法指令时,是通过加上第二操作数的补码实现的;对于移位指令(RRF、RLF),是把源寄存器的最高位或最低位放入进位位C实现的。选择寄存器OPTION是一个可读、可写寄存器,它含有用于设置定时器前分频器/监视器定时器后分频器、外部INT中断、TMRO和B口的弱上拉等各种控制位。如果需要定时器TMRO得到1:1的前分频值,可以把前分频器分配给见识定时器WDT。3.间接寻址寄存器和文件选择寄存器间接寻址寄存器INDF位于数据存储器各体的最低位单元,即00H、80H、100H和180H它们是互相映射,只是有地址编码,但物理上并不真正存在的虚拟寄存器。INDF必须与文件选择寄存器FSR配合,才能实现间接寻址。当访问INDF地址时,实际是访问FSR内容为地

文档评论(0)

ktj823 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档