![智能儀器課程設(shè)計(jì)[1]01_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/29/3be2aa1c-ffe2-4928-8814-0951d9e0aca1/3be2aa1c-ffe2-4928-8814-0951d9e0aca11.gif)
![智能儀器課程設(shè)計(jì)[1]01_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/29/3be2aa1c-ffe2-4928-8814-0951d9e0aca1/3be2aa1c-ffe2-4928-8814-0951d9e0aca12.gif)
![智能儀器課程設(shè)計(jì)[1]01_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/29/3be2aa1c-ffe2-4928-8814-0951d9e0aca1/3be2aa1c-ffe2-4928-8814-0951d9e0aca13.gif)
![智能儀器課程設(shè)計(jì)[1]01_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/29/3be2aa1c-ffe2-4928-8814-0951d9e0aca1/3be2aa1c-ffe2-4928-8814-0951d9e0aca14.gif)
![智能儀器課程設(shè)計(jì)[1]01_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/29/3be2aa1c-ffe2-4928-8814-0951d9e0aca1/3be2aa1c-ffe2-4928-8814-0951d9e0aca15.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、目 錄一 引言 (1二 智能溫度計(jì)的基本組成方框 (1三 系統(tǒng)硬件組成 (2(一 溫度傳感器 AD590及其應(yīng)用 (2(二 放大器 (3(三 A/D轉(zhuǎn)換器 MC1443 (3(四 LED 顯示器 (4(五 系統(tǒng)核心單片機(jī)部分閃電存儲(chǔ)器型器件 AT89C51(5(六 其它 (10四 智能溫度計(jì)的流程圖 (10五 系統(tǒng)主程序 (12六 總結(jié)和體會(huì) (22七 參考文獻(xiàn) (23智能溫度計(jì)設(shè)計(jì)摘要 本論文敘述了應(yīng)用單片機(jī) AT89C51構(gòu)成的智能溫度計(jì)主要的功能、硬件 的組成和軟件的設(shè)計(jì)。 該系統(tǒng)的功能是通過溫度傳感器對(duì)溫度進(jìn)行采集, 然后通 過 A/D轉(zhuǎn)換器 MC14433進(jìn)行模數(shù)轉(zhuǎn)換, 傳給單片機(jī)進(jìn)
2、行處理, 從而實(shí)現(xiàn)溫度的實(shí)時(shí) 顯示。整個(gè)系統(tǒng)結(jié)構(gòu)緊湊、簡(jiǎn)單可靠、操作靈活、功能強(qiáng)、性能價(jià)格比高,較好 地滿足了現(xiàn)代農(nóng)業(yè)生產(chǎn)和科研的需要。關(guān)鍵詞 單片機(jī) 溫度傳感器 A/D轉(zhuǎn)換器 實(shí)時(shí)顯示一、引言單片機(jī)自問世以來, 性能不斷提高和完善, 其資源又能滿足很多應(yīng)用場(chǎng)合的需要, 加之 單片機(jī)具有集成度高、功能強(qiáng)、速度快、體積小、功耗低、使用方便、價(jià)格低廉等特點(diǎn),因 此,在工業(yè)控制、智能儀器儀表、數(shù)據(jù)采集和處理、通信系統(tǒng)、高級(jí)計(jì)算器、家用電器等領(lǐng) 域的應(yīng)用日益廣泛, 并且正在逐步取代現(xiàn)有的多片微機(jī)應(yīng)用系統(tǒng)。 單片機(jī)的潛力越來越被人 們所重視。特別是當(dāng)前用 CMOS 工藝制成的各種單片機(jī),由于功耗低,使用
3、的溫度范圍大, 抗干擾能力強(qiáng)、 能滿足一些特殊要求的應(yīng)用場(chǎng)合, 更加擴(kuò)大了單片機(jī)的應(yīng)用范圍, 也進(jìn)一步 促使單片機(jī)性能的發(fā)展。而現(xiàn)在單片機(jī)在農(nóng)業(yè)上也有了很多的應(yīng)用。溫度是日常生活、工業(yè)、醫(yī)學(xué)、環(huán)境保護(hù)、化工、石油等領(lǐng)域最常遇到的一個(gè)物理量。 測(cè)量溫度的基本方法是使用溫度計(jì)直接讀取溫度。 最常見到的測(cè)量溫度的工具是各種各樣的 溫度計(jì),例如,水銀玻璃溫度計(jì),酒精溫度計(jì),熱電偶或熱電阻溫度計(jì)等。它們常常以刻度 的形式表示溫度的高低, 人們必須通過讀取刻度值的多少來測(cè)量溫度。 利用單片機(jī)和溫度傳 感器構(gòu)成的電子式智能溫度計(jì)就可以直接測(cè)量溫度, 得到溫度的數(shù)字值, 既簡(jiǎn)單方便, 又直 觀準(zhǔn)確。二、智能溫
4、度計(jì)的基本組成方框圖 1 1是智能溫度計(jì)的基本組成方框。主要由溫度傳感器,放大器, A/D轉(zhuǎn)換器,單 片機(jī)控制, LED 顯示器,電源等組成。溫度傳感器是把溫度轉(zhuǎn)換成電壓(或電流的器件, 溫度傳感器輸出電壓的大小隨溫度的高低變化而變化, 電壓值的變化范圍從幾個(gè)微伏到幾個(gè) 毫伏。 不同的溫度傳感器, 輸出電壓的范圍也差別很大。 放大器的主要功能是把微弱的溫度 電壓信號(hào)放大到(0 2伏或(0 5伏的范圍內(nèi),以便進(jìn)行 A/D轉(zhuǎn)換。 A/D轉(zhuǎn)換器把放 大后的模擬溫度電壓信號(hào)轉(zhuǎn)換成對(duì)應(yīng)的數(shù)字溫度電壓信號(hào)。單片機(jī) 8051是智能溫度計(jì)的控 制核心,一方面控制 A/D轉(zhuǎn)換器實(shí)現(xiàn)模擬信號(hào)到數(shù)字信號(hào)的轉(zhuǎn)換,另一
5、方面將采集到的數(shù) 字溫度電壓值,經(jīng)過計(jì)算處理,得到相應(yīng)的溫度值,送到 LED 顯示器以數(shù)字形式顯示測(cè)量 的溫度。 LED 顯示器用于顯示測(cè)量溫度的結(jié)果。圖 1 1 智能溫度計(jì)方框圖三、系統(tǒng)硬件組成 圖 1 2 測(cè)量攝氏(溫度的電路原理。假定 :溫度測(cè)量范圍:0 150。攝氏(溫度數(shù)字顯示: 000.0 或 112.8等,十進(jìn)制小數(shù)點(diǎn)后一位。(一 、溫度傳感器 AD590及其應(yīng)用AD590是美國(guó)模擬器件公司生產(chǎn)的單片集成兩端感溫電流源。它的主要特性如下: (1 流過器件電流的微安數(shù)等于器件所處環(huán)境溫度的熱力學(xué)溫度(開爾文度數(shù)。即 I T /T=1µA /K式中的 I T 為流過器件(A
6、D590的電流,單位 µA , T 為溫度,單位為 K 。(2 AD590的測(cè)溫范圍為 -55 -+150。(3 AD590的電源電壓范圍為 4V30V。電源電壓從 4V 到 6V 變化,電流 I T 變化 1µA ,相 當(dāng)于溫度變化 1K 。 AD590可以承受 44V 正相電壓和 20 V 反相電壓。因而器件反接也 不會(huì)損壞器件。 (4 輸出電阻為 710M 。(5 精度高。AD590在出廠以前已經(jīng)校對(duì),精度高。因?yàn)榱鬟^ AD590的電流于熱力學(xué)溫度成正比, 如兩個(gè)電阻之和為1K , 溫度變化 1°C , 那么輸出電壓 Vo 變化為1mV/K。 但由于 AD5
7、90 的增益有偏差,電阻也有誤差,調(diào)整的方法與對(duì) P -N 結(jié)溫度傳感器調(diào)整的方法相同。 即,把 AD590放于冰水混合物中,調(diào)整電位器,使 Vo =273.2mV 。或在室溫下,例如 25 條件下調(diào)整電位器使 V o =273.2+25=298.2(mV 。但這樣調(diào)整只可以保證 0或 25附 近有較高精度。圖中用電位器 R 1調(diào)零點(diǎn),用 R2調(diào)增益,方法如下:在 0o C 時(shí)調(diào)整 W1使輸出 Vo = 273.2mV 。 然后在 100時(shí)調(diào) W2使 V o =373.2mV 。 然后反復(fù)多次, 直至 0時(shí) V o =273.2mV , 100時(shí) Vo =373.2mV 為止。最后在室溫下進(jìn)行
8、校驗(yàn)。例如,若室溫為 25,那么 V o 應(yīng)為 298.2mV 。 0和 100環(huán)境的產(chǎn)生方法:冰水混合物是 0的環(huán)境,沸水為 100環(huán)境。 (二 、 放大器放大器由運(yùn)算放大器 A 組成,常用的芯片有:LF335, LF336, CA3140等,主要功能 是把模擬的溫度電壓信號(hào)放大到 A/D轉(zhuǎn)換器要求的輸入電壓范圍。 A/D轉(zhuǎn)換器 MC14433要 求,模擬輸入電壓的范圍為:0 2V 。 W3的作用是抵消溫度傳感器 AD590在攝氏 0時(shí) 產(chǎn)生的溫度電壓 Vo =273.2mV ,使放大器 A 的輸出電壓為 0.0V 。放大器 A 的放大倍數(shù)選擇 為 10,保證溫度在 0 150范圍內(nèi)變化,而
9、放大器的輸出電壓在 0 1。 50V 的范圍內(nèi)。電 位器 W2用于調(diào)整放大器的放大倍數(shù)。(三 、 A/D轉(zhuǎn)換器 MC14433A/D轉(zhuǎn)換器由雙積分型 3又 1/2位 A/D轉(zhuǎn)換器 MC14433來完成。 因?yàn)闇囟鹊淖兓哂袘T 性,變化緩慢, MC14433的轉(zhuǎn)換速度完全可以滿足溫度測(cè)量的要求。MC14433的方框圖和引腳如圖 3所示,它是單片 CMOSA/D轉(zhuǎn)換器 , 它采用雙積分原理實(shí) 現(xiàn) A/D轉(zhuǎn)換。 因?yàn)檗D(zhuǎn)換后的數(shù)字量有三位十進(jìn)制數(shù), 而最高位只能輸出0或1, 故稱為3又 1/2位 A/D轉(zhuǎn)換器.該電路需要外接積分電阻R和電容C,外接失調(diào)補(bǔ)償電容 C 。該電路具 有自動(dòng)調(diào)零、自動(dòng)極性轉(zhuǎn)換
10、功能,它精度高、功耗低、使用方便并能與微機(jī)或其他數(shù)字電路 兼容。它廣泛用于數(shù)字面板表、數(shù)字萬(wàn)用表、數(shù)字量具和遙控遙測(cè)系統(tǒng)。 圖 1 3 MC14433的方框圖和引腳引腳引線功能如下:G 被測(cè)電壓 VX 和參考電壓 VR 的模擬接地端VR 外接參考電壓端(+2V或 +200MvVX 被測(cè)電壓輸入端R1, R1/C1, C1 外接積分電阻 R1和積分電容 C1元件端。外接元件典型值:當(dāng)量程為 2V 時(shí), C = 0.1F,R = 470k;當(dāng)量程為 200mV 時(shí), C1 = 0.1F, R1 = 27kC01,C02 外接失調(diào)電容 C0端。 C0典型值為 0.1FDU 數(shù)據(jù)顯示控制端。當(dāng) DU
11、和 EOC (引腳 14連接時(shí),每次 A/D轉(zhuǎn)換都輸出CLKI , CLKO 時(shí)鐘振蕩器外接電阻 RC 端, RC的典型值為 470k ,時(shí)鐘頻率隨 RC 增加 而下降VEE 模擬負(fù)輸入端。典型值為 -5VVSS 數(shù)字地, 除 CLKO 端外所有輸出端的低電平基準(zhǔn)。 當(dāng) VSS 與 VAG 相連 (即數(shù)字地和 模擬地相連時(shí),輸出電壓幅度為 VAG VDD (0V +5V ;當(dāng) VSS 與 VEE (-5V 相連,輸出 電壓幅度為 VEE VDD (-5V +10V 。實(shí)際應(yīng)用時(shí)一般是 VSS 與 VAG 相連EOC 轉(zhuǎn)換結(jié)束控制端(輸出 。每當(dāng)一個(gè) A/D轉(zhuǎn)換周期結(jié)束, EOC 端輸出一個(gè)寬度
12、為時(shí) 鐘周期 1/2寬度的正脈沖OR 過量程標(biāo)志輸出端。平時(shí)為高電平。當(dāng)|VX | VR 時(shí)(被測(cè)電壓輸入絕對(duì)值大 于參考電壓 , OR 端輸出低電平DS1DS4 多路選通脈沖輸出端, 對(duì)應(yīng) DS1千位, 對(duì)應(yīng) DS4個(gè)位。 每個(gè)選通脈沖寬度為 18個(gè)時(shí)鐘脈沖,兩個(gè)相鄰脈沖之間間隔為 2個(gè)時(shí)鐘周期Q0Q3 BCD 碼數(shù)據(jù)輸出線。其中為 Q0最低位, Q3為最高位。當(dāng) DS2 、 DS3和 DS4選 通期間, Q0Q3除了表示千位的 0或 1外,還表示了轉(zhuǎn)換值的正負(fù)極性和欠量程還是過量 程VDD 正電源端。典型值為 +5VMC14433的外部連接電路盡管 MC14433外部連接元件很少, 為使其
13、工作于最佳狀態(tài), 也必須注意外部電路的連接 和外接元件的選擇,其實(shí)際連接電路如圖 11 18所示。為了提高電源抗干擾的能力,正、 負(fù)電源分別通過去耦電容 0.047F 、 0.02F 與 VSS(VAG相連。MC14433和單片機(jī) 8051采用查詢方式連接。 MC14433的多路選通脈沖輸出端和 BCD 碼數(shù) 據(jù)輸出端 Q0-Q7和單片機(jī)的 P0口連接。 EOC 端和 8051的 /INT0連接,單片機(jī) 8051通過不 斷查詢 /INT0端的狀態(tài), 了解 MC14433的每次 A/D轉(zhuǎn)換是否結(jié)束, 在 A/D轉(zhuǎn)換結(jié)束后, 經(jīng) P0口讀取 A/D轉(zhuǎn)換的結(jié)果, 存入 CPU 內(nèi)部的輸入數(shù)據(jù)緩沖區(qū)。
14、 MC1403是高精度的基準(zhǔn)源 (2.5V , 它的輸出經(jīng) 10K 可調(diào)電位器,調(diào)整到 2.0V 提供 MC14433的基準(zhǔn)電壓。(四 、 LED 顯示器LED顯示器由 4位共陰極 LED 顯示器組成, 采用動(dòng)態(tài)分時(shí)掃描方式。 采用 4位共陰極 LED 示器使為了保證溫度超過 100時(shí), 測(cè)量結(jié)果仍能保持在小數(shù)點(diǎn)后一位顯示, 例如:110.4, 提高測(cè)量顯示精度。共陰極 LED 顯示器的陽(yáng)極和單片機(jī) CPU 的 P1口連接,顯示段碼由 CPU 通過 P1口傳送 到 LED 顯示器的陽(yáng)極。位掃描碼由單片機(jī) 8051的 P2口低四位輸出,經(jīng)同相驅(qū)動(dòng)器傳送到 LED 顯示器的陰極, 選通 LED 顯
15、示器的數(shù)位, P2.3, P2.2,P2.1,P2.0輸出電平為 0111 時(shí), 選通左邊的第一位數(shù)字, P2.3, P2.2,P2.1,P2.0輸出電平為 1011時(shí),選通左邊的第二 位數(shù)字, P2.3, P2.2,P2.1,P2.0輸出電平為 1101時(shí),選通左邊的第三位數(shù)字, P2.3, P2.2,P2.1,P2.0輸出電平為 1110時(shí),選通左邊的第四位數(shù)字。(五 、系統(tǒng)核心單片機(jī)部分 -閃電存儲(chǔ)器型器件 AT89C51單片機(jī) AT89C51有內(nèi)部 RAM , 可以作為各種數(shù)據(jù)區(qū)使用, 內(nèi)部閃電存儲(chǔ)器存放智能溫 度計(jì)的控制程序。它的主要功能是控制 MC14433,實(shí)現(xiàn)溫度的數(shù)字值采集,
16、完成溫度的數(shù) 字采集值到對(duì)應(yīng)數(shù)字溫度的轉(zhuǎn)換計(jì)算, 并把計(jì)算的數(shù)字溫度轉(zhuǎn)換相應(yīng)的顯示段碼, 控制 LED 顯示器以動(dòng)態(tài)掃描方式進(jìn)行溫度顯示。AT89系列單片機(jī)是 ATMEL 公司生產(chǎn)的。這是當(dāng)前最新的一種電擦寫 8位單片機(jī),與 MCS-51系列完全兼容, 有超強(qiáng)的加密功能, 可完全替代 87C51/52和 8751/52。 它物美價(jià)廉, 深受用戶歡迎。與 87C51相比, AT89系列的優(yōu)越性在于,其片內(nèi)閃電存儲(chǔ)器的編程與擦除完全用電實(shí) 現(xiàn);數(shù)據(jù)不易揮發(fā),可保存 10年;編程 /擦除速度快,全 4K 字節(jié)編程只需時(shí) 3s ,擦除時(shí)間 約用 10ms ; AT89系列了實(shí)現(xiàn)在線編程;也可借助電話線
17、進(jìn)行遠(yuǎn)距離編程。AT89C51是一種低功耗、高性能內(nèi)含 4K 字節(jié)閃電存儲(chǔ)器(Flash Memory的 8位 CMOS 微控制器。這種器件系以 ATMEL 高密度不揮發(fā)存儲(chǔ)技術(shù)制造,與工業(yè)標(biāo)準(zhǔn) MCS-51指令系統(tǒng) 和引腳完全兼容。 片內(nèi)閃電存儲(chǔ)器的程序代碼或數(shù)據(jù)可在線寫入, 亦可通過常規(guī)的編程器編 程。例如, MP-100這樣一種經(jīng)濟(jì)型的編程器,它支持通用 EPROM 等各種存儲(chǔ)器、 PAL 、 GAL 以及 INTEL 、 ATMEL 和 PHILIPS 等各公司的全系列 51單片機(jī)的編程。 ME5103和 ME5105仿真 器支持 AT89系列所有器件的調(diào)試、仿真和編程。AT89C51
18、具有下列主要性能:. 4KB可改編程序 Flash 存儲(chǔ)器(可經(jīng)受 1, 000次的寫入 /擦除周期. 全靜態(tài)工作:0Hz 24MHz. 三級(jí)程序存儲(chǔ)器保密. 128 X 8字節(jié)內(nèi)部 RAM. 32條可編程 I/O線. 2個(gè) 16位定時(shí)器 /計(jì)數(shù)器. 6個(gè)中斷源. 可編程串行通道. 片內(nèi)時(shí)鐘振蕩器另外, AT89C51是用靜態(tài)邏輯來設(shè)計(jì)的,其工作頻率可下降到 0 Hz ,并提供兩種可用軟 件來選擇的省電方式空閑方式(Idle Mode和掉電方式(Power Down Mode 。在空 閑方式中, CPU 停止工作,而 RAM 、定時(shí)器 /計(jì)數(shù)器、串行口和中斷系統(tǒng)都繼續(xù)工作。在掉電 方式中,片內(nèi)
19、振蕩器停止工作,由于時(shí)鐘被“凍結(jié)” ,使一切功能都暫停,只保存片內(nèi) RAM中的內(nèi)容,直到下一次硬件復(fù)位為止。(1主電源引腳(a.Vcc 電源端(b.GND 接地端(2外接晶體引腳 XTAL1和 XTAL2(a.XTAL1 接外部晶體的一個(gè)引腳。 在單片機(jī)內(nèi)部, 它是構(gòu)成片內(nèi)振蕩器的反相放大 器的輸入端。 當(dāng)采用外部振蕩器時(shí), 該引腳接收振蕩器的信號(hào), 既把此信號(hào)直接接到內(nèi)部時(shí) 鐘發(fā)生器的輸入端。(b.XTAL2 接外部晶體的另一個(gè)引腳。 在單片機(jī)內(nèi)部, 它是上述振蕩器的反相放大器的 輸出端。采用外部振蕩器時(shí),此引腳應(yīng)懸浮不連接。(3.控制或與其它電源復(fù)用引腳 RST 、 ALE/PROG、 /
20、PSEN和 /EA/Vpp(a.RES 復(fù)位輸入端。 當(dāng)振蕩器運(yùn)行時(shí),在該引腳上出現(xiàn)兩個(gè)機(jī)器周期的高電平將 使單片機(jī)復(fù)位。(b.ALE/PROG 當(dāng)訪問外部存儲(chǔ)器時(shí), ALE (地址鎖存允許 的輸出用于鎖存地址的低 位字節(jié)。即使不訪問外部存儲(chǔ)器, ALE 端仍以不變的頻率(此頻率為振蕩器頻率的 1/6周 期性地出現(xiàn)正脈沖信號(hào)。因此,它可用作對(duì)外輸出的時(shí)鐘,或用于定時(shí)目的。然而要注意的 是:每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè) ALE 脈沖。在對(duì) Flash 存儲(chǔ)器編程期間,該引 腳還用于輸入編程脈沖(/PROG 。如果需要的話,通過對(duì)專用寄存器(SFR 區(qū)中 8EH 單元的 D0位置數(shù),可禁止
21、 ALE 操 作。該位置數(shù)后,只有在執(zhí)行一條 MOVX 或 MOVC 指令期間, ALE 才會(huì)被激活。另外,該引腳 會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),該設(shè)定禁止 ALE 位無效。(c. /PSEN 程序存儲(chǔ)允許(/PSEN輸出是外部程序存儲(chǔ)器的讀選通信號(hào)。當(dāng) AT89C51/LV51由外部程序存儲(chǔ)器取指令(或常數(shù)時(shí),每個(gè)機(jī)器周期兩次 /PSEN有效(既輸 出 2個(gè)脈沖 。但在此期間內(nèi),每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的 /PSEN信號(hào)將不 出現(xiàn)。(d./EA/Vpp 外部訪問允許端。要使 CPU 只訪問外部程序存儲(chǔ)器(地址為 0000H FFFFH ,則 /EA端必須保持低電平(接到 G
22、ND 端 。然而要注意的是,如果保密位 LB1被編 程,復(fù)位時(shí)在內(nèi)部會(huì)鎖存 /EA端的狀態(tài)。當(dāng) /EA端保持高電平(接 Vcc 端時(shí), CPU 則執(zhí)行內(nèi)部程序存儲(chǔ)器中的程序。在 Flash 存儲(chǔ)器編程期間,該引腳也用于施加 12V 的編程允許電源 Vpp (如果選用 12V 編程 。(4輸入 /輸出引腳 P0.0 P0.7、 P10. P1.7、 P2.0 P2.7 和 P3.0P3.7(a.P0端口 (P0.0 P0.7 P0是一個(gè) 8位漏極開路型雙向 I/O端口。 作為輸出口用 時(shí), 每位能以吸收電流的方式驅(qū)動(dòng) 8個(gè) TTL 輸入, 對(duì)端口寫 1時(shí), 又可作高阻抗輸入端用。 在訪問外部程序
23、和數(shù)據(jù)存儲(chǔ)器時(shí),它是分時(shí)多路轉(zhuǎn)換的地址(低 8位 /數(shù)據(jù)總線,在 訪問期間激活了內(nèi)部的上拉電阻。在 Flash 編程時(shí), P0端口接收指令字節(jié); 而在驗(yàn)證程序時(shí), 則輸出指令字節(jié)。 驗(yàn)證時(shí), 要求外接上拉電阻。(b.P1端口(P1.0 P1.7 P1是一個(gè)帶有內(nèi)部上拉電阻的 8位雙向 I/O端口。 P1的輸出緩沖器可驅(qū)動(dòng)(吸收或輸出電流方式 4個(gè) TTL 輸入。對(duì)端口寫 1時(shí),通過內(nèi)部的 上拉電阻把端口拉到高電位,這時(shí)可用作輸入口。作輸入口時(shí),因?yàn)橛袃?nèi)部的上拉電阻, 那些被外部信號(hào)拉低的引腳會(huì)輸出一個(gè)電流。在對(duì) Flash 編程和程序驗(yàn)證時(shí), P1接收低 8位地址。(c.P2端口 (P2.0P
24、2.7 P2是一個(gè)帶有內(nèi)部上拉電阻的 8位雙向 I/O端口。 P2的輸出緩沖器可驅(qū)動(dòng)(吸收或輸出電流方式 4個(gè) TTL 輸入。對(duì)端口寫 1時(shí),通過內(nèi)部的 上拉電阻把端口拉到高電位,這時(shí)可用作輸入口。 P2作輸入口使用時(shí),因?yàn)橛袃?nèi)部的上拉 電阻,那些被外部信號(hào)拉低的引腳會(huì)輸出一個(gè)電流。在訪問外部程序存儲(chǔ)器和 16位地址的外部數(shù)據(jù)存儲(chǔ)器 (如執(zhí)行 MOVX DPIR指令 時(shí), P2送出高 8位地址。在訪問 8位地址的外部數(shù)據(jù)存儲(chǔ)器(如執(zhí)行 MOVX RI指令時(shí), P2口引腳上的內(nèi)容(就是專用寄存器(SFR 區(qū)中 P2寄存器的內(nèi)容 ,在整個(gè)訪問期間不會(huì)改 變。在對(duì) Flash 編程和程序驗(yàn)證期間,
25、P2也接收高位地址和一些控制信號(hào)。(d .P3端口(P3.0P3.7 P3 是一個(gè)帶有內(nèi)部上拉電阻的 8位雙向 I/O端口。 P2的輸出緩沖器可驅(qū)動(dòng)(吸收或輸出電流方式 4個(gè) TTL 輸入。對(duì)端口寫 1時(shí),通過內(nèi)部 的上拉電阻把端口拉到高電位,這時(shí)可用作輸入口。 P3作輸入口使用時(shí),因?yàn)橛袃?nèi)部的上 拉電阻,那些被外部信號(hào)拉低的引腳會(huì)輸出一個(gè)電流。在 AT89C51中, P3端口還用于一些專門功能,這些兼用功能見表 1 在對(duì) Flash 編程和程序驗(yàn)證時(shí), P3還接收一些控制信號(hào)。(5 Flash 存儲(chǔ)器的編程和程序校驗(yàn):AT89C51單片機(jī)內(nèi)部有一個(gè) 4K 字節(jié)的 Flash PEROM 。
26、這個(gè) Flash 存儲(chǔ)陣列通常是處于已 擦除狀態(tài) (既存儲(chǔ)單元的內(nèi)容為 FFH , 隨時(shí)可對(duì)它進(jìn)行編程。 編程接口可接收高電壓 (12V 或低電壓(Vcc 的允許編程信號(hào)。低電壓編程方式可很方便地對(duì) AT89C51內(nèi)的用戶系統(tǒng)進(jìn) 行編程;而高電壓編程方式則可與通用的 EPROM 編程器兼容。AT89C51的程序存儲(chǔ)器陣列是采用字節(jié)寫入方式編程的,既每次寫入一個(gè)字節(jié)。要對(duì)片 內(nèi)的 PEROM 程序存儲(chǔ)器寫入任何一個(gè)非空字節(jié), 都必須用片擦除方式將整個(gè)存儲(chǔ)器的內(nèi)容清 除。(6 對(duì) Flash 存儲(chǔ)器編程編程前, 必須按照表 2和圖 5建立好地址、 數(shù)據(jù)和相應(yīng)的控制信號(hào)。 編程單元的地址加 在 P1
27、端口和 P2端口的 P2.0P2.3(11位地址為 0000H 0FFFH ,數(shù)據(jù)從 P0端口輸入。引 腳 P2.6、 P2.7和 P3.6、 P3.7的電平選擇見表 2。 /PSEN應(yīng)保持低電平,而 RST 應(yīng)保持高電 平。 /EA/VPP是編程電源的輸入端,按要求加入編程電壓。 ALE/PROG端輸入編程脈沖(應(yīng) 為負(fù)脈沖信號(hào) 。編程時(shí),采用 420 MHz的振蕩器。對(duì) AT89C51編程的步驟如下:(a在地址線上輸入要編程單元的地址。(b在數(shù)據(jù)線上輸入要寫入的數(shù)據(jù)字節(jié)。(c激活相應(yīng)的控制信號(hào)。(d在采用高電壓編程方式時(shí),將 /EA/VPP端的電壓加到 12V 。(e每對(duì) Flash 存儲(chǔ)
28、陣列寫入一個(gè)字節(jié)或每寫入一個(gè)程序加密位, 加一個(gè) ALE/PROG編程脈沖。改變編程單元的地址和要寫入的數(shù)據(jù),重復(fù)步驟 a e ,直到全部文件編程完畢。 每個(gè)字節(jié)寫入周期是自動(dòng)定時(shí)的,通常不大于 1.5ms 。表 1 2 Flash 編程方式(7數(shù)據(jù)查詢方式AT89C51單片機(jī)用數(shù)據(jù)查詢方式來檢測(cè)一個(gè)寫周期是否結(jié)束。在一個(gè)寫周期期間,如果 想讀出最后寫入的哪個(gè)字,則讀出數(shù)據(jù)的最高位(P0.7是原來寫入字節(jié)最高位的反碼。寫 周期一旦完成后, 有效的數(shù)據(jù)就會(huì)出現(xiàn)在所有輸出端上, 這時(shí)可開始下一個(gè)寫周期。 一個(gè)寫 周期開始后,可在任何時(shí)間開始進(jìn)行數(shù)據(jù)查詢。 圖 1 5 Flash編程 圖 1 6 程
29、序的校驗(yàn)圖 1 7 Flash 編程和校驗(yàn)的波形(高電平編程方式(8準(zhǔn)備就緒 /忙信號(hào)字節(jié)編程的過程也可通過 RDY/BSY輸出信號(hào)來監(jiān)視。在編程期間,當(dāng) ALE 變?yōu)楦唠娖?后, P3.4(RDY/BSY端的電平被拉低,表示忙(正在編程狀態(tài)。編程完畢后, P3.4的 電平變高表示就緒狀態(tài)。(9程序的校驗(yàn) 如果加密位 LB1和 LB2沒有被編程,那么就可以對(duì) AT89C51內(nèi)部已編好的程序進(jìn)行校 驗(yàn)。 這時(shí)采用圖 6所示的引腳接法。 程序存儲(chǔ)器的地址仍由 P1端口和 P2端口的 P2.0P2.3輸入, 數(shù)據(jù)由 P0端口輸入。 P2.6、 P2.7和 P3.6、 P3.7的電平見表 1-4。 /
30、PSEN保持低電平, 而 ALE 、 /EA和 RST 保持高電平。校驗(yàn)時(shí),在 P0端口上要求外接約 10K 左右的上拉電阻。程序加密位不能直接校驗(yàn)。加密位的校驗(yàn)可通過觀察它們的功能是否被允許來進(jìn)行。 Flash 存儲(chǔ)器編程和程序校驗(yàn)時(shí)的時(shí)序圖見圖 1 7(高電平編程和圖 1 8(低電壓編 程 。 圖 1 8 Flash 編程和校驗(yàn)的波形(低電壓編程方式(六、其它為增強(qiáng)系統(tǒng)在工作現(xiàn)場(chǎng)的抗干擾能力, 在硬件設(shè)計(jì)方面采取了一系列措施, 例如, 信號(hào) 的輸入/輸出采用電平轉(zhuǎn)換、光電隔離;正確配置接地系統(tǒng),處理好共地信號(hào);強(qiáng)電信號(hào)和 弱電信號(hào)分開走線, 傳輸線盡可能使用雙絞線和屏蔽電纜; 設(shè)置WDT時(shí)
31、鐘監(jiān)視電路, 自動(dòng) 監(jiān)視CPU運(yùn)行狀態(tài),出現(xiàn)故障自動(dòng)處理,同時(shí)具有硬件自診斷功能,避免“死機(jī)”現(xiàn)象發(fā) 生等等。四 . 智能溫度計(jì)的流程圖在軟件設(shè)計(jì)上, 采用了良好的人機(jī)交互環(huán)境, 可通過選擇功能熱鍵執(zhí)行特定的程序, 如 任意設(shè)定檢測(cè)參數(shù)值, 選擇顯示方式和控制模式等, 還可設(shè)置優(yōu)先權(quán)直接進(jìn)行人為干預(yù)以便 達(dá)到靈活控制的目的,如果某一檢測(cè)通道被鍵設(shè)置成關(guān)閉,那么不管此通道外部情況如何, 系統(tǒng)均不作任何反應(yīng)。為了提高系統(tǒng)的抗干擾能力, 除硬件上采取了相應(yīng)的措施外, 在軟件設(shè)計(jì)中也采取了若 干措施, 如在數(shù)據(jù)采集時(shí)采用數(shù)字濾波; 采取指令冗余設(shè)計(jì),在程序中適當(dāng)?shù)夭迦肟詹僮髦噶? 對(duì)一些重要的指令重寫
32、等等。 從而有效地提高了系統(tǒng)運(yùn)行的可靠性, 使其檢測(cè)控制工作 及時(shí)準(zhǔn)確、安全穩(wěn)定,達(dá)到良好的環(huán)境模擬控制性能要求。圖 9是智能溫度計(jì)的流程圖。 因?yàn)橹悄軠囟扔?jì)的控制和計(jì)算相對(duì)簡(jiǎn)單, 由該流程方框圖 可見,該主程序是循環(huán)線性結(jié)構(gòu)。在初始化時(shí),清除內(nèi)部 RAM ,設(shè)定標(biāo)志位和標(biāo)志單元, 設(shè)置堆棧指針,檢測(cè) LED 顯示器工作是否正常等。它主要包括了下述一些子程序:(1 從 A/D轉(zhuǎn)換器 MC14433讀取溫度數(shù)字電壓子程序:查詢 A/D轉(zhuǎn)換狀態(tài), 一旦本次 A/D轉(zhuǎn)換結(jié)束, CPU 將溫度電壓的 BCD 碼數(shù)字值送到 RAM 中的輸入緩沖區(qū)存放。(2 溫度電壓數(shù)字值到溫度數(shù)字轉(zhuǎn)換子程序; 將緩沖區(qū)
33、中的溫度電壓數(shù)字 BCD 碼轉(zhuǎn)換為實(shí) 際的溫度十進(jìn)制數(shù)字。(3溫度數(shù)字到 LE D 顯示段碼轉(zhuǎn)換子程序:把溫度十進(jìn)制數(shù)字轉(zhuǎn)換成相應(yīng)的 LED 顯示段 碼,存放在顯示段碼緩沖區(qū)供 LED 顯示器顯示傳送子程序(4 LED 顯示段碼到 LED 顯示器顯示傳送和動(dòng)態(tài)掃描子程序(5 BCD 碼加,減,乘,除子程序;(6 BCD 碼在緩沖器間傳送子程序;(7 其它專用子程序; 圖 9 智能溫度計(jì)的流程圖 四、 系統(tǒng)主程序系統(tǒng)主程序 :ORG 0000HLJMP MAINORG 0013HLJMP SUBORG 0100HMAIN: MOV SP,#40HMOV A, #78HMOV R7, #09HMO
34、VX A,DPTRMOV R0,ACLR CSUBB A,#34HJNC LOOP1CLR CMOV A,R0SUBB A,#3AHJC LOOPMOV A,R0ACALL TEMPLOOP:MOV DPTR,#EF00HMOV R1,#0F8HMOV A, #33HMOVX R1, AMOV A,R0MOVC A,A+DPTRDEC R1MOVX R1,AMOV A,R2INC R1MOVX R1,AINC R0MOV A,R2CLR CRRC AMOV R2,AMOV A,#00HMOV DPTR,#00F8HMOVX DPTR,AAJMP GOLOOP1: MOV P1,#8FHAJMP
35、 GOLOOP2: MOV P1,#0BFHGO : POP DPHPOP DPLPOP ACCPOP PSWRETIENDTEMP: MOV DPTR,TABLEMOV A,R0MOV B,#04HCLR CMUL ABJNC NOOINC DPHNOO: MOVC A,A+DPTRMOV 80H,AINC DPTRMOVC A,DPTRMOV 81H,AAJMP LOOPORG 0300HTAB: DB 3FH 06H 5BH 4FH 66H 6DH 7DH 07H 7FH 6FH 77H 83H MAIN:MOV 20H,#0MOV 21H,#0MOV R0,#3CHMOV R1,#12
36、LCALL CLEARSETB PT0ML2: NOPNOPNOPMOV A,P1CJNE A,#0FBH,ML3AJMP MAINML3: MOV A,PIN1INC ASUBB A,PIN3CJNE A,#0,ML4AJMP TEST0ML4: JC TEST0JNB E1,TEST0AJMP COMPPTEST0:MOV PIN3,#0MOV A,P1CJNE A,#0FDH,TEST AJMP EXITTEST:MOV A,P1CJNE A,#0FFH,TEST1 EXIT:MOV R0,#79H MOV R1,#50HHEX: ACALL HEXASCMOV R2,#6MOV R0,
37、#5AHACALL INICLR FLAG3SJMP HERECOMPP:AJMP COMPSECOO:JNB P1.5,SSECOAJMP SECOSSECO:AJMP SECMINII:JNB P1.5,MMINIAJMP MINIMMINI:AJMP MINHOURR:JNB P1.5,HHOURAJMP HOURHHOUR:AJMP HOUTEST1:JNB P1.0,SETT TEST2:SETB EAJNB P1.4,EXITJNB P1.5,DEALAJMP TESTSETT:CLR EAMOV C,P1.4MOV F0,CJNB P1.1,SECOOJNB P1.2,MINII
38、JNB P1.3,HOURRAJMP TEST2DEAL:SETB E1JNB P1.4,OVERMOV R0,#49HMOV R1,#6ACALL CLEARMOV B,#3MOV A,PIN1MUL ABADD A,R4MOV PIN,AMOV A,PIN1CJNE A,#4,AAA MOV PIN1,#0MOV PIN2,#3EH MOV PIN,#3CH AAA: JNB P1.4,OVER JNB P1.1,SECOO JNB P1.2,MINII JNB P1.3,HOURR AJMP AAA OVER:SETB E2INC PIN1MOV R2,#6MOV R0,#3AHMOV
39、R1,PIN1ACALL INI MOV R0,#49HMOV R2,#3MOV R1,PINZIP: MOV A,R0MOV R1,AINC R0MOV A,R0SWAP AORL A,R1MOV R1,AINC PININC R0INC R1DJNZ R2,ZIP AJMP EXIT COMP:MOV A,PIN2CJNE A,#4AH,J AJMP OVRJ: MOV R0,PIN2MOV R1,#7EHMOV R2,#3JJJ:MOV A,R0ANL A,#0F0HSWAP AXRL A,R1JNZ ENDDDEC R1MOV A,R0ANL A,#0FHXRL A,R1JNZ END
40、DDEC R1DEC R0DJNZ R2,JJJSETB FLAG2INC PIN3AJMP TESTENDD:MOV A,PIN2ADD A,#3MOV PIN2,AAJMP COMPOVR: MOV PIN2,#3EHAJMP TESTHOUR:ACALL DELYMOV R0,#7EHJNB F0,SUB1ACALL DAAD1MOV A,R2XRL A,#24HJNZ ML0ACALL CLR0AJMP ML0MINI:ACALL DELYMOV R0,#7CHJNB F0,SUB1ACALL DAAD1MOV A,R2XRL A,#60HJNZ ML0ACALL CLR0AJMP M
41、L0SECO:ACALL DELYMOV R0,#7AHJNB F0,SUB1ACALL DAAD1MOV A,R2XRL A,#60HJNZ ML0ACALL CLR0 ML0: MOV R0,#79HACALL HEXASCMOV R2,#6MOV R0,#5AHACALL INI AJMP SETT SUB1:SETB F0ACALL SUBAJMP ML0 CLEAR:MOV R0,#0INC R0DJNZ R1,CLEAR RETHOU: ACALL DELYSETB E0MOV R0,#4EH ACALL DAAD1MOV A,R2XRL A,#24HJNZ ML00ACALL C
42、LR0AJMP ML00 MIN: ACALL DELYSETB E0MOV R0,#4CHACALL DAAD1MOV A,R2XRL A,#60HJNZ ML00ACALL CLR0AJMP ML00 SEC: ACALL DELYSETB E0MOV R0,#4AHACALL DAAD1MOV A,R2XRL A,#60HJNZ ML00ACALL CLR0 ML00:MOV R0,#49HMOV R1,#30HACALL HEXASCMOV R2,#6MOV R0,#3AHINC R1ACALL INI AJMP AAADELY:MOV R1,#0FFHA1: MOV R2,#0FFH
43、 LOOP:NOPNOPNOPDJNZ R2,LOOPDJNZ R1,A1RETPITO:PUSH PSWPUSH 0E0HPUSH DPHPUSH DPLSETB PSW.3MOV A,P1MOV TL0,#01HMOV TH0,#1FHCJNE A,#0FDH,SSS MOV TL0,#0EDH MOV TH0,#0FBH SSS: JNB P1.5,GETNUM DDD: MOV A,2FHDEC AMOV 2FH,AJNZ RET0MOV 2FH,#10HMOV R0,#7AHACALL DAAD1MOV A,R2XRL A,#60HJNZ RET0ACALL CLR0MOV R0,#
44、7CHACALL DAAD1MOV A,R2XRL A,#60HJNZ RET0ACALL CLR0MOV R0,#7EHACALL DAAD1MOV A,R2XRL A,#24HJNZ RET0ACALL CLR0 RET0:SETB TR0POP DPLPOP DPHPOP 0E0HPOP PSWRETIGETNUM:JB FLAG1,EEMOV R1,#49HMOV R2,#6CO: MOV R1,#0INC R1DJNZ R2,COSETB FLAG1EE: AJMP DDDDAAD1:MOV A,R0DEC R0SWAP AORL A,R0ADD A,#1DA AMOV R2,AANL A,#0FHMOV R0,AMOV A,R2INC R0ANL A,#0F0HSWAP AMOV R0,ASETB FLAG3RETSUB: DEC R0DEC R0CJNE R0,#0FFH,RET2 INC R0CJNE R0,#0,AA DEC R0MOV R0,#0RETAA: DEC R0MOV R0,#9RET2: SUB0: BB: RET3: CLR0: FUL0: INI: INC R0 DEC R0 CJNE R0,#0FFH,RET2 MOV R0,#0 SETB FLAG3 RET DEC R0 DEC R0 CJNE R0,#0FFH,RET2 INC R0
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度門窗行業(yè)市場(chǎng)準(zhǔn)入許可合同
- 中國(guó)海洋生物酶行業(yè)市場(chǎng)前瞻與投資戰(zhàn)略規(guī)劃分析報(bào)告
- 2025年度智慧旅游項(xiàng)目合作協(xié)議管理規(guī)定
- 退生活部申請(qǐng)書
- 中國(guó)HZ高頻變壓器行業(yè)市場(chǎng)前景預(yù)測(cè)及投資方向研究報(bào)告
- 復(fù)核申請(qǐng)書格式
- 企業(yè)消防員轉(zhuǎn)正申請(qǐng)書
- 2025年度建筑安全教育培訓(xùn)及考核協(xié)議
- 2025年度婚宴現(xiàn)場(chǎng)娛樂活動(dòng)策劃合同
- 2025年曖通設(shè)備安裝配件項(xiàng)目投資可行性研究分析報(bào)告
- 蔬菜采購(gòu)項(xiàng)目投標(biāo)書
- 肩周炎康復(fù)護(hù)理
- 2022年安徽管子文化旅游集團(tuán)有限公司招聘筆試試題及答案解析
- SAPPM設(shè)備管理解決方案
- Q-HN-1-0000.08.004《風(fēng)力發(fā)電場(chǎng)電能質(zhì)量監(jiān)督技術(shù)標(biāo)準(zhǔn)》
- 多指畸形-課件
- 5G NSA站點(diǎn)開通指導(dǎo)書(臨時(shí)IP開站)
- 宗教與社會(huì)課件
- 3人-機(jī)-環(huán)-管理本質(zhì)安全化措施課件
- 生殖醫(yī)學(xué)中心建設(shè)驗(yàn)收標(biāo)準(zhǔn)分析-講座課件PPT
- DB44∕T 1811-2016 石灰?guī)r山地造林技術(shù)規(guī)程
評(píng)論
0/150
提交評(píng)論