Philips公司生產(chǎn)的與MCS 51單片機兼容的CMOS型單片機中,8XC552的功能最強,最具有代表性。它除了具有8051單片機的全部功能之外,又增加了大量的硬件:高速I/O、PWM、A/D、WDT、計數(shù)器的捕獲/比較邏輯、串行總線I2CBUS等都集成在片內(nèi)。
8XC552在指令系統(tǒng)上與MCS 51單片機完全兼容,它有三種不同的型號:
(1)80C552:片內(nèi)無ROM;
(2)83C552:片內(nèi)帶8KB編程ROM;
(3)87C552:片內(nèi)帶8KB用戶可編程EPROM。
8XC552的主要性能
8XC552是增加了許多功能模塊的8051單片機,它具有如下特性:
(1)8KB的內(nèi)部ROM(83C552)或EPROM(87C552),可外擴64KBEPROM;片內(nèi)有256BRAM,還可外擴64KBRAM或I/O口;
(2)2個標準的16位定時/計數(shù)器;1個附加的16位定時/計數(shù)器,并配有4個捕捉寄存器和3個比較寄存器;
(3)1個8路10位片內(nèi)A/D轉(zhuǎn)換器;
(4)2路8位分辨率的脈沖寬度調(diào)制解調(diào)器輸出PWM;
(5)5個8位并行I/O口,1個與A/D合用的輸入口;
(6)1個全雙工異步串行口UART;
(7)I2 C串行總線口;
(8)內(nèi)部監(jiān)視定時器WDT;
(9)2個中斷優(yōu)先級,15個中斷源;
(10)有56個特殊功能寄存器SFR;
(11)采用68引腳或80引腳PLCC封裝;
(12)工作時鐘頻率可選擇1.2~16 MHz。
8XC552內(nèi)部結(jié)構(gòu)及引腳描述
8XC552的片內(nèi)結(jié)構(gòu)框圖如圖10.14所示。采用PLCC68腳封裝形式的引腳功能分配圖如圖10.15所示。
各引腳的功能如下:
VDD:+5V電源。
EA:存儲器訪問選擇輸入端,為“0”時訪問外部ROM,為“1”時訪問內(nèi)部ROM。
圖10.14 8XC552的內(nèi)部結(jié)構(gòu)框圖
圖10.15 8XC552引腳功能
8XC552特殊功能寄存器SFR
8XC552具有地址部分重疊的256個字節(jié)的內(nèi)部數(shù)據(jù)存儲器RAM和128個字節(jié)的特殊功能寄存器區(qū)SFR,其地址空間為80H~FFH,與高128字節(jié)地址RAM重疊。8XC552在8051單片機的21個SFR的基礎(chǔ)上增加了35個,總共達56個SFR,新增加的35個SFR是用來控制片內(nèi)新增加的硬件接口功能的。
8XC552并行I/O端口及復用功能
8XC552具有6個8位I/O口P0~P5,每個口由1個鎖存器、1個輸入緩沖器和輸出驅(qū)動器組成。除了P1口新增加了功能,P0~P3與8051完全一樣,P4口的功能與P1~P3相同,P5口只能作為輸入口。各I/O端口復用功能見表10.13。
脈沖寬度調(diào)制器PWM
8XC552有2路PWM輸出通道,其輸出脈沖的占空比可編程調(diào)節(jié)。脈沖寬度調(diào)制器的工作原理如圖10.16所示。
圖10.16 PWM輸出功能原理圖
A/D轉(zhuǎn)換器
8XC552片內(nèi)有8路10位逐次比較型A/D轉(zhuǎn)換器,基準電壓和模擬電源分別由相應的引腳輸入,完成一次A/D轉(zhuǎn)換需要50個機器周期,即當振蕩器頻率為12 MHz時,A/D轉(zhuǎn)換時間為50μs,輸入電壓范圍為0~+5V。其結(jié)構(gòu)如圖10.19所示。
圖10.19 8XC552A/D轉(zhuǎn)換器電路框圖
A/D轉(zhuǎn)換器的操作是通過訪問特殊功能寄存器ADCON來實現(xiàn)的,并且ADCON寄存器只能通過字節(jié)尋址方法訪問。ADCON寄存器的地址為0C5H,其格式如圖10.20所示。
ADCON各位的功能說明如下:
ADC.1、ADC.0:A/D轉(zhuǎn)換結(jié)果位1、0。
ADES:啟動A/D轉(zhuǎn)換方式。若ADES=0,由軟件啟動A/D轉(zhuǎn)換(置ADCS位);若ADES=1,可由軟件或外部引腳STADC上升沿啟動A/D轉(zhuǎn)換。
ADCI:ADC中斷標志。A/D轉(zhuǎn)換結(jié)束,該標志置“1”,并向CPU申請中斷,在讀A/D轉(zhuǎn)換值中斷程序中必須由軟件清“0”。
ADCS:ADC啟動和狀態(tài)標志。它由軟件或外部引腳STADC設(shè)置。當ADC忙時為1,A/D轉(zhuǎn)換結(jié)束后,硬件自動復位ADCS,同時置位ADCI,當ADCS或ADCI之一為高電平時,禁止啟動A/D轉(zhuǎn)換。
ADCS、ADCI有4種組合,其功能如下:
AADR2~AADR0:模擬通路選擇。三位二進制編碼,共有8種組合狀態(tài),分別選擇8路模擬輸入信號中的1路輸入到A/D轉(zhuǎn)換器,只有在ADCS和ADCI都為低電平時才能變化。
在進行A/D轉(zhuǎn)換的過程中,不理睬外部或軟件的啟動信號,轉(zhuǎn)換結(jié)束后,置位ADCI,并將轉(zhuǎn)換結(jié)果的高8位存放在特殊功能寄存器ADCH中,低2位存放在特殊功能寄存器ADCON的最高兩位ADC.1和ADC.0中。圖10.21所示為A/D轉(zhuǎn)換的實現(xiàn)原理。A/D轉(zhuǎn)換器具有自己獨立的電源引腳(AV DD和AV SS)以及連到T型電阻網(wǎng)絡(luò)的引腳(VREF+和VREF-),AV REF+和AV REF-可以在AV DD+0.2V和AV SS-0.2V之間。轉(zhuǎn)換結(jié)果可由下式計算: