1.4PICU单片机的CPU和中断系统
下面将主要对PIC单片机的CPU和中断系统进行介绍。通过对CPU和中断的配置,可以提高计算机的工作效率、提高系统可靠性、降低产品功耗,同时又可增强微控制器的开发功能。
微芯公司生产的PIC16F87X系列单片机的CPU具有以下特色:
●振荡器可选。
●多种复位功能
●多种中断方式。
●监视定时器。
●眨眼模式。
●在线调试功能
●代码保护
●可编程ID识别码。
●在线串行编程。
1.系统配置
在PIC系列单片机的程序存储区中,一般留出了6个具有特殊功能的单元,由用户自行配置,从而实现一些特殊的功能。这几个存储单元不在常规用户程序存储空间,不能被用户程序访问到,只能在对单片机进行编程或校验时,由编程器烧入或读出。在这6个特殊功能的存储单元中,位于2007H的单元为系统配置字;位于2006H的单元存放器件识别码;位于2000H~2003H的4个单元存放用户识别码。
对于PICl6F87X单片机中位于2007H的系统配统字,可川来定义一些系统性能,具体定义如图1-8所示。
bit l3~bit l2 CPl--CP0:程序存储器代码保护位②。
bit 5~bit4 CPl~CP0。
11:代码保护功能关闭。
10:IFOOh~1FFFFh的代码被保护(对于PIcl6F877/876)。
10:0FOOh~0FFFh的代码被保护(对于PICl6F874/873)。
10:不支持(对于PICl6F870/871/872)。
Ol:i000h~1FFFFh的代码被保护(对于PIcl6F877/876)。
Ol:0800h~0FFFh的代码被保护(对于PICl6F874/873)。
01:不支持(对于PICl6F870/871/872)。
00:O000h~1FFFh的代码被保护(对于PIcl6F877/876)。
00:O000~OFFFh的代码被保护(对于PICl6F874/873)。
00:0000~07FFh的代码被保护(对于PICl6F870/871/872)。
bitll DEBUG:在线调试模式。
1:关闭在线调试功能,RB6和RB7为普通I/O端口。
0:开启在线调试功能,RB6和RB7被调试功能占用。
bitl0:未被使用,读做l。
bit 9 WRT:程序存储器写使能位。
1.未被保护的程序存储器,可以通过EECON寄存器控制被烧写。
0:未被保护的程序存储器,不可以通过EECON寄存器控制被烧写·
bit 8 CPD:E2PROM数据存储器代码保护。
1:关闭保护功能。
0:开启代码保护功能。
bit 7 LVP:低电压在线串行编程使能位。
1:RB3/PGM引脚为PGM功能,低电压编程被使能。
0:RB3引脚为数字F0端口功能,MCLR引脚必须加高电压,用于编程。
● bit6 BODEN:掉电锁存复位使能位。
l:允许掉电锁存许掉电锁存复位。
0:禁止掉电锁存复位。
bit l~bic 0 FOSCl~FOSC0:振荡器模式选择位。
11:选择RC阻容振荡器模式。
10:选择HS高速振荡模式。
01:选择XT标准振荡器模式。
00:选择LP低速振荡模式。
注:①为了起到代码保护功能,配置字中的两个CPl:CP0位对的赋值必须相同。
②无论PwRTE位为何值,使能掉电锁存复位都会自动使能上电定时器(PWRT)。当
掉电复位被使能时,要确保上电定时器被使能。
2振荡器配置
1)振荡方式
PICl6F87X系列单片机可工作在4种不J司的振荡模式下。用户可通过对系统配置字中
·LP:低功耗振荡。
●XT:标准晶体振荡。
·HS:高速晶体振荡。
● RC:阻容振荡
2)晶体振荡器/陶瓷谐振器
在LP、XT和HS模式下,PIC单片机既可以使用集成在片内的振荡器,也可以使用外