教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 初中教育 >

PIC16F877A单片机中文文献

来源:网络收集 时间:2026-08-14
导读: PIC16F877A单片机基本模块简介 PIC16F877A单片机是microchip公司的产品,它采用14位的RISC指令系统,内部集成了A/D转换器、EEPROM、模拟比较器、带比较和捕捉功能的定时器/计数器、PWM输出、异步串行通信电路等。 1.程序存储器 程序存储器和堆栈PIC16F877A单

PIC16F877A单片机基本模块简介

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位宽的存储单元。特殊功能寄

PIC16F877A单片机基本模块简介

存器安排在低位地址存储单元,通用寄存器在高位地址存储单元。对通用寄存器可以直接进行访问,也可以通过寄存器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它们是互相映射,只是有地址编码,但物理上并不真正存在的虚拟寄存

PIC16F877A单片机基本模块简介

器。INDF必须与文件选择寄存器FSR配合,才能实现间接寻址。当访问INDF地址时,实际是访问FSR内容为地址所指向的数据存储器RAM单元。PIC系列单片机采用这种独特而巧妙的构想,实现对数据存储器的循环访问,也使PIC指令集系统得到很大的精简。在PIC单片机指令系统中,直接寻址和间接寻址是很重要的数据访问方式,主要是借助于状态寄存器相关位的补充实现数据存储器的选择。在直接寻址中,体选码来自状态寄存器STATUS的RP1和RP0位,体内的单元地址直接来自指令机器码;而在间接寻址中,体选码由STATUS的IRP位和FSR寄存器的Bit7组成,体内单元地址来自FSR的低7位。

4.算数逻辑区域

算数逻辑单元ALU是PIC16F877A单片机中实现算术运算和逻辑运算的核心。与算数逻辑区域相关的特殊功能寄存器主要有以下三种:

1).工作寄存器W:相当于MCS-51单片机中的累加器A,是数据传送的桥梁,是最为繁忙的工作单元。在运算前,W可以暂存

2).状态寄存器STATUS:反映最近一次算数逻辑运算结果的状态特征,如是否产生进位、错位结果是否为零等,共涉及3个标志位(Z、DC、C)。状态寄存器还包括数据寄存器区域的选择信息(IRP、RP1、RP0)。该寄存器在MCS-51单片机中称为程序状态字寄存器。

3).文件选择寄存器FSR,是与IND完成间接寻址的专用寄存器,用于存放间接地址,即预先将要访问单元的地址存入该寄存器。

5.输入输出端口模块

PIC16F877A单片机共设置有5个输入输出端口,分别为RA、RB、RC、RD、RE,共合计共有33个引脚。大多数引脚除了基本I/O功能外,还配置有第二甚至第三功能,例如模拟量输入通道、串并行通信线和MPLAB-ICD2专用控制线等。这些端口引脚在使用中存在着差异,特别是RA和RE中所涉及的输入输出通道,只有当对ADCON1进行设置后磁能用作为数字量输入输出引脚。另外,RB端口的高4位具有特殊的电平变化中断功能,为实现监控提供了很大方便。RC端口拥有各类串行通信功能,包括主控同步串行通信和同步/异步收发器。

6.定时器模块

PIC16F877A单片机配置有3个功能较强的多功能定时器模块:TMR0、TMR1、

PIC16F877A单片机基本模块简介

TMR2。他们都具有不同位宽的可编程定时器,除TMR2外都可以作为计时器使用。每个定时器/计数器模块都配有不同比例的预分频器或后分频器。另外,还有两个重要而专门用途:当设置在同步计数方式下,TMR1可与捕捉/比较/脉宽调制CCP模块配合实现捕捉和比较功能:TMR2可以捕捉/比较/脉宽调制CCP模块配合实现脉宽调制输出功能。

7.复位功能模块

1)上电复位:当系统芯片加电后,电源电压VDD会有一个逐渐上升的过程,当达到1.5-1.8V后,上电复位电路将自动产生一个复位脉冲,是单片机复位。

…… 此处隐藏:2770字,全部文档内容请下载后查看。喜欢就下载吧 ……

PIC16F877A单片机中文文献.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/48081.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)