带你了解8XC552 系列单片机
扫描二维码
随时随地手机看文章
Philips公司生产的与MCS 51单片机兼容的CMOS型单片机中,8XC552的功能最强,最具有代表性。它除了具有8051单片机的全部功能之外,又增加了大量的硬件:高速I/O、PWM、A/D、WDT、计数器的捕获/比较逻辑、串行总线I2CBUS等都集成在片内。
8XC552在指令系统上与MCS 51单片机完全兼容,它有三种不同的型号:
(1)80C552:片内无ROM;
(2)83C552:片内带8KB编程ROM;
(3)87C552:片内带8KB用户可编程EPROM。
8XC552的主要性能
8XC552是增加了许多功能模块的8051单片机,它具有如下特性:
(1)8KB的内部ROM(83C552)或EPROM(87C552),可外扩64KBEPROM;片内有256BRAM,还可外扩64KBRAM或I/O口;
(2)2个标准的16位定时/计数器;1个附加的16位定时/计数器,并配有4个捕捉寄存器和3个比较寄存器;
(3)1个8路10位片内A/D转换器;
(4)2路8位分辨率的脉冲宽度调制解调器输出PWM;
(5)5个8位并行I/O口,1个与A/D合用的输入口;
(6)1个全双工异步串行口UART;
(7)I2 C串行总线口;
(8)内部监视定时器WDT;
(9)2个中断优先级,15个中断源;
(10)有56个特殊功能寄存器SFR;
(11)采用68引脚或80引脚PLCC封装;
(12)工作时钟频率可选择1.2~16 MHz。
8XC552内部结构及引脚描述
8XC552的片内结构框图如图10.14所示。采用PLCC68脚封装形式的引脚功能分配图如图10.15所示。
各引脚的功能如下:
VDD:+5V电源。
EA:存储器访问选择输入端,为“0”时访问外部ROM,为“1”时访问内部ROM。
图10.14 8XC552的内部结构框图
图10.15 8XC552引脚功能
8XC552特殊功能寄存器SFR
8XC552具有地址部分重叠的256个字节的内部数据存储器RAM和128个字节的特殊功能寄存器区SFR,其地址空间为80H~FFH,与高128字节地址RAM重叠。8XC552在8051单片机的21个SFR的基础上增加了35个,总共达56个SFR,新增加的35个SFR是用来控制片内新增加的硬件接口功能的。
8XC552并行I/O端口及复用功能
8XC552具有6个8位I/O口P0~P5,每个口由1个锁存器、1个输入缓冲器和输出驱动器组成。除了P1口新增加了功能,P0~P3与8051完全一样,P4口的功能与P1~P3相同,P5口只能作为输入口。各I/O端口复用功能见表10.13。
脉冲宽度调制器PWM
8XC552有2路PWM输出通道,其输出脉冲的占空比可编程调节。脉冲宽度调制器的工作原理如图10.16所示。
图10.16 PWM输出功能原理图
A/D转换器
8XC552片内有8路10位逐次比较型A/D转换器,基准电压和模拟电源分别由相应的引脚输入,完成一次A/D转换需要50个机器周期,即当振荡器频率为12 MHz时,A/D转换时间为50μs,输入电压范围为0~+5V。其结构如图10.19所示。
图10.19 8XC552A/D转换器电路框图
A/D转换器的操作是通过访问特殊功能寄存器ADCON来实现的,并且ADCON寄存器只能通过字节寻址方法访问。ADCON寄存器的地址为0C5H,其格式如图10.20所示。
ADCON各位的功能说明如下:
ADC.1、ADC.0:A/D转换结果位1、0。
ADES:启动A/D转换方式。若ADES=0,由软件启动A/D转换(置ADCS位);若ADES=1,可由软件或外部引脚STADC上升沿启动A/D转换。
ADCI:ADC中断标志。A/D转换结束,该标志置“1”,并向CPU申请中断,在读A/D转换值中断程序中必须由软件清“0”。
ADCS:ADC启动和状态标志。它由软件或外部引脚STADC设置。当ADC忙时为1,A/D转换结束后,硬件自动复位ADCS,同时置位ADCI,当ADCS或ADCI之一为高电平时,禁止启动A/D转换。
ADCS、ADCI有4种组合,其功能如下:
AADR2~AADR0:模拟通路选择。三位二进制编码,共有8种组合状态,分别选择8路模拟输入信号中的1路输入到A/D转换器,只有在ADCS和ADCI都为低电平时才能变化。
在进行A/D转换的过程中,不理睬外部或软件的启动信号,转换结束后,置位ADCI,并将转换结果的高8位存放在特殊功能寄存器ADCH中,低2位存放在特殊功能寄存器ADCON的最高两位ADC.1和ADC.0中。图10.21所示为A/D转换的实现原理。A/D转换器具有自己独立的电源引脚(AV DD和AV SS)以及连到T型电阻网络的引脚(VREF+和VREF-),AV REF+和AV REF-可以在AV DD+0.2V和AV SS-0.2V之间。转换结果可由下式计算: