3 主要硬件電路及器件介紹
3.1 80C51單片機(jī)
圖3:8051引腳圖
80C51單片機(jī)按功能劃分,由8個(gè)部件組成:微處理器(CPU)、數(shù)據(jù)存儲(chǔ)器(RAM)、程序存儲(chǔ)器(ROM/EPROM)、四個(gè)I/O口(P0口、P1口、P2口、P3口)、串行口、定時(shí)器/計(jì)數(shù)器、中斷系統(tǒng)及特殊功能寄存器(SFR)的集中控制方式[1]。
各功能部件的介紹:
(1) 數(shù)據(jù)存儲(chǔ)器(RAM):片內(nèi)為128個(gè)字節(jié)單元,片外最多可擴(kuò)展至64K字節(jié)。用以存放數(shù)據(jù),我們稱之為片內(nèi)數(shù)據(jù)存儲(chǔ)器。
(2) 程序存儲(chǔ)器(ROM/EPROM):片內(nèi)ROM為4K,片外最多可擴(kuò)展至64K字節(jié)。
(3) 中斷系統(tǒng):具有5級(jí)中斷的中斷系統(tǒng),2級(jí)中斷優(yōu)先權(quán)。
(4) 定時(shí)器/計(jì)數(shù)器:2個(gè)16位的定時(shí)器/計(jì)數(shù)器,具有四種工作方式。
(5) 串行口:1個(gè)全雙工的串行通信接口,具有四種工作方式。
(6) 特殊功能寄存器(SFR)共有21個(gè),每個(gè)寄存器占一個(gè)存儲(chǔ)單元。
(7) 微處理器:為8位CPU,內(nèi)部具有一個(gè)8位CPU(位處理器),不僅可處理字節(jié)數(shù)據(jù),還可以進(jìn)行位變量的處理。
另外還有四個(gè)8位雙向并行的輸入/輸出(I/O)端口,每個(gè)端口都有八條引線和一個(gè)輸出驅(qū)動(dòng)器和一個(gè)輸入緩沖器。這四個(gè)端口的功能不完全相同。P0口既可作一般I/O端口使用,又可作地址/數(shù)據(jù)總線使用;P1口是一個(gè)準(zhǔn)雙向并行口,作通用并行I/O口使用;P2口除了可作為通用I/O使用外,還可在CPU訪問(wèn)外部存儲(chǔ)器時(shí)作高八位地址線使用;P3口是一個(gè)多功能口除具有準(zhǔn)雙向I/O功能外,還具有第二功能。
控制引腳介紹:
(1) 電源:?jiǎn)纹瑱C(jī)使用的是5V電源,其中40引腳接電源正級(jí),20引腳接地。
(2) 時(shí)鐘引腳XTAL1、XTAL2時(shí)鐘引腳外接晶體與片內(nèi)反相放大器構(gòu)成了振蕩器,產(chǎn)生片內(nèi)CPU時(shí)鐘控制信號(hào)。此引腳也可外接晶體振蕩器。
(3) RST:當(dāng)時(shí)鐘電路開(kāi)始工作時(shí),在此引腳上出現(xiàn)24個(gè)時(shí)鐘周期以上的高電平能夠使單片機(jī)復(fù)位。另外我們?cè)诖艘_與VCC之間連接一個(gè)24兆歐的下拉電阻,在外接電路之間連接二個(gè)36微法的電容,可以保證有效的復(fù)位。在單片機(jī)正常工作時(shí),此引腳應(yīng)為≤0.5V低電平。
(4) ALE:當(dāng)訪問(wèn)外部程序存儲(chǔ)器時(shí)ALE(地址鎖存允許)輸出脈沖用于16位地址中的低8位的鎖存信號(hào),以便P0口實(shí)現(xiàn)地址/數(shù)據(jù)復(fù)用。當(dāng)不去訪問(wèn)外部鎖存器時(shí),ALE端將輸出一個(gè)1/6的時(shí)鐘頻率正脈沖信號(hào)輸出,此頻率約為時(shí)鐘振蕩器的1/6。但是每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),在兩個(gè)機(jī)器周期中ALE只出現(xiàn)一次,即ALE會(huì)跳過(guò)一個(gè)脈沖。因此,嚴(yán)格來(lái)說(shuō),用戶不能用ALE做時(shí)鐘源或定時(shí)。ALE端可以驅(qū)動(dòng)8個(gè)TTL負(fù)載
(5) /PSEN(29腳):此引腳是單片機(jī)訪問(wèn)片外ROM存儲(chǔ)器的讀選通信號(hào)。在執(zhí)行訪問(wèn)片外ROM的MOVC指令期間,每個(gè)機(jī)器周期PSEN上產(chǎn)生一個(gè)負(fù)脈沖,用于對(duì)于片外ROM數(shù)據(jù)存儲(chǔ)器選通,這兩次有效的/PSEN信號(hào)不出現(xiàn)。其他情況下,/PSEN線均為高電平封鎖狀態(tài)。
(6) /EA/VPP(31腳):當(dāng)EA端保持高電平時(shí)并且程序地址小于4KB時(shí),讀取內(nèi)部存儲(chǔ)器指令,但在PC值超過(guò)4KB程序地址時(shí)則執(zhí)行外部存儲(chǔ)器內(nèi)的程序;當(dāng)/EA保持低電平時(shí),不管地址大小則只訪問(wèn)外部程序存儲(chǔ)器,一律讀取外部程序存儲(chǔ)器指令[2]。
3.2 DAC0832
圖4:DAC0832引腳圖
DAC0832是8分辨率的D/A轉(zhuǎn)換芯片,集成電路內(nèi)有兩級(jí)輸入寄存器。由8位輸入鎖存器、8位DAC 寄存器、8 位D/A 轉(zhuǎn)換器及轉(zhuǎn)換控制電路四部分構(gòu)成。8位輸入鎖存器用于存放主機(jī)送來(lái)的數(shù)字量,使輸入數(shù)字得到緩沖和鎖存,并加以控制。DAC0832輸出的是電流,一般要求輸出是電壓,所以還必須經(jīng)過(guò)一個(gè)外接的運(yùn)算放大器轉(zhuǎn)換成電壓[3]。DAC0832芯片具備雙緩沖、單緩沖和直通三種輸入方式,以便適于各種電路的需要(如要求多路D/A異步輸入、同步轉(zhuǎn)換等)。
DAC0832的引腳功能如下:
(1) D0~D7:數(shù)字信號(hào)輸入端。
(2) ILE:輸入寄存器允許,高電平有效。
(3) CS:片選信號(hào),低電平有效。
(4) WR1:寫(xiě)信號(hào)1,低電平有效。
(5) XFER:傳送控制信號(hào),低電平有效。
(6) WR2:寫(xiě)信號(hào)2,低電平有效。
(7) IOUT1、IOUT2:DAC電流輸出端。
(8) RFB:是集成在片內(nèi)的外接運(yùn)放的反饋電阻。
(9) VREF:基準(zhǔn)電壓(-10~10V)。
(10) Vcc:是源電壓(+5~+15V)。
(11) AGND:模擬地 NGND:數(shù)字地,可與AGND接在一起使用。
3.3 數(shù)碼顯示管通過(guò)控制7個(gè)筆畫(huà)段的亮或暗,和控制一個(gè)小數(shù)點(diǎn)的亮和暗來(lái)實(shí)現(xiàn)數(shù)碼管顯示。LED 顯示器有共陰極和共陽(yáng)極2 種形式。共陽(yáng)極顯示器是發(fā)光二極管的陽(yáng)極連接在一起,當(dāng)需要顯示某字符時(shí),只需要將共陽(yáng)極端接高電平,根據(jù)顯示需要讓a-h中某些位置接低電平。共陰極顯示器是發(fā)光二極管的陰極連接在一起,當(dāng)需要顯示某字符時(shí),只需要將共陰極端接低電平,a-h 中某些位接高電平即可。
顯示器的工作方式分為靜態(tài)顯示方式和動(dòng)態(tài)顯示方式兩種:
(1) 靜態(tài)顯示方式就是顯示器在顯示一個(gè)字符時(shí),相應(yīng)的發(fā)光二極管恒定的導(dǎo)通或截止,例如a、b、c、d、e、f導(dǎo)通,g截止時(shí)顯示“0”,這種使顯示器顯示字符的字形數(shù)據(jù)常稱為段數(shù)據(jù)。靜態(tài)顯示方式的每一個(gè)七段顯示器,需要由一個(gè)8 位并行口控制。優(yōu)點(diǎn)是顯示穩(wěn)定,提高了工作效率,缺點(diǎn)是位數(shù)較多時(shí)顯示口隨之增加。
(2) 動(dòng)態(tài)顯示方式是一位一位的輪流點(diǎn)亮各位顯示器,對(duì)于每一位顯示器來(lái)說(shuō),每隔一段時(shí)間點(diǎn)亮一次。顯示器的亮度既與導(dǎo)通電流有關(guān),也與點(diǎn)亮?xí)r間和間隔時(shí)間的比例有關(guān)。調(diào)整電流和時(shí)間參數(shù)可以實(shí)現(xiàn)亮度較高較穩(wěn)定的顯示,如顯示器的位數(shù)不大于8位,則控制顯示器公共極的電位只需要一個(gè)8位口(位數(shù)據(jù)口),控制字形也需要一個(gè)8位口(段數(shù)據(jù)口)。要使顯示管顯示不同的數(shù)字或者字符,需要使端口輸出相應(yīng)的字型碼