freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)的智能溫度監(jiān)控畢業(yè)設(shè)計(jì)正文(編輯修改稿)

2024-12-23 21:30 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 30 腳);地址鎖存允許信號(hào)/編程脈沖輸入端 在系統(tǒng)擴(kuò)展時(shí), ALE 用于控制把 P0 口輸出的低 8 位地址送 入鎖存器鎖存起來(lái),以實(shí)現(xiàn)低位地址和數(shù)據(jù)的分時(shí)傳送。此外由于 ALE 是以 1/6 晶振頻率的固定頻率輸出的正脈沖,因此可作為外邊時(shí)鐘或外部定時(shí)脈沖使用。 對(duì)片內(nèi)帶有4 kbyteEPROM 的8751 編寫(xiě)固化程序時(shí), PROG 非作為編程脈沖輸入端。 3 PSEN 非( 29 引腳):外邊程序存儲(chǔ)器讀選通信號(hào)為低電平有效, 8051 在訪問(wèn)片外程序存儲(chǔ)器時(shí),此引腳端輸出負(fù)脈沖作為讀片外程序存儲(chǔ)器的選通信號(hào),以實(shí)現(xiàn)外部 ROM 單元的讀操作。要檢查 8051 上電平后 CPU 能否正常到程序存儲(chǔ)器中讀取指令碼,可以用示波器觀察引腳 PSEN 非有 無(wú)脈沖輸出,若有說(shuō)明正常。 4 EA 非/ Vpp( 31 腳):內(nèi)部和外部程序存儲(chǔ)器選擇信號(hào) 當(dāng)引腳接高電平時(shí), CPU 只訪問(wèn)片內(nèi) 4kbyte 的 EPROM/ROM,執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令,但在程序計(jì)數(shù)器計(jì)數(shù)超過(guò) OFFFH 時(shí)(即地址大于 4kbyte 時(shí)),將自動(dòng)轉(zhuǎn)向執(zhí)行片外大于 4kbyte 程序存儲(chǔ)器內(nèi)的程序。 若 EA 非引腳接低電平時(shí), CPU 只訪問(wèn)外部程序存儲(chǔ)器,而不管片內(nèi)是否有程序存儲(chǔ)器。對(duì)于 8031 單片機(jī)(片內(nèi)無(wú) ROM)需外擴(kuò) EPROM,故必須將 EA 非引腳接地。 在對(duì) EPROM 編寫(xiě)固化程序時(shí),需對(duì)此引腳施加 21V 的編程電壓。 c I/O(輸入 /輸出)接口引腳 1 并行 I/O 接口的特點(diǎn) MCS51 有 4 個(gè) 8 位并行 I/O 接口 P0~ P3,他們都是雙向端口,可以進(jìn)行輸入或者輸出操作,每個(gè)口都有口鎖存器和口驅(qū)動(dòng)器兩部分組成。此外,它還有一個(gè)全雙工串行通信口。這 4 個(gè)端口為 MCS51 與外圍器件或外圍設(shè)備進(jìn)行信息 數(shù)據(jù)、地址、控制信號(hào) 交換提供了多功能的輸入 /輸出通道,也為 MCS51 擴(kuò)展外部功能、構(gòu)成應(yīng)用系統(tǒng)提供了必要的條件。它們的特點(diǎn)如下: a、 4 個(gè)并行 I/O 接口都是雙向的。 P0 口為漏極開(kāi)路, P P P3 口均具有 內(nèi)部上拉電阻,它們有時(shí)被稱為準(zhǔn)雙向口。 b、 4 個(gè)并行口的 32 條 I/O 接口線都可以獨(dú)立地用于輸入或輸出操作。 c、當(dāng) 4 個(gè)并行口的 I/O 接口線有作輸入操作時(shí),必須對(duì)該口的鎖存器進(jìn)行寫(xiě) 1 操作,以保證從 I/O 接口線輸入數(shù)據(jù)的正確性,這也是 4 個(gè)并行接口有時(shí)被稱為“準(zhǔn)”雙向的含義。 2 I/O 接口電路功能匯總 MCS51 單片機(jī)內(nèi)部屬單總線結(jié)構(gòu),因此使系統(tǒng)在結(jié)構(gòu)上增加了靈活性。通過(guò)總線,用戶可根據(jù)應(yīng)用需要進(jìn)行多功能的系統(tǒng)擴(kuò)展,構(gòu)成用戶的實(shí)際應(yīng)用系統(tǒng)。 MCS51 系列中的 8031 單片機(jī),因其內(nèi)部在結(jié)構(gòu)上無(wú)程序存儲(chǔ)器,所以它 的應(yīng)用系統(tǒng)必定為一個(gè)擴(kuò)展的系統(tǒng)。因此, MCS51 的 4 個(gè)并行 I/O 接口中的 P0、 P P P3 口基本上都具備有這兩項(xiàng)功能: a、 P0 口:P0 口是一個(gè)多功能口除可以作為通用的輸入 /輸出口外,還具備用于系統(tǒng)擴(kuò)展的第二功能。在 MCS51 的進(jìn)行系統(tǒng)擴(kuò)展時(shí),它作為地址 /數(shù)據(jù)總線口。通過(guò)外接地址鎖存器, MCS51 的內(nèi)部單總線可從 P0 口被擴(kuò)展成 8 位的數(shù)據(jù)總線和 16 位地址總線的低 8 位。在實(shí)際應(yīng)用中, P0 口先送出外部存儲(chǔ)器 16 位地址中的低 8 位至地址鎖存器鎖存,然后再由 P0 口進(jìn)行 8 位數(shù)據(jù)的輸入或輸出; b、 P1 口: P1口作為 通用 I/O 接口,它的每一位都可以別編程為通用 I/O 接口線; c、 P2 口:P2 口也是一個(gè)多功能口,與 P0 口相似,它除可被用作 I/O 接口外,在進(jìn)行系統(tǒng)擴(kuò)展時(shí),還可以輸 16 位地址總線中的高 8 位,和 P0 口共同構(gòu)成 16 位的地址總線。當(dāng)然,在 P0 口和 P2 口用作地址 /數(shù)據(jù)總線時(shí),它們都不能再作為通用 I/O接口; d、 P3 口: P3 口也是一個(gè)多功能口,除可以作為通用 I/O 接口外,還具有多種控制功能,為通用 I/O 接口時(shí)和 MCS51 其他具有控制功能的輸入 /輸出引線在一起,共同形成 MCS51 的控制總線。 P3 口在作為第二功能(控制功 能)使用時(shí),它的每一位功能定義如表 所示。 表 P3 口各引腳定義 口線 第二功能 信號(hào)名稱 RXD 串行數(shù)據(jù)接收 TXD 串行數(shù)據(jù)發(fā)送 INT0 外部數(shù)據(jù) 0 申請(qǐng) INT1 外部數(shù)據(jù) 1 申請(qǐng) T0 定時(shí)器 /計(jì)數(shù)器 0 輸入 T1 定時(shí)器 /計(jì)數(shù)器 1 輸入 WR 外部 RAM 寫(xiě)選通 RD 外部 RAM 讀選通 一個(gè)信號(hào)引腳,既是第一功能又是第二功能,在使用時(shí)也不會(huì)引起混亂和造成錯(cuò)誤,理由如下: a、對(duì)于各種型號(hào)的芯片,其 功能的第一功能信號(hào)是相同的,所不同的只在引腳的的第二功能信號(hào)上; b、對(duì)于 30 和 31 各個(gè)引腳,由于第一功能信號(hào)與第二功能信號(hào)是單片機(jī)在不同工作方式下的信號(hào),因此不會(huì)發(fā)生使用上的矛盾; c、 P3 口線的情況卻有所不同,它的第二功能信號(hào)都是單片機(jī)的重要控制信號(hào)。因此在實(shí)際使用時(shí),總是先按需要優(yōu)先選用它的二功能,剩下不用的才作為口線使用。 d MCS51 單片機(jī)的復(fù)位方式和復(fù)位電路 1 復(fù)位操作 :復(fù)位是單片機(jī)的初始化操作,其主要功能是把 PC 初始化為0000H,使單片機(jī)從 0000H 單元開(kāi)始執(zhí)行程序。除了進(jìn)入系統(tǒng)的 正常初始化之外,當(dāng)由于程序運(yùn)行出錯(cuò)或者操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),為擺脫困境,也需按復(fù)位鍵以重新啟動(dòng)。 a、復(fù)位操作還對(duì)單片機(jī)的個(gè)別引腳信號(hào)有影響,例如把 ALE和 PSEN 非信號(hào)變?yōu)闊o(wú)效狀態(tài),即 ALE 0, PSEN 1; b、復(fù)位信號(hào)及其產(chǎn)生 RST引腳是復(fù)位信號(hào)的輸入端,復(fù)位信號(hào)是高電平有效,其有效時(shí)間持續(xù) 24 個(gè)振蕩脈沖周期(即 2 個(gè)機(jī)器周期)以上,若使用頻率為 6MHz 的晶振,則復(fù)位信號(hào)持續(xù)時(shí)間應(yīng)超過(guò) 4us 才能完成復(fù)位操作。整個(gè)復(fù)位電路包括芯片內(nèi)外兩部分。外部電路產(chǎn)生的復(fù)位信號(hào)( RST)送施密特觸發(fā)器,再由片內(nèi) 復(fù)位電路在每個(gè)機(jī)器周期的 S5 時(shí)刻對(duì)施密特觸發(fā)器的輸出進(jìn)行采樣。然后才得到內(nèi)部復(fù)位操作所需要的信號(hào)。 顯示溫度值的 LED 顯示器接口簡(jiǎn)介 LED 顯示器是單片機(jī)應(yīng)用系統(tǒng)中常用的廉價(jià)輸出設(shè)備。它是由若干個(gè)發(fā)光二極管組成的,當(dāng)發(fā)光二極管導(dǎo)通時(shí),相應(yīng)一個(gè)筆畫(huà)劃發(fā)光,控制某段發(fā)光二極管導(dǎo)通,就能顯示出某個(gè)數(shù)碼或字符。 在靜態(tài)顯示系統(tǒng)中,每位顯示器都應(yīng)有各自的鎖存器、譯碼器(若采用軟件譯碼,譯碼器可省去)與驅(qū)動(dòng)器,用以鎖存各自待顯示數(shù)字的 BCD 碼或字段碼。因此,靜態(tài)顯示系統(tǒng)在每一次顯示輸出后能 夠保持顯示不變,僅在待顯示數(shù)字需要改變時(shí),才更新其數(shù)字顯示鎖存器中的內(nèi)容。這種顯示占用 CPU 的時(shí)間少,顯示穩(wěn)定可靠。缺點(diǎn)是,當(dāng)顯示的位數(shù)較多時(shí),占用的 I/O 口較多。 在動(dòng)態(tài)顯示的系統(tǒng)中, CPU 需定時(shí)地對(duì)每位 LED 顯示器進(jìn)行掃描,每位 LED顯示器分時(shí)輪流工作,每次只能使一位 LED 顯示,但由于人的視覺(jué)暫留現(xiàn)象,仍感覺(jué)所有的 LED 顯示器都在同時(shí)顯示。這種顯示的優(yōu)點(diǎn)是使用硬件少,占用 I/O口少。缺點(diǎn)是占用 CPU 時(shí)間長(zhǎng),只要不執(zhí)行顯示程序,就立刻停止顯示。但隨著大規(guī)模集成電路的發(fā)展,目前已有能自動(dòng)對(duì)顯示器進(jìn)行掃描 的專用顯示芯片,使電路既簡(jiǎn)單又占用 CPU 時(shí)間。在我們所設(shè)計(jì)的溫度計(jì)中數(shù)碼管顯示就是利用的動(dòng)態(tài)顯示。 4 智能溫度控制系統(tǒng)軟件設(shè)計(jì) 課題的程序用 Keil C51 語(yǔ)言編寫(xiě),由于使用了 C 語(yǔ)言,寄存器的分配、不同的存儲(chǔ)器的尋址及數(shù)據(jù)類型等細(xì)節(jié)可由編譯器管理,尤其是數(shù)學(xué)運(yùn)算不必人工干預(yù),大大縮短了變成與調(diào)試的時(shí)間,提高了效率,降低了編成難度,使編程更加簡(jiǎn)便。 系統(tǒng)的控制軟件可分為主程序, DS18B20 通信程序,按鍵程序等模塊。主程序可分為系統(tǒng)的初始化,自檢子程序,溫度顯示子程序三部分。溫度顯示子程序完成溫度采集,溫 度值的 BCD 轉(zhuǎn)換,調(diào)顯示子程序,超溫報(bào)警和控制。 DS18B20通信程序主要由 DS18B20 初始化程序, DS18B20 讀字節(jié)程序, DS18B20 寫(xiě)字節(jié)程序組成。按鍵程序主要完成溫度上、下限的設(shè)置和顯示,在單片機(jī)控制下每 2小時(shí)發(fā)送 秒的啟動(dòng)電機(jī)的正脈沖。本系統(tǒng)有五個(gè)按鍵,依次是:復(fù)位鍵、 K1鍵、 K2 鍵、 K3 鍵、 K4 鍵。按鍵程序主要包括 INT1 中斷子程序、定時(shí)器 T0 中斷子程序、 INT1 中斷子程序、定時(shí)器 T1 中斷子程序、定時(shí)器 T2 子程序。其中,復(fù)位鍵部分放入主程序中,作為主程序的一部分。 K4 鍵功能:每 2 小時(shí)發(fā)送 秒的啟動(dòng)電機(jī)的正脈沖。下面是主程序和各個(gè)子程序的流程圖。 4. 1 主程序流程圖 系統(tǒng)完成的是對(duì)周圍溫度進(jìn)行檢測(cè),采用 DS18B20 傳感器。當(dāng)溫度超過(guò)設(shè)定溫度范圍時(shí),進(jìn)行報(bào)警。引入單片機(jī)控制是實(shí)現(xiàn)系統(tǒng)智能化很重要的一個(gè)部分,采用單片機(jī)可以實(shí)現(xiàn)程序控制和監(jiān)視的功能。系統(tǒng)采用 89S52 和 DS18B20 的連接進(jìn)行實(shí)時(shí)控制和數(shù)據(jù)處理。軟件編程負(fù)責(zé)設(shè)置溫度上、下限,然后讓系統(tǒng)根據(jù)設(shè)置的程序完成控制功能。主程序流程圖如圖 所示。 圖 主程序流程圖 DS18B20 初始化子程序流程圖 DS18B20 在初始化序列期間,總線控制器拉低總線并保持 480us 以發(fā)出( TX)一個(gè)復(fù)位脈沖,然后釋放總線,進(jìn)入接收狀態(tài)( RX)。單總線由 5K 上拉電阻拉到高電平。當(dāng) DS18B20 探測(cè)到 I/O 引腳上的上升沿后,等待 15~ 60us,然后發(fā)出一個(gè)由 60~ 240us 低電平信號(hào)構(gòu)成的存在脈沖。完成對(duì) DS18B20 的初始化操作,在每次測(cè)溫前必須對(duì)其進(jìn)行初始化,否則系統(tǒng)無(wú)法正常運(yùn)行。所以這個(gè)步驟很重要。DS18B20 初始化子程序流程如圖 所示。 圖 DS18B20 初始化子程序流程圖 void RST18B20 void /*DS18B20 初始化子程序 */ DQ 0。 delay 15 。 DQ 1。 delay 2 。 do while DQ 1 。 do while DQ 0 。 DS18B20 寫(xiě)字節(jié)子程序 DS18B20 寫(xiě)字節(jié)由兩種寫(xiě)時(shí)序組成:寫(xiě) 1 時(shí)序和寫(xiě) 0 時(shí)序。總線控制器通過(guò)寫(xiě) 1 時(shí)序?qū)戇壿?1 到 DS18B20,寫(xiě) 0 時(shí)序?qū)戇壿?0 到 DS18B20。所有寫(xiě)時(shí)序必須最少持續(xù) 60us,包括兩個(gè)寫(xiě)周期之間至少 1us 的恢復(fù)時(shí)間。當(dāng)總線控制器把數(shù)據(jù)線從邏輯高電平拉到低 電平的時(shí)候,寫(xiě)時(shí)序開(kāi)始總線控制器要生產(chǎn)一個(gè)寫(xiě)時(shí)序,必須把數(shù)據(jù)線拉到低電平然后釋放,在寫(xiě)時(shí)序開(kāi)始后的 15us 釋放總線。當(dāng)總線被釋放的時(shí)候, 5K 的上拉電阻將拉高總線??偪刂破饕梢粋€(gè)寫(xiě) 0 時(shí)序,必須把數(shù)據(jù)線拉到低電平并持續(xù)保持(至少 60us)??偩€控制器初始化寫(xiě)時(shí)序后,DS18B20 在一個(gè) 15us 到 60us 的時(shí)間內(nèi)對(duì) I/O 線采樣。如果線上是高電平,就是寫(xiě) 1。如果線上是低電平,就是寫(xiě) 0。 DS18B20 寫(xiě)字節(jié)程序流程圖如圖 所示。 圖 DS18B20 寫(xiě)字節(jié)流程圖 void write_zi uchar wr /*向 DS18B20 寫(xiě)字節(jié)子程序 */ uchar i。 for i 0。i 8。i++ DQ 0。 _nop_ 。 DQ wramp。0x01。 delay 5 。 DQ 1。 wr 1。 DS18B20 讀字節(jié)子程序 總線控制器發(fā)起讀時(shí)序時(shí), DS18B20 僅被用來(lái)傳輸數(shù)據(jù)給控制器。因此,總線控制器在發(fā)出讀暫存器指令 [BEh]或讀電源模式指令 [B4h]后必須立刻開(kāi)始讀時(shí)序, DS18B20 可以提供請(qǐng)求信息。除此之外,總線控制器在發(fā)出發(fā)送溫度轉(zhuǎn)換指令 [44h]或召回 EEPROM 指令 [B8h]之后讀時(shí)序,所有讀時(shí)序必須最少 60us,包括兩個(gè)讀周期間至少 1us 的恢復(fù)時(shí)間。當(dāng)總線控制器把數(shù)據(jù)線從高電平拉到低電平時(shí),讀時(shí)序開(kāi)始,數(shù)據(jù)線必須至少保持 1us,然后總線被釋放。在總線控制器發(fā)出讀時(shí)序后, DS18B20 通過(guò)拉高或拉低總線上來(lái)傳輸 1 或 0。當(dāng)傳輸邏輯 0結(jié)束后,總線將被釋放,通過(guò)上拉電阻回到上升沿狀態(tài)。從 DS18B20 輸出的數(shù)據(jù)在讀時(shí)序的下降沿出現(xiàn)后 15us 內(nèi)有效。因此,總線控制器在讀時(shí)序開(kāi)始后必 須停止把 I/O 腳驅(qū)動(dòng)為低電平 15us,以讀取 I/O 腳狀態(tài)。 圖 DS18B20 讀字節(jié)子程序 uchar read_zi void /*從 DS18B20 讀出字
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1