完整word版单片机主要性能Word格式文档下载.docx
《完整word版单片机主要性能Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《完整word版单片机主要性能Word格式文档下载.docx(24页珍藏版)》请在冰豆网上搜索。
00H80H100H180H
它们互相映射,物理上并不真正存在的虚拟寄存器
2.PCL:
02H82H102H182H
程序计数器PC指针宽13位的低8位。
数据信息可读写,和PCLATH构成程序指针。
3.STATUS:
状态寄存器地址:
03H83H103H183H它们互相映射
各位含义如下:
BIT0/C:
进位/借位标志,被动参数
0:
执行加法(或减法)指令时,如果高位无进位(或有借位)
1:
执行加法(或减法)指令时,如果高位有进位(或无借位)
BIT1/DC:
辅助进位/借位标志,被动参数
执行加法(或减法)指令时,如果低4位向高4位无进位(或有借位)
执行加法(或减法)指令时,如果低4位向高4位有进位(或有借位)
BIT2/Z:
零标志,被动参数
算术或逻辑运算结果不为0
算术或逻辑运算结果为0
BIT3/
:
降耗标志,被动参数
休眠指令执行后
上电或看门狗清0指令执行后
BIT4/
超时标志,被动参数
看门狗发生超时
上电或看门狗清0指令或休眠指令执行后
BIT6~BIT5/RP1~PR0:
RAM数据存储器体选位,仅用于直接寻址,主动参数。
两位复位选择RAM数据存储器的4个体,具体关系如下:
RP1,RP0=00选中体0
RP1,RP0=01选中体1
RP1,RP0=10选中体2
RP1,RP0=11选中体3
BIT7/IRP:
RAM数据存储器体选位,仅用于间接寻址,主动参数
选择数据存储器低位体,即体0(FSR的BIT7=0)或体1(FSR的BIT7=1)
选择数据存储器高位体,即体2(FSR的BIT7=0)或体3(FSR的BIT7=1)
4.FSR:
04H84H104H184H
a.与INDF寄存器配合,实现间接寻址,当访问INDF地址时,应该是访问以FSR内容为地址所指向的数据存储器RAM单元。
b.在间接寻址中,体选码由STATUS的IRP为和FSR寄存器的BIT7组成,体内单元地址来自FSR的低7位。
(STATUS的BIT6~BIT5的功能,见上·
)
5.PORTA:
地址:
05H
注意:
只有当对ADCON1进行设置后才能用作为数字量输入/输出引脚。
一共有RA5~RA0六个引脚,还有第2,第3功能。
6.PORTB:
06H106H
作为输入时,内部有可编程的弱上拉电阻,此外,端口B还有第2第3功能。
集成开发环境借用RB的3条引脚,在扩展外围电路中应避免使用RB3,RB6,RB7。
7.PORTC:
07H
其引脚还有第2第3功能,且功能最位丰富。
主要嵌入两大功能:
捕捉/比较/脉宽调制模块CCP和各类串行通信模块。
8.PORTD:
08H
RD端口有第2功能,作为从动并行口与其他微处理器总线连接。
9.PORTE:
09H
一共有RE2~RE0三个引脚,还有第2,第3功能。
10.PCLATH:
0AH8AH10AH18AH
作为PC指针的高5位装载到PCH中构成13位程序记数指针。
a.执行PCL为目标地址指令时装载低5位
b.执行跨页跳转和调用指令时只转载PCLATH〈4,3〉
与中断相关的寄存器共6个如下:
OPTION-REG
INTCON
PIE1
PIR1
PIE2
PIR2
11.OPTIONREG:
选项寄存器地址:
81H181H
BIT2~BIT0/PS2~PS0:
分频器分频比选择位,主动参数。
TMR0所带的分频器,可以自己用也可以分配给WDT电路。
构成8种分频比的去件略有差异。
如下表
PS2~PS0
000
001
010
011
100
101
110
111
TER0比率
1:
2
4
8
16
32
64
128
256
WDT比率
1
Bit3/PSA:
分频器分配位,主动参数
分频器分配给TMR0(具有较大分频比);
分频器分配给WDT(具有较小分频比)
BIT4/T0SE:
TMR0的时钟源触发边沿选择位,主动参数。
如果TMR0工作在定时模式,将与该位设置无关。
记数方式,外部时钟T0CK1上升沿触发有效;
记数方式,外部时钟T0CK1下降沿触发有效;
BIT5/T0CS:
TMR0的时钟源选择位,主动参数。
由系统频率fosc的4分频作为定时器TMR0的触发信号(定时模式)
1:
外部引脚的脉冲信号T0CK1作为计数器TMR0的触发信号
BIT6/INTEDG:
INT中断信号触发边沿选择位,主动参数
RB0/INT引脚上的上升沿触发
RB0/INT引脚上的下降沿触发
BIT7/
RB端口弱上拉使能位,主动参数
使能RB0~RB7引脚弱上拉功能;
12.INTCON:
中断控制寄存器;
0BH8BH10BH18BH
BIT0/RBIF:
RB端口高4位引脚RB4~RB7电平变化中断标志位,被动参数。
RB4~RB7未发生电平变化
RB4~RB7已发生电平变化,系统置位(必须用软件清0)
BIT1/INTF:
外部触发INT中断标志位,被动参数。
为发生外部触发INT中断申请
已发生外部触发INT中断申请,系统置位(必须用软件清0)
BIT2/T0IF:
TMR0溢出中断标志位,被动参数。
只要发生TER0计数溢出,就将使
置位,而与是否处于中断使能无关。
TMR0未发生计数溢出申请
TMR0已发生计数溢出申请,系统置位(必须用软件清0)
BIT3/RBIE:
RB端口高4位引脚RB4~RB7电平变化中断使能位,主动参数。
禁止RB端口高四位RB4~RB7电平变化中断;
使能RB端口高四位RB4~RB7电平变化中断。
BIT4/INTE:
外部触发INT中断使能位,主动参数
禁止外部触发INT中断
使能外部触发INT中断
BIT5/T0IE:
TMR0溢出中断使能位,主动参数。
禁止TMR0计数溢出中断
使能TMR0计数溢出中断
BIT6/PEIE:
外围中断使能位,主动参数
禁止所有外围中断源(11个中断源)的中断请求;
使能所有外围中断源(11个中断源)的中断请求;
BIT7/GIE:
总中断使能位,主动参数
禁止所有中断源模块(14个中断源)的中断请求
1:
使能所有中断源模块(14个中断源)的中断请求
13.PIR1:
第一外围中断标志寄存器;
0CH
BIT0/TMR1IF:
TMR1溢出中断标志位,被动参数。
TMR1未发生计数溢出;
TMR1已发生计数溢出,系统置位(必须用软件清0)
BIT1/TMR2IF:
TMR2溢出中断标志位,被动参数。
TMR2未发生计数溢出;
TMR2已发生计数溢出,系统置位(必须用软件清0)
BIT2/CCP1IF:
捕捉比较和脉宽调制CCP1模块中断标志,被动参数
未发生CCP1模块中断申请
已发生CCP1模块中断申请,系统置位(必须用软件清0)
BIT3/SSPIF:
同步串行SSP通行中断标志,被动参数
未发生SSP模块中断申请,等待下次发送或接受
已发生SSP模块中断申请,完成本次发送或接受,系统置位(必须用软件清0)
BIT4/TXIF:
SCI串行通行发送中断标志位,被动参数
未发生SCI模块中断申请,当前正在发送数据
已发生SCI模块中断申请,完成本次发送,系统置位(必须用软件清0)
BIT5/RCIF:
SCI串行通行接受中断标志位,被动参数
未发生SCI模块中断申请,当前正在准备接受
已发生SCI模块中断申请,完成本次数据接受,系统置位(必须用软件清0)
BIT6/ADIF:
A/D转换器中断标志位,被动参数
未发生A/D转换器中断申请
已发生A/D转换器中断申请,完成本次A/D转换工作,
系统置位(必须用软件清0)
BIT7/PSPIF:
RD并行端口中断标志位,被动参数
未发生RD并行端口中断申请;
已发生RD并行端口中断申请,系统置位(必须用软件清0)
14.PIR2:
第二外围中断标志寄存器;
0DH主要涉及3个中断源标志位
BIT0/CCP2IF:
捕捉比较和脉宽调制CCP2模块中断标志位,被动参数
未发生CCP2模块中断申请
已发生CCP2模块中断申请,系统置位(必须用软件清0)
BIT3/BCLIF:
I2C总线冲突中断标志位,被动参数
未发生I2C总线冲突中断申请
已发生I2C总线冲突中断申请,系统置位(必须用软件清0)
BIT4/EEIF:
E2PROM中断标志位,被动参数
未发生E2PROM中断申请,本次写操作正在进行
已发生E2PROM中断申请,本次写操作已经完成,系统置位(必须用软件清0)
15.PIE1:
第一外围中断使能寄存器;
地址8CH
BIT0/TMR1IE:
TMR1溢出中断使能位,主动参数。
禁止TMR1计数溢出中断;
使能TMR1计数溢出中断
BIT1/TMR2IE:
TMR2溢出中断使能位,主动参数。
禁止TMR2计数溢出中断;
使能TMR2计数溢出中断
BIT2/CCP1E:
捕捉比较和脉宽调制CCP1模块中断使能位,主动参数
禁止CCP1模块中断
使能CCP1模块中断
BIT3/SSPIE:
同步串行SSP通行中断使能位,主动参数
禁止SSP模块中断
使能SSP模块中断
BIT4/TXIE:
SCI串行通行发送中断使能位,主动参数
禁止SCI串行通信模块发送中断
使能SCI串行通信模块发送中断
BIT5/RCIE:
SCI串行通行接收中断使能位,主动参数
禁止SCI串行通信模块接收中断
使能SCI串行通信模块接收中断
BIT6/ADIE:
A/D转换器中断使能位,主动参数
禁止A/D转换器的中断
使能A/D转换器的中断
BIT7/PSPIE:
RD并行端口中断使能位,主动参数
禁止RD并行端口的中断
使能RD并行端口的中断
16.PIE2:
第二外围中断使能寄存器;
地址8DH要涉及3个中断源的使能位
BIT0/CCP2IE:
捕捉比较和脉宽调制CCP2模块中断使能位,主动参数
禁止CCP2模块中断
使能CCP2模块中断
BIT3/BCLIE:
I2C总线冲突中断使能位,主动参数
禁止I2C总线冲突中断
使能I2C总线冲突中断
BIT4/EEIE:
E2PROM中断使能位,主动参数
禁止E2PROM中断1:
使能E2PROM中断
与TMR0模块相关的寄存器共4个如下:
TMR0
TRISA
17.TMR0:
8位累加记数寄存器地址:
01H101H
与TMR1模块相关的寄存器共6个如下:
TMR1L
TMR1H
TICON
18.TMR1L:
16位TMR1计数寄存器低字节寄存器;
0EH
19.TMR1H:
16位TMR1计数寄存器高字节寄存器;
0FH
采用上升沿触发计数方式,即只有上升沿才是有效信号。
20.T1CON:
TMR1控制寄存器;
10H低6位有效,高2为没定义
BIT0/TMR1ON:
TMR1计数启/停控制位(TMR0不能被关闭),主动参数
TMR1停止计数;
TMR1启用计数
BIT1/TMR1CS:
TMR1时钟源选择位,主动参数
选择内部时钟源,可设置定时模式,采用指令周期信号触发
选择外部时钟源,可设置计数模式,时钟信号来源于外部引脚(接TICK1)
或自带振荡器(接RC0/TIOSO,RC1/TIOSI)
BIT2/
TMR1外部输入时钟与系统时钟同步控制,主动参数。
在TMR1内部设置一个同步控制逻辑(fosc的2分频),只有TMR1工作在计数方式时,才能进行设置。
TMR1外部引脚时钟信号或者自带振荡器信号与系统时钟保持同步;
TMR1外部引脚时钟信号或者自带振荡器信号与系统时钟异步工作;
BIT3/T1OSCEN:
TMR1自带振荡器使能位,主动参数
禁止TMR1低频振荡器工作;
使能TMR1低频振荡器工作;
BIT5~BIT4/TICKPS1~TICKPS0:
预分频器的分频比选择位,主动参数;
如下表:
TICKPS1~TICKPS0
00
01
10
11
分频比
与TMR2模块相关的寄存器共6个如下:
TMR2
T2CON
PR2
21.TMR2:
8位专用定时器。
11H不能承担外部信号计数功能;
结构:
一个可编程预分频器,一个可编程后分频器和一个可编程8位周期寄存器PR2等部件;
22.T2CON:
TMR2控制寄存器;
12H低7位有效
BIT1~BIT0/T2CKPS1~T2CKPS0:
预分频比选择位,主动参数;
T2CKPS1~T2CKPS0
预分频器分频比
BIT2/TMR2ON:
TMR2定时启/停控制位(TMR0不能关闭),主动参数
TMR2停止计数;
TMR2启动计数。
BIT6~BIT3/TOUTPS3~TOUTPS0:
TMR2后分频比选择位,主动参数;
该分频比是PIC单片机中唯一可以连续设置的分频比,TMR2的溢出信号经过该分频后才能产生中断请求;
OUTPS3~TOUTPS0
0000
0001
0010
0011
0100
0101
0110
0111
…
1111
后分频器分频比
3
5
6
7
23.PR2:
TMR2周期寄存器;
92H
是TMR2模块的溢出的参考标志,即PR2和TMR2记数值相等时发生溢出,如果其他条件相同,一般周期寄存器的数值越大,定时溢出的越长。
与SPI模式相关的寄存器共10个如下:
ADCON1
TRISC
SSPBUF
SSPCON
SSPSTAT
SSPSR
24.SSPBUF:
收/发数据缓冲器SSPBUF;
13HSPI通信收/发数据专用寄存器,即MSSP接收/发送数据缓冲空间
25.SSPSTAT:
同步串行状态寄存器;
84H
SSPSTAT状态寄存器真实记录MSSP模块的各种工作状态,高2为可读写,低6位只能读;
与SPI通信有关的只有BIT0,BIT6,BIT7三位
BIT0/BF:
接收缓冲器SSPBUF满标志位,仅仅用于SPI接收状态,被动参数
表示接收缓冲器空
表示接受缓冲器满
BIT6/CKE:
在SPI通信中决定时钟沿选择和发送数据的关系,并且与空闲时的高/低电平有关,主动参数
在CKP(SSPCON:
4)=0,静态电平为低时;
时序信号SCK下降沿发送数据
时序信号SCK上升沿发送数据
4)=1,静态电平为高时;
BIT7/SMP:
在SPI主控方式下,SPI通信可以选择不同的采样控制方式;
而对于SPI从动方式,该位必须固定置位,主动参数
在时序信号中间采样输入数据
在时序信号末尾采样输入数据
26.SSPSR:
移位寄存器;
无地址在SPI模式下,移位寄存器SSPSR是主从双方进行数据发送和接收的主要器件,会自动与发送/接收缓冲器SSPBUF进行数据传递;
SSPBUF是真正面向用户可进行读写的寄存器。
27.SSPCON:
同步串行控制寄存器;
14H“SPI”
通过这些内容的设置可实现对SPI模块的功能和通信方式进行调整。
BUT3~BIT0/SSPM3~SSPM0:
同步串口SPI方式选择位,主动参数。
具体配置如下表:
SSPM3~SSPM0
SPI工作方式
时钟
主控方式
fosc/4
fosc/16
fosc/64
TMR2输出/2
从动方式
SCK脚输入,使能
引脚功能
SCK脚输入,关闭
引脚功能,
被用作普通数字I/O引脚
BIT4/CKP:
空闲时钟电平选择位,主动参数。
表示空闲时钟位于低电平
表示空闲时钟为于高电平
BIT5/SSPEN:
同步串行MSSP使能位,对于SPI模式,必须确保SCK,SDO设定为输出状态,而SDI,
设定为输入状态,主动参数。
禁止同步串行功能,SCK,SDO,SDI和
可作为一般通用数字通道
使能同步串行功能,SCK,SDO,SDI和
应作为SPI的专用通道
在SPI模式下,SCK,SDO,SDI和
并非都要使用,例如,面向一
般的应用器件,起数据是单向传送,实际只用到SCK,SDO两根引脚线。
BIT6/SSPOV:
接收缓冲器SSPBUF溢出标志位,被动参数
没有发生接收溢出
已经发生接收溢出
发生接收溢出是指接收缓冲器SSPBUF中上次获得的数据还未被取出,移位寄
存器SSPSR中又收到新的数据。
一般可采取及时对SSPBUF执行读取操作来解决
BIT7/WCOL:
发送缓冲器SSPBUF冲突检测位,被动参数、
没有发生写操作冲突
已经发生写操作冲突
发生写操作冲突是指移位寄存器SSPSR正在发送前一个数据字节时,又出现新数据写入发送缓冲器SSPBUF。
这种写操作冲突将严重影响SPI正常的数据通道,必须彻底杜绝这种现象的发生
与I2C总线模式相关的寄存器共12个如下
SSPCON2
SSPADD
SSPCON:
同步串口控制寄存器地址:
14H“I2C”
同步串行I2C主,从方式和地址定义选择位,主动参数
I2C
寻址方式
7位寻址
10位寻址
1000
时钟为fosc/[4*(SSPADD+1)]
1011
从动器件空闲
1110
启动位,停止位,可使能中断的7位寻址
启动位,停止位,可使能中断的10位寻址
CKP是SPI通信中的时钟极性选择位,而在I2C从动方式下,SCL仅仅表示时钟使能位,主动参数
将时钟线SCL拉到低电平并适当保持一定的时间,以确保数据有足够建立时间;
时钟信号正常工作方式
同步串口MSSP使能位,对于I2C模式,必须确保SCK设定为输出状态,而SDA可随时变换输入/输出状态,主动参数;
0:
禁止同步串行功能,SDA和SCL可一般通用数字通道
使能同步串行功能,SDA和SCL应作为I2C通行专用通道
没有发生写操作冲突1:
SSPSTAT:
同步串口状态寄存器高2为可读写,抵6位只能读;
BIT0/BF:
缓冲器SSPBUF满标志位,被动参数
在I2C总线方式下,主,从器件接收时
表示接收缓冲器为空
表示接收缓冲器已满
在I2C总线方式下,主,从器件发送时
表示完成数据发送,目前接收缓冲器SSPBUF为空
表示正在发送数据,目前发送缓冲器SSPBUF已满
BIT1/UA:
在I2C总线10位地址的寻址方式中,可以作为地址更新标志位