DZ214單片機(jī)控制制冷機(jī)來達(dá)到控制溫度
DZ214單片機(jī)控制制冷機(jī)來達(dá)到控制溫度,DZ214,單片機(jī),控制,制冷機(jī),達(dá)到,溫度
具有4K字節(jié)的8位微型控制器的在系統(tǒng)可編程序的廣泛應(yīng)用。AT89S51
產(chǎn)品特征
與MCS-51. 產(chǎn)品兼容
在系統(tǒng)可編程序的(ISP)中4K的閃存字節(jié)
-持續(xù)時(shí)間: 1000 個(gè)寫盤/清除周期
4.0V 到5.5V的電壓運(yùn)行范圍
全頻率范圍的靜態(tài)操作: 0 赫茲到33 兆赫
三級程序記憶解鎖系統(tǒng)
128 x 8位的隨機(jī)存儲(chǔ)器
32 條可編程序I/O線
二部16 位定時(shí)器/記時(shí)器
六部電腦中斷信號設(shè)置來源
復(fù)式UART 連續(xù)頻道
低功率機(jī)器空轉(zhuǎn)功率和節(jié)能模式
中斷節(jié)能的補(bǔ)救方式
監(jiān)察定時(shí)器
雙重?cái)?shù)據(jù)指向
開關(guān)標(biāo)記
快速編程時(shí)間
靈活I(lǐng)SP的 編程(字節(jié)和頁方式)
性能描述
AT89S51 是一臺(tái)低功率, 高性能具有4K字節(jié)的在系統(tǒng)可編程序閃存的8位CMOS 微型控制器。設(shè)備制作使用的是Atmel 的高密度固定存儲(chǔ)器技術(shù)是和與工業(yè)標(biāo)準(zhǔn)的80C51 指令組和pinout插腳引線(輸出管角) 兼容完成的。芯片允許在系統(tǒng)內(nèi)重新編輯程序記憶或常規(guī)固定存儲(chǔ)程序。由于具有結(jié)合多種功能的8位字節(jié)的中央處理器和一塊在系統(tǒng)內(nèi)可編程序整體芯片, Atmel AT89S51是一臺(tái)可以對許多嵌入控制器提供一種高靈活和有效性解答的強(qiáng)有力的微型控制器。AT89S51 提供以下標(biāo)準(zhǔn)性能: 4K瞬間字節(jié), 128 字節(jié)的內(nèi)存, 32 條I/O 線、監(jiān)察定時(shí)器、二重?cái)?shù)據(jù)指向、二部16 位的定時(shí)器/記時(shí)器、一個(gè)具有五向量元的 兩層中斷結(jié)構(gòu)、一個(gè)全向連續(xù)端口、芯片擺動(dòng)器, 和可控速時(shí)鐘電路。另外, AT89S51被設(shè)計(jì)以靜態(tài)邏輯來對零頻率操作并支持二個(gè)可選擇的軟件作為存儲(chǔ)模式。當(dāng)內(nèi)存、定時(shí)器/記時(shí)器、連續(xù)端口和中斷系統(tǒng)同時(shí)作用時(shí),低電平的機(jī)器空轉(zhuǎn)模式將會(huì)使中央處理器停止工作。節(jié)能模式用來保留內(nèi)存,但使擺動(dòng)器停止工作, 使所有其它芯片失去作用,直到下次外部中斷到來或硬件被重新設(shè)置.
指針描述
VCC 電源電壓。
GND 地。
端口0 端口0 是一個(gè)開放式的8位雙向I/O 端口。作為輸出端口, 各個(gè)指針可接入8位TTL 輸入。當(dāng)在0端口輸入1S, 指針可能被作為高阻抗輸入。端口0 也可接收外在程序和數(shù)據(jù)記憶期間,被配置多元化的低價(jià)位的地址、數(shù)據(jù)總線。在這個(gè)模式下, P0 有內(nèi)部上升程序。端口0在瞬間可編程期間接收代碼字同時(shí)可以在程序核實(shí)期間輸出代碼字節(jié)。在程序核實(shí)期間必需是外部上升沿。
端口1 端口1 是一個(gè)帶有內(nèi)部上拉的8位雙向I/O 端口。端口1 輸出緩沖區(qū)能接收和發(fā)出四位TTL 電平。當(dāng)1端口輸入為1S時(shí), 他們由內(nèi)部上拉系統(tǒng)將電位變?yōu)楦唠娖讲⒖梢宰鳛檩斎胧褂?。作為輸? 由于內(nèi)部含有上拉系統(tǒng),外在的被拉低端口1將接收現(xiàn)存指針(IIL)。端口1在瞬間編程和運(yùn)行期間接受低位地址字節(jié)。
端口2 端口2 是一個(gè)具有內(nèi)部上拉系統(tǒng)的8位字節(jié)的雙向I/O 端口。端口2 輸出緩沖區(qū)能接收和發(fā)出四位TTL 電平。當(dāng)2端口輸入為1S時(shí), 他們由內(nèi)部上拉系統(tǒng)將電位變?yōu)楦唠娖讲⒖梢宰鳛檩斎胧褂?。作為輸? 由于內(nèi)部含有上拉系統(tǒng),外在的被拉低端口2將接收現(xiàn)存指針(IIL)。端口2在從外在程序存儲(chǔ)器讀取數(shù)據(jù)事和向外部數(shù)據(jù)存儲(chǔ)器發(fā)送數(shù)據(jù)時(shí)將發(fā)出高位地址字節(jié),使用占16 位地址的(MOVX @ DPTR)。在這種應(yīng)用期間,當(dāng)發(fā)出1s時(shí),端口2將使用內(nèi)部強(qiáng)上拉系統(tǒng). 在對外數(shù)據(jù)存儲(chǔ)器發(fā)送期間使用占8位地址的 (MOVX @ RI), 端口2發(fā)出P2 特別作用記數(shù)器的內(nèi)容。端口2在瞬間編程和運(yùn)行期間接受高位地址位和一些控制信號。
端口3 端口3 是一個(gè)具有內(nèi)部上拉系統(tǒng)的8位雙向I/O 端口。端口3輸出緩沖區(qū)能接收和發(fā)出四位TTL 電平。當(dāng)3端口輸入為1S時(shí), 他們由內(nèi)部上拉系統(tǒng)將電位變?yōu)楦唠娖讲⒖梢宰鳛檩斎胧褂?。作為輸? 由于內(nèi)部含有上拉系統(tǒng),外在的被拉低端口3將接收現(xiàn)存指針(IIL)。端口3在瞬間編程和運(yùn)行期間接受一些控制信號。端口3 被顯示出來并且承擔(dān)運(yùn)行AT89S51 多種特殊性能的作用。
如下表所述。
端口指針的選擇功能
P1.5 MOSI (在系統(tǒng)編程中使用)
P1.6 MISO (在系統(tǒng)編程中使用)
P1.7 SCK (在系統(tǒng)編程中使用)
RST 重新設(shè)置輸入。在振蕩器運(yùn)行過程中,當(dāng)RST端接收到兩個(gè)機(jī)器周期的高電平時(shí),設(shè)備被重新設(shè)置。在監(jiān)察時(shí)期以后,這個(gè) 端口將驅(qū)動(dòng)98個(gè)震蕩周期的高電平。DISRTO 位在SFR AUXR (地址8EH)能夠禁止功能部件。在位缺省狀態(tài)下,RESET 端高電平具有使能端的功能。。
ALE/PROG 地址鎖存使能端(ALE)在向外部存儲(chǔ)器輸出數(shù)據(jù)時(shí),此端是一個(gè)用于鎖存低地址字節(jié)的輸出脈沖端。在瞬間編程期間,此端也是程序脈沖輸入端(PROG)。在正常運(yùn)行時(shí), ALE發(fā)射出以1/6 振蕩器頻率的恒定速率, 或被用于記錄外部時(shí)間或計(jì)時(shí)目的。值得注意的是, ALE1/6 振蕩器頻率在對外數(shù)據(jù)記憶的輸入期間以脈沖的形式輸入。如果需要, ALE操作可能由于設(shè)置0 SFR 和地點(diǎn)8EH而失去作用 。在這種位設(shè)置下, ALE只在使用MOVX 或MOVC語句是有效的。否則, 端口幾乎不被上拉。如果微型控制器是在外部施行方式下設(shè)置的,ALE將失去作用。
PSEN 程序儲(chǔ)存使能端(PSEN)對外部程序存儲(chǔ)器來說是只讀選通脈沖信號。當(dāng)AT89S51執(zhí)行來自外部程序存儲(chǔ)器的代碼時(shí),除在數(shù)據(jù)記憶輸入期間兩個(gè)的PSEN被忽略外,PSEN在各個(gè)機(jī)器周期被激活兩次。\
EA/VPP 外部選通使能端。EA 必須被限制在GND中,目的是為了使設(shè)備從外在程序存儲(chǔ)單元中取得代碼,代碼是從0000H 直到FFFFH 。值得注意的是, 如果1位被編程鎖住, EA將在系統(tǒng)重新設(shè)置時(shí)被內(nèi)部系統(tǒng)鎖住。對于每部程序執(zhí)行時(shí),EA 將被束縛到VCC。此管腳在瞬間編程期間,接受12 伏特使能電壓(VPP)。
XTAL1 輸入振蕩器放大器轉(zhuǎn)化信號和輸入內(nèi)部計(jì)時(shí)運(yùn)行電路。
XTAL2輸出振蕩器放大器轉(zhuǎn)化的信號
產(chǎn)品特性記錄
在芯片存儲(chǔ)器圖紙中被稱做產(chǎn)品特性記錄的地方,在表1陳列出來 。注意不是所有地址被占用, 并且空地址是不可以在芯片中運(yùn)行的。讀取這些數(shù)據(jù)時(shí)通常將返回隨機(jī)數(shù)據(jù),寫入時(shí)將有一個(gè)部確定的作用。用戶軟件不應(yīng)該1S輸入這些未入冊的地址,因?yàn)樗麄円苍S在未來產(chǎn)品中使用這些新特征。在那種情況下,重新設(shè)置端或新位的未被激活的值將總是0 。
中斷記數(shù)器:在IE 記數(shù)器中允許單獨(dú)中斷。在被設(shè)置為每個(gè)五個(gè)中斷來源的IP 記數(shù)器中有兩中情況會(huì)被優(yōu)先中斷。
雙重?cái)?shù)據(jù)端記數(shù)器: 促進(jìn)內(nèi)部和外在數(shù)據(jù)存儲(chǔ)器有效, 雙列16 位數(shù)據(jù)端記數(shù)器被提供: DP0 在SFR的82H-83H 地址地點(diǎn) ,DP1 在84H-85H的地址點(diǎn) 。在SFR AUXR1中,當(dāng)DPS= 0 選擇DP0 并且DPC= 1 選擇DP1 。在訪問各自數(shù)據(jù)端記數(shù)器之前用戶應(yīng)該使用DPS位以達(dá)到目的。
開關(guān)標(biāo)記: 開關(guān)標(biāo)記(POF) 位于PCON SFR的第四位(PCON.4)。在運(yùn)行期間POF 被設(shè)置到"1"。在軟件控制之下它可以被運(yùn)行和停止并且不受重新設(shè)置的影響。
記憶系統(tǒng)
MCS-51 設(shè)備為程序和數(shù)據(jù)記憶設(shè)有單獨(dú)分開的地址空間。高達(dá)64K 字節(jié)的程序和數(shù)據(jù)記憶可以被賦予地址。
程序記憶 如果EA 管腳被連接到GND, 可以直接從外部寄存器中讀取所有程序。在AT89S51, 如果EA 被連接到VCC。
數(shù)據(jù)記憶AT89S51芯片擁有128 個(gè)字節(jié)的內(nèi)存。這128 個(gè)字節(jié)可以采用直接和間接尋址模式。大量的操作是間接尋址, 因此128 個(gè)字節(jié)的數(shù)據(jù)存儲(chǔ)器可以使用堆棧空間。
監(jiān)察定時(shí)器(能夠一次性重新設(shè)置) WDT作為在CPU服從對軟件輸入的情況下補(bǔ)救方法。WDT 包括一個(gè)14 位計(jì)數(shù)器和監(jiān)察定時(shí)器重新設(shè)置(WDTRST) SFR 。WDT 被默認(rèn)為功能失效重新設(shè)置中退出。為了使WDT工作, 用戶必須在 WDTRST 寄存器的隊(duì)列中寫入寫01EH 和0E1H(SFR 的地址是0A6H) 。當(dāng)WDT能夠運(yùn)行,并且振蕩器運(yùn)行時(shí),它將增加每個(gè)機(jī)器周期。WDT 暫停期間依靠外在鐘頻。除了通過重新設(shè)置,沒有方式能使WDT 禁用 (或硬件重新設(shè)置或WDT 溢出被重新設(shè)置) 。當(dāng)WDT 溢出, 它將在RST 管腳被重新設(shè)置為高脈沖。
使用WDT 為了使WDT工作, 用戶必須在 WDTRST 寄存器的隊(duì)列中寫入寫01EH 和0E1H(SFR 的地址是0A6H) 。當(dāng)WDT 能夠使用, 用戶需要 對WDTRST01EH 到0E1H 輸入避免WDT 溢出。當(dāng)它到達(dá)16383 (3FFFH),將有14位的溢出。 并且這將使設(shè)置重新設(shè)備。當(dāng)WDT 能夠使用是,當(dāng)振蕩器運(yùn)行時(shí),它將增加每個(gè)機(jī)器周期。這意味著用戶必須重新設(shè)置WDT 至少每16383 個(gè)機(jī)器一個(gè)周期。重新設(shè)置WDT 用戶必須給WDTRST 輸入01EH 和0E1H 。WDTRST 是只讀計(jì)數(shù)器。WDT無法讀或被寫。當(dāng)WDT 溢出, 它將在RST 管腳處重新設(shè)置脈沖。重新設(shè)置脈沖期間是98xTOSC, TOSC=1/FOSC 。最佳使用WDT的途徑,在需時(shí)之內(nèi)防止WDT 重新設(shè)置代碼的那些部分,它階段性地將被執(zhí)行。
WDT 在能源下降和空轉(zhuǎn)情況下
在低能的模式下,在振蕩器停止工作, 這意味WDT 也會(huì)停止。當(dāng)在低能模式下, 用戶不需要維修WDT。有兩種退出低能模式的方法: 當(dāng)硬件被重新設(shè)置時(shí),退出低能模式, WDT 則需要維修,就象AT89S51重新設(shè)置時(shí)一樣。中斷退出低能模式與此有著顯著的不同。中斷的進(jìn)行使振動(dòng)器有足夠的時(shí)間保持穩(wěn)定。當(dāng)多次中斷發(fā)生時(shí), 該功能需要維修。為了防止WDT 被重新設(shè)置, WDT 不運(yùn)行直到中斷端變?yōu)楦唠娖健?建議是, 在WDT 退出低能模式時(shí)應(yīng)被重新設(shè)置。為了保證WDT 在退出低能模式時(shí)不溢出,在進(jìn)入低能模式之前最好重新啟動(dòng)WDT 。在進(jìn)入空轉(zhuǎn)的模式之前, 在SFR AUXR中的 WDIDLE 位用來確定是否能夠發(fā)生使WDT 繼續(xù)計(jì)數(shù)。WDT 繼續(xù)計(jì)數(shù)在機(jī)器空轉(zhuǎn)時(shí)(WDIDLE 位期間= 0)作為缺省狀態(tài),防止WDT 重新設(shè)置AT89S51 當(dāng)在機(jī)器空轉(zhuǎn)的模式下, 用戶應(yīng)該總設(shè)定時(shí)間將退出空轉(zhuǎn), 定期維修WDT, 和階段性地再進(jìn)入空轉(zhuǎn)模式。
在WDIDLE 位使能的情況下, WDT 將在空轉(zhuǎn)模式下停止計(jì)數(shù)并恢復(fù)空轉(zhuǎn)計(jì)數(shù)。
UART UART 在AT89S51 中同UART在AT89C51有一樣的操作模式 。想獲得關(guān)于UART 操作的詳細(xì)信息, 參見ATMEL 網(wǎng)站(http://www.atmel.com) 。從主頁, 選擇“產(chǎn)品”, 然后“8051微型控制器”, 然后“ 產(chǎn)品概要”在AT89S51中。定時(shí)器0 和定時(shí)器1 的操作方式和在AT89C51中的定時(shí)器0 和定時(shí)器1 工作方式一樣。想獲得關(guān)于操作的詳細(xì)信息, 參見ATMEL 網(wǎng)站(http://www.atmel.com) 。從主頁,選擇“產(chǎn)品” 然后“8051微型控制器”, 然后“產(chǎn)品概要”。中斷信號 AT89S51一共有五個(gè)中斷向量: 二個(gè)外部中斷(INT0 和INT1), 二個(gè)定時(shí)器中斷(定時(shí)器0 和1), 和連續(xù)端口中斷。這些中斷全部被顯示在表1 。這些中斷來源每一個(gè)都是通過設(shè)置 或清除而使他們 單獨(dú)起作用,在特殊的計(jì)數(shù)器IE上 。IE 也擁有一個(gè)整體功能失效位, EA, 同樣可以立即使所有信號中斷。注意表4 表示, 數(shù)位位IE.6 是無效位 。在AT89S51中, 數(shù)位位IE.5 也是無效位。用戶軟件不應(yīng)該在這些數(shù)位位置輸入1s, 因?yàn)樗麄円苍S在未來AT89 產(chǎn)品中使用。定時(shí)器0 和定時(shí)器1標(biāo)記, TF0 和TF1, 全被設(shè)置在定時(shí)器溢出周期的S5P2 上。在下個(gè)電路周期中,它們的作用將被體現(xiàn)出來。
收藏