AT89C55WD微控制器:特性、功能與應(yīng)用詳解
在嵌入式系統(tǒng)設(shè)計(jì)領(lǐng)域,選擇一款合適的微控制器至關(guān)重要。AT89C55WD作為一款低功耗、高性能的CMOS 8位微控制器,具有諸多出色特性,能為眾多嵌入式控制應(yīng)用提供高靈活性和高性價(jià)比的解決方案。本文將深入剖析AT89C55WD的各項(xiàng)特性、功能及應(yīng)用要點(diǎn)。
文件下載:AT89C55WD-24AI.pdf
一、產(chǎn)品概述
AT89C55WD采用Atmel的高密度非易失性存儲(chǔ)器技術(shù)制造,與行業(yè)標(biāo)準(zhǔn)的80C51和80C52指令集及引腳兼容。它集成了20K字節(jié)的Flash可編程只讀存儲(chǔ)器和256字節(jié)的RAM,將通用的8位CPU與Flash集成在單芯片上,具備如下標(biāo)準(zhǔn)特性:
- 20K字節(jié)的Flash
- 256字節(jié)的RAM
- 32條I/O線
- 三個(gè)16位定時(shí)器/計(jì)數(shù)器
- 六向量、兩級(jí)中斷架構(gòu)
- 全雙工串行端口
- 片上振蕩器和時(shí)鐘電路
二、關(guān)鍵特性
2.1 存儲(chǔ)器特性
- Flash存儲(chǔ)器:擁有20K字節(jié)的可重編程Flash存儲(chǔ)器,擦寫(xiě)壽命長(zhǎng)達(dá)1000次,能滿足大多數(shù)應(yīng)用的程序存儲(chǔ)需求。
- 內(nèi)部RAM:256 x 8位的內(nèi)部RAM,為數(shù)據(jù)存儲(chǔ)提供足夠空間。
2.2 電氣特性
- 工作電壓范圍:4V至5.5V,能適應(yīng)較寬的電源電壓波動(dòng),增強(qiáng)了產(chǎn)品的穩(wěn)定性和適用性。
- 工作頻率:完全靜態(tài)操作,運(yùn)行頻率范圍從0 Hz到33 MHz,可根據(jù)實(shí)際應(yīng)用需求靈活調(diào)整。
2.3 功能特性
- 三級(jí)程序存儲(chǔ)器鎖:為程序提供了一定的安全保護(hù)。
- 豐富的I/O資源:32條可編程I/O線,方便與各種外部設(shè)備連接。
- 中斷系統(tǒng):八個(gè)中斷源和六向量、兩級(jí)中斷架構(gòu),可及時(shí)響應(yīng)外部事件。
- 定時(shí)器/計(jì)數(shù)器:三個(gè)16位定時(shí)器/計(jì)數(shù)器,可用于定時(shí)、計(jì)數(shù)等多種功能。
- 串行通道:可編程串行通道,支持全雙工通信,便于與其他設(shè)備進(jìn)行數(shù)據(jù)傳輸。
2.4 低功耗模式
具備低功耗空閑和掉電模式,在空閑模式下,CPU停止工作但RAM、定時(shí)器/計(jì)數(shù)器、串行端口和中斷系統(tǒng)繼續(xù)運(yùn)行;掉電模式下,振蕩器停止,片內(nèi)RAM和特殊功能寄存器的值得以保留,直到下一次外部中斷或硬件復(fù)位。這種設(shè)計(jì)有助于降低系統(tǒng)功耗,延長(zhǎng)電池使用壽命。
2.5 硬件看門(mén)狗定時(shí)器
旨在應(yīng)對(duì)CPU可能出現(xiàn)的軟件故障,由一個(gè)13位計(jì)數(shù)器和看門(mén)狗定時(shí)器復(fù)位(WDTRST)特殊功能寄存器組成。用戶需按順序向WDTRST寄存器寫(xiě)入01EH和0E1H來(lái)啟用看門(mén)狗定時(shí)器,啟用后,它會(huì)在振蕩器運(yùn)行時(shí)每個(gè)機(jī)器周期遞增。當(dāng)計(jì)數(shù)器溢出時(shí),會(huì)在RST引腳輸出復(fù)位高脈沖,確保系統(tǒng)的穩(wěn)定性和可靠性。
三、引腳配置與功能
AT89C55WD有TQFP、PDIP和PLCC三種封裝形式,不同封裝的引腳排列有所不同,但各引腳功能基本一致,以下是主要引腳功能介紹:
- VCC和GND:分別為電源和地。
- 端口0(P0):8位開(kāi)漏雙向I/O端口,可作為輸出端口,每個(gè)引腳能吸收八個(gè)TTL輸入;當(dāng)寫(xiě)入1時(shí),引腳可作為高阻抗輸入。在訪問(wèn)外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),可配置為復(fù)用的低8位地址/數(shù)據(jù)總線。
- 端口1(P1):8位雙向I/O端口,帶有內(nèi)部上拉電阻。P1.0和P1.1可分別配置為定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入和觸發(fā)輸入。
- 端口2(P2):8位雙向I/O端口,帶有內(nèi)部上拉電阻。在訪問(wèn)外部程序存儲(chǔ)器和16位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí),輸出高8位地址字節(jié)。
- 端口3(P3):8位雙向I/O端口,帶有內(nèi)部上拉電阻。除了作為通用I/O口外,還具有多種特殊功能,如串行輸入輸出、外部中斷、定時(shí)器外部輸入等。
- RST:復(fù)位輸入,在振蕩器運(yùn)行時(shí),該引腳高電平持續(xù)兩個(gè)機(jī)器周期可復(fù)位設(shè)備。
- ALE/PROG:地址鎖存允許信號(hào),用于在訪問(wèn)外部存儲(chǔ)器時(shí)鎖存低字節(jié)地址。在Flash編程時(shí),作為編程脈沖輸入。
- PSEN:程序存儲(chǔ)允許信號(hào),用于讀取外部程序存儲(chǔ)器。
- EA/VPP:外部訪問(wèn)允許信號(hào),接GND時(shí),設(shè)備從外部程序存儲(chǔ)器取指令;接VCC時(shí),地址0000H至4FFFH的程序從內(nèi)部存儲(chǔ)器讀取,5000H至FFFFH的程序從外部存儲(chǔ)器讀取。在Flash編程時(shí),該引腳接收12V編程使能電壓。
- XTAL1和XTAL2:分別為反相振蕩器放大器的輸入和輸出,可配置為片上振蕩器。
四、特殊功能寄存器
4.1 定時(shí)器2寄存器
定時(shí)器2的控制和狀態(tài)位包含在T2CON和T2MOD寄存器中,寄存器對(duì)(RCAP2H,RCAP2L)在16位捕獲模式或16位自動(dòng)重載模式下作為定時(shí)器2的捕獲/重載寄存器。定時(shí)器2有捕獲、自動(dòng)重載(向上或向下計(jì)數(shù))和波特率發(fā)生器三種工作模式,可通過(guò)T2CON寄存器的相應(yīng)位進(jìn)行選擇。
4.2 中斷寄存器
中斷使能位位于IE寄存器中,可對(duì)六個(gè)中斷源分別進(jìn)行使能或禁用操作。IP寄存器可設(shè)置每個(gè)中斷源的兩個(gè)優(yōu)先級(jí)。
4.3 雙數(shù)據(jù)指針寄存器
為方便訪問(wèn)內(nèi)部和外部數(shù)據(jù)存儲(chǔ)器,提供了兩組16位數(shù)據(jù)指針寄存器DP0和DP1,通過(guò)SFR AUXR1中的DPS位進(jìn)行選擇。
4.4 掉電標(biāo)志
掉電標(biāo)志(POF)位于PCON SFR的第4位(PCON.4),上電時(shí)置為“1”,可通過(guò)軟件控制設(shè)置和復(fù)位,不受復(fù)位影響。
五、存儲(chǔ)器組織
5.1 程序存儲(chǔ)器
若EA引腳連接到GND,所有程序取指操作都指向外部存儲(chǔ)器;若EA連接到VCC,地址0000H至4FFFH的程序從內(nèi)部存儲(chǔ)器讀取,5000H至FFFFH的程序從外部存儲(chǔ)器讀取。
5.2 數(shù)據(jù)存儲(chǔ)器
AT89C55WD實(shí)現(xiàn)了256字節(jié)的片上RAM,其中高128字節(jié)與特殊功能寄存器占用并行地址空間。當(dāng)指令訪問(wèn)地址高于7FH的內(nèi)部位置時(shí),指令中使用的尋址模式?jīng)Q定CPU訪問(wèn)的是高128字節(jié)的RAM還是特殊功能寄存器空間。
六、定時(shí)器功能
6.1 定時(shí)器0和1
定時(shí)器0和1的工作方式與AT89C51和AT89C52中的定時(shí)器0和1相同。
6.2 定時(shí)器2
定時(shí)器2是一個(gè)16位定時(shí)器/計(jì)數(shù)器,可作為定時(shí)器或事件計(jì)數(shù)器,通過(guò)T2CON寄存器中的C/T2位選擇操作類型。具有捕獲、自動(dòng)重載(向上或向下計(jì)數(shù))和波特率發(fā)生器三種工作模式,具體模式由T2CON寄存器中的位決定。
- 捕獲模式:當(dāng)EXEN2 = 0時(shí),定時(shí)器2作為16位定時(shí)器或計(jì)數(shù)器,溢出時(shí)設(shè)置T2CON中的TF2位;當(dāng)EXEN2 = 1時(shí),除了上述功能外,外部輸入T2EX的1到0轉(zhuǎn)換還會(huì)將TH2和TL2的當(dāng)前值分別捕獲到RCAP2H和RCAP2L中,并設(shè)置EXF2位。
- 自動(dòng)重載模式:可通過(guò)T2MOD寄存器中的DCEN位設(shè)置為向上或向下計(jì)數(shù)。當(dāng)DCEN = 0時(shí),定時(shí)器2默認(rèn)向上計(jì)數(shù);當(dāng)DCEN = 1時(shí),T2EX引腳控制計(jì)數(shù)方向。
- 波特率發(fā)生器模式:通過(guò)設(shè)置T2CON中的TCLK和/或RCLK位,可將定時(shí)器2選為波特率發(fā)生器。在該模式下,TH2溢出會(huì)使定時(shí)器2寄存器重新加載RCAP2H和RCAP2L中的16位值。
七、編程與驗(yàn)證
7.1 編程算法
在對(duì)AT89C55WD進(jìn)行編程前,需根據(jù)Flash編程模式表和相關(guān)圖形設(shè)置地址、數(shù)據(jù)和控制信號(hào)。編程步驟如下:
- 在地址線上輸入所需的存儲(chǔ)位置。
- 在數(shù)據(jù)線上輸入相應(yīng)的數(shù)據(jù)字節(jié)。
- 激活正確的控制信號(hào)組合。
- 將EA/VPP升高到12V。
- 脈沖ALE/PROG一次,對(duì)Flash陣列或鎖定位進(jìn)行字節(jié)編程。字節(jié)寫(xiě)入周期是自定時(shí)的,通常不超過(guò)50 μs。重復(fù)上述步驟,直到完成整個(gè)陣列的編程或到達(dá)目標(biāo)文件的末尾。
7.2 芯片擦除序列
在重新編程之前,需要執(zhí)行芯片擦除操作,步驟如下:
- 將VCC升高到6.5V。
- 脈沖ALE/PROG一次(持續(xù)時(shí)間為200 - 500 ns)。
- 等待150 ms。
- 對(duì)VCC進(jìn)行下電和上電操作,使其達(dá)到6.5V。
- 脈沖ALE/PROG一次(持續(xù)時(shí)間為200 - 500 ns)。
- 等待150 ms。
- 對(duì)VCC進(jìn)行下電和上電操作,使其達(dá)到6.5V。
7.3 數(shù)據(jù)查詢與驗(yàn)證
AT89C55WD支持?jǐn)?shù)據(jù)查詢功能,在寫(xiě)入周期內(nèi),嘗試讀取最后寫(xiě)入的字節(jié)會(huì)在P0.7上得到寫(xiě)入數(shù)據(jù)的補(bǔ)碼。寫(xiě)入周期完成后,所有輸出上的數(shù)據(jù)有效,可開(kāi)始下一個(gè)周期。此外,還可通過(guò)RDY/BSY輸出信號(hào)監(jiān)控字節(jié)編程進(jìn)度,編程完成后P3.0會(huì)拉高表示READY。如果鎖定位LB1和LB2未編程,可通過(guò)地址和數(shù)據(jù)線讀取編程的代碼數(shù)據(jù)進(jìn)行驗(yàn)證,也可直接讀取鎖定位的狀態(tài)進(jìn)行驗(yàn)證。
八、電氣特性
8.1 直流特性
在TA = -40°C至85°C、VCC = 4.0V至5.5V的條件下,規(guī)定了輸入輸出電壓、電流、引腳電容等參數(shù)。例如,輸入低電壓VIL(除EA外)范圍為 -0.5V至0.2VCC - 0.1V,輸出低電壓VOL(端口1、2、3)在IOL = 1.6 mA時(shí)不超過(guò)0.45V等。
8.2 交流特性
在特定的負(fù)載電容條件下,規(guī)定了振蕩器頻率、ALE脈沖寬度、地址和數(shù)據(jù)的建立與保持時(shí)間等參數(shù)。例如,ALE脈沖寬度tLHLL在12 MHz振蕩器時(shí)為127 ns,在可變振蕩器時(shí)為2tCLCL - 40 ns。
九、應(yīng)用場(chǎng)景與注意事項(xiàng)
9.1 應(yīng)用場(chǎng)景
AT89C55WD憑借其豐富的功能和良好的性能,適用于各種嵌入式控制應(yīng)用,如工業(yè)自動(dòng)化、智能家居、儀器儀表等領(lǐng)域。
9.2 注意事項(xiàng)
- 在使用硬件看門(mén)狗定時(shí)器時(shí),要確保在規(guī)定的時(shí)間內(nèi)對(duì)其進(jìn)行復(fù)位操作,避免系統(tǒng)因看門(mén)狗溢出而復(fù)位。
- 在定時(shí)器2作為波特率發(fā)生器運(yùn)行時(shí),避免對(duì)TH2或TL2進(jìn)行讀寫(xiě)操作,以免影響計(jì)數(shù)準(zhǔn)確性。
- 在進(jìn)行Flash編程和驗(yàn)證時(shí),要嚴(yán)格按照編程算法和芯片擦除序列進(jìn)行操作,確保編程的正確性。
總之,AT89C55WD是一款功能強(qiáng)大、性能穩(wěn)定的微控制器,電子工程師在設(shè)計(jì)嵌入式系統(tǒng)時(shí),可根據(jù)具體需求充分發(fā)揮其優(yōu)勢(shì),實(shí)現(xiàn)高效、可靠的控制應(yīng)用。你在使用AT89C55WD的過(guò)程中遇到過(guò)哪些問(wèn)題呢?歡迎在評(píng)論區(qū)分享交流。
-
微控制器
+關(guān)注
關(guān)注
49文章
8584瀏覽量
165248 -
嵌入式系統(tǒng)
+關(guān)注
關(guān)注
41文章
3780瀏覽量
133805 -
AT89C55WD
+關(guān)注
關(guān)注
0文章
4瀏覽量
7856
發(fā)布評(píng)論請(qǐng)先 登錄
AT89C55WD微控制器:特性、功能與應(yīng)用詳解
評(píng)論