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

正文內(nèi)容

基于單片機的數(shù)字式多路溫度采集系統(tǒng)(編輯修改稿)

2025-01-11 02:20 本頁面
 

【文章內(nèi)容簡介】 口除了作為一般的 I/O 口線外,更重要的用途是它的第 二功能,如表 5 所示: 10 表 5 P3端口引腳的第二功能 端口引腳 第二功能 RXD(串行輸入口) TXD(串行輸出口) /INT0(外中斷 0) /INT1(外中斷 1) T0 (定時/計數(shù)器 0) T1 (定時/計數(shù)器 1) /WR (外部數(shù)據(jù)存儲器寫選通 ) /RD(外部數(shù)據(jù)存儲器讀選通) ● RST:復(fù)位輸入。當(dāng)振蕩器工作時, RST 引腳出現(xiàn)兩個機器周期以上高電平將使單片機復(fù)位。 WDT 溢出將使該引腳輸出高電平,設(shè)置 SFR AUXR 的 DISRTO 位(地址 8EH)可打開或關(guān)閉該功能。 DISRTO 位缺省為 RESET 輸出高電平打開狀態(tài)。 ● EA /Vpp:內(nèi)外存儲器選擇引腳 /片內(nèi) EPROM(或 FlashROM)編程電壓輸入引腳 。 ● ALE/PROG :當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時, ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低 8位字節(jié)。即使不訪問外部存儲器, ALE仍以時鐘振蕩頻率的 1/6 輸出固定的正脈沖信號,因此它可對外輸出時鐘或用于定時目的。要 注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲器時將跳過一個 ALE 脈沖。對 Flash 存儲器編程期間,該引腳還用于輸入編程脈沖( /PROG)。如有必要,可通過對特殊功能寄存器( SFR)區(qū)中的 8EH 單元的 D0位置位,可禁止 ALE 操作。該位置位后,只有一條 MOVX 和 MOVC 指令 ALE 才會被激活。此外,該引腳會被拉高,單片機執(zhí)行外部程序時,應(yīng)設(shè)置 ALE 無效。 ● PSEN :程序存儲允許( /PSEN)輸出是外部程序存儲器的讀選通信號,當(dāng)STC89C51 由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周 期兩次 PSEN 有效,即輸出兩個脈沖。當(dāng)訪問外部數(shù)據(jù)存儲器,沒有兩次有效的 /PSEN 信號。 EA/VPP:外部訪問允許。欲使 CPU僅訪問外部程序存儲器(地址為 0000H— FFFFH),EA 端必須保持低電平(接地)。需注意的是:如果加密位 LB1 被編程,復(fù)位時內(nèi)部會鎖存 EA 端狀態(tài)。如 EA端為高電平(接 Vcc 端), CPU 則執(zhí)行內(nèi)部程序存儲器中的指令。 Flash 存儲器編程時,該引腳加上 +12V 的編程電壓 Vpp。 ● XTAL1:振蕩器反相放大器及內(nèi)部時鐘發(fā)生器的輸入端。 ● XTAL2:振蕩器反相放大器的輸出端 MCS51 單片機的復(fù)位是靠外部電路實現(xiàn)的。 3. 硬件電路設(shè)計 系統(tǒng)的硬件設(shè)計,主要分為系統(tǒng)電源電路設(shè)計 、數(shù)碼管 驅(qū)動電路設(shè)計、 蜂鳴器驅(qū)動 電路設(shè)計、 自動模式 設(shè)計、 手動模式 設(shè)計等幾個部分,以下將逐一論述。 11 系統(tǒng)電源電路設(shè)計 本系統(tǒng) 選用了由 220V交流變換到交流 12V的變壓器, 變壓器輸出的 12V交流電 經(jīng)過 整流二極管 IN4007 的整流作用,以及電容 C1, C9 的濾波、平滑處理,再 經(jīng)過 L7805 穩(wěn)壓 芯片的穩(wěn)定電壓 ,最后得到比較穩(wěn)定的 5V輸出 [4]。 圖 9 系統(tǒng)電源電路 該電路是 線性穩(wěn)壓器構(gòu)成的 獨立電源電路, 主要 為單片機、和其他器件供電。選用的線性穩(wěn)壓器是 L7805, 這是 一個低功耗正向電壓調(diào)節(jié)器,其可以用在一些高效率,小封裝的低功耗設(shè)計中。 L7805 的基本特性: ● 穩(wěn)定輸出電流 ● 1A 穩(wěn)定峰值電流 ●低靜態(tài)電流 ● 時低壓差為 ● %線性調(diào)整率 /%負(fù)載調(diào)整率 數(shù)碼管驅(qū)動電路設(shè)計 顯示電路采用了 5 個 LED 數(shù)碼管 ,單片機 I/O的應(yīng)用最典型的是通過 I/O 口與 8 段 LED 數(shù)碼管構(gòu)成顯示電路。 8段 LED 數(shù)碼管,則在一定形狀的絕緣材料上,利用單只 LED 組合排列成“ 8” 字型的數(shù)碼管,分別引出它們的電極,點亮相應(yīng)的點劃來顯示出 09的數(shù)字。 LED 數(shù)碼管根據(jù) LED的接法不同分為共陰和共陽兩類,了解 LED 的這些特性,對編程是很重要的。因為不同類型的數(shù)碼管,除了它們的硬件電路有差異外,編程方法也是不同的。將多只 LED的陰極連在一起即為共陰式,而將多只 LED 的陽極連在一起即為共陽式。以本設(shè)計共陰式為例,如把陰極接地,在相應(yīng)段的陽極接上正電源,該段即會發(fā)光。當(dāng)然, LED 的電流通常較小,一般均需在回路中接上上拉電阻。假如我們將 b和 c段接上正電源,其它端接地或懸空,那么 b和 c段發(fā)光 [5],此時,數(shù)碼管顯示將顯示數(shù)字“ 1”。而將 a、 b、 d、 e和 g段都接上正電源,其它引腳懸空,此時數(shù)碼管將顯示“ 2”。 數(shù)碼管驅(qū)動電路在整個系統(tǒng)中的設(shè)計如下圖: 其中 DB0~DB7 接單片機的 ~, LED3~LED7 作為數(shù)碼管的位選控制端,分別 由 ~ 控制。 12 圖 驅(qū)動電路 設(shè)計 由于本設(shè)計采用 P0 口驅(qū)動 8段 LED,但由于 P0 口的驅(qū)動能力有限,即使接上上拉電阻,還不能使 8 段 LED 達(dá)到足夠的亮度,故此處使用了 NPN 型三極管8050 來增大 P0 口的驅(qū) 動電流,使 LED 的發(fā)光亮度滿足設(shè)計要求。具體原來說明如下: 當(dāng)位選到該位數(shù)碼管時,如:位 3。只要給三極管 Q3 的 B 極一個高電平,即可導(dǎo)通, 又由于 Q3 的 B 極由 控制,所以使 輸出高電平即可使 Q3導(dǎo)通。 同時三極管工作在放大區(qū),使 C極的輸出電流增大,從而使 LED 更亮。 本設(shè)計的顯示電路由 5 個數(shù)碼管組成,各個數(shù)碼管的含義分別如下: 第一位( LED1):顯示溫度值小數(shù)點后第一位。 第二位( LED2):顯示溫度值個位。 第三位( LED3):顯示溫度值十位。 第四位( LED4):顯示負(fù)溫度值時的負(fù)號。 獨立位( LED): 顯示通道選擇位。 如下表: 表 6 數(shù)碼管各位顯示區(qū)域 5 通道選擇位 4 符號位 3 溫度值十位 2 溫度值個位 1 小數(shù)點后 1位 單片機復(fù)位 電路設(shè)計 STC89C51 單片機工作之后,只要在它的 RST 引線上加載 10ms 以上的高電平, 13 單片機就能有效地復(fù)位。 51 單片機通常采用上電自動復(fù)位和按鍵復(fù)位兩種方式。最簡單的復(fù)位電路如下圖: 圖 11 單片機 上電 復(fù)位電路圖 圖 12 單片機 按鍵 復(fù)位電路圖 如圖 9 的上電復(fù)位電路與圖 10 的按鍵復(fù)位電路,它們的原理相同。而按鍵復(fù)電路的好處在于在單片機運 行期間,可以通過按鍵來完成復(fù)位動作,無須從新上電。 為了方便程序調(diào)試及作品的使用,本設(shè)計采用按鍵復(fù)位電路,即圖 12. 它的原理如下: 上電或按鍵瞬間, RC電路充電, RST 引線出現(xiàn)正脈沖,只要 RST 保持 10ms 以上的高電平,就能使單片機有效的復(fù)位。在應(yīng)用系統(tǒng)中,有些外圍芯片也需要復(fù)位。如果這些芯片復(fù)位端的復(fù)位電平與單片機的復(fù)位電平的要求一致,則可以將復(fù)位信號與之相連。 振蕩器電路模塊 設(shè)計 STC89C51 單片機內(nèi)部沒有振蕩電路,需要外加振蕩器提供標(biāo)準(zhǔn)時鐘,引線 XTAL1和 XTAL2分別為反向振蕩放 大器的輸入及內(nèi)部時鐘工作電路的輸入和來自反向振蕩器的輸出,該反向放大器可以配置為片內(nèi)振蕩器 , 要形成時鐘,外部還需要附加電路。石英晶體振蕩和陶瓷振蕩均可采用。輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。 51 單片機的時鐘產(chǎn)生方式有兩種,分別為:內(nèi)部時鐘方式和外部時鐘方式。利用其內(nèi)部的振蕩電路 XTAL1和 XTAL2引線上外接定時元件,內(nèi)部振蕩電路便產(chǎn)生自激振蕩,用示波器可以觀察到 XTAL2 輸出的時鐘信號。在STC89C51 單片機一般常用內(nèi)部時鐘 方式,也就是在 XTAL1 和 XTAL2 之間連接晶體振蕩器與電容構(gòu)成穩(wěn)定的自激振蕩器,晶體和電容決定了單片機的工作時間精度為 1微秒。晶體可在 之間選擇。 STC898C51 單片機在通常應(yīng)用情況 14 下,使用振蕩頻率為 6MHZ 的石英晶體,而 12MHZ 頻率的晶體主要是在高速串行通信情況下才使用,在這里我用的是 12MHZ 石英晶體。對電容無嚴(yán)格要求,但它的取值對振蕩頻率輸出的穩(wěn)定性、大小及振蕩電路起振蕩速度有一點影響。 C1和 C2 可在 20100PF 之間取值,一般情況取 30PF。外部時鐘方式是把外部振蕩信號源直接 接入 XTAL1 或 XTAL2。由于 XTAL2 邏輯電平不是 TTL的,所以還要接一個上拉電阻。 圖 電路 按鍵調(diào)整 電路設(shè)計 按鍵調(diào)整 界面主要是由 4 個獨立鍵盤和 5 位數(shù)碼管 構(gòu)成,實現(xiàn)對 溫度 的 實時 控制和顯示。 4個獨立鍵盤選用 輕觸 按鍵,單片機檢測按鍵的原理是:單片機的 I/O 口既可作為輸出也可以作為輸入使用,當(dāng)檢測按鍵時用的是它的輸入功能,我們把按鍵的一端接地,另一端與單片機的某個 I/O 口相連,如圖 12 所示,開始時先給該 I/O 口賦一高電平,然后讓單片機不斷地檢測該 I/O 口是否變?yōu)榈碗娖?,?dāng)按鍵閉合時,即相當(dāng)于該 I/O 口通過按鍵與地相連,變成低電平,程序一旦檢測到I/O 口變?yōu)榈碗娖絼t說明按鍵被按下,然后執(zhí)行相應(yīng)的指令。 圖 溫度報警 電路設(shè)計 本設(shè)計采用了蜂鳴器和警示燈來構(gòu)成整個報警系統(tǒng)。 對于采集到的兩路溫度進(jìn)行判斷,如果通道 1的溫度高于設(shè)定的溫度,則蜂鳴器以“嘀”一聲報警 ,同時,通道 1 的紅色報警燈點亮 ; 如果是通道 2的溫度低于設(shè)定的溫度,則蜂鳴器發(fā)出“嘀嘀”兩聲的聲音報警 ,同時,通道 2的綠色報警指示燈點亮 。 蜂鳴器 15 的驅(qū)動原理是:利用三極管的開關(guān)特性,當(dāng) 9012 的 b極出現(xiàn)低電平“ 0”時,三極管導(dǎo)通;當(dāng) b 極出現(xiàn)高電平“ 1”時,三極管截止。通過三極管的導(dǎo)通與截止之間的時間差產(chǎn)生的脈沖,使蜂鳴器發(fā)出“滴答”的響聲。 圖 15 蜂鳴器驅(qū)動電路 圖 14 溫度報警指示燈電路 單片機 I/O 口功能說明 此處所用的處理器也是 40DIP 的 STC89C51 芯片。它主要完成的功能有: 1)對 8段 LED 數(shù)碼管的段碼顯示 驅(qū)動 ( ~) 。 2) 對 5個數(shù)碼管的位選 (、 、 、 、 ) ; 3)對 溫度 傳感器輸 出數(shù)據(jù)量進(jìn)行采樣 。( , ); 4)對 4個獨立鍵盤掃描檢測( 、 、 、 ); 5) 對兩路報警 LED 指示燈 的 亮滅控制 ( , )。 通過該單片機即可實現(xiàn)人機交互界面的控制 。 4. 單片機軟件設(shè)計 開發(fā)工具及軟件語言 單片機的開發(fā)必須用相關(guān)的程序語言和相應(yīng)的開發(fā)工具實現(xiàn),常用的單片機程序語言是 C 高級語言程序和匯編語言,開發(fā)工具則有 UltraEdit, PE2, keil 等。 匯編語言是單片機程序設(shè)計語言的重要形式,也是當(dāng)今單片機開發(fā)人員進(jìn)行程序開發(fā)最常用的語言形式。匯編語言是一種用來替代機器語言 進(jìn)行程序設(shè)計的語言。匯編語言的特點是每一條指令都給出了助記符。由于助記符用英文縮寫來描述指令的特征,因此它不但便于記憶,也便于理解和分類。 匯編語言源程序中的每條語句可以有多項構(gòu)成,其格式如下: [標(biāo)號 ]:操作碼助記符 [第一操作數(shù) ] [,第二操作數(shù) ] [,第三操作數(shù) ] [; 16 注釋 ] 其中,帶方括號 [ ]的部分為可選項。 在單片機系統(tǒng)設(shè)計中,程序設(shè)計是重要的一環(huán),它的質(zhì)量直接影響到整個系統(tǒng)的功能,用匯編語言進(jìn)行程序設(shè)計的過程大致可以分為以下幾個步驟: ( 1) 明確課題對程序功能、運算精度、執(zhí)行速度 等方面的要求及硬件條件。 ( 2) 把復(fù)雜問題分解為若干個模塊,確定各模塊的處理方法,畫出程序流程圖。對復(fù)雜問題可分別畫出分模塊流程圖和總的流程圖。 ( 3) 存儲器資源分配,如各程序段的存放地址、數(shù)據(jù)區(qū)地址、工作單元分配等。 ( 4) 編制程序,根據(jù)程序流程圖精心選擇合適的指令和尋址方式來編制源程序。 ( 5) 對程序進(jìn)行匯編、調(diào)試和修改。將編制好的源程序進(jìn)行匯編,并進(jìn)行目標(biāo)程序、檢查修改程序中的錯誤,對程序運行結(jié)果進(jìn)行分析,直到正確為止。 本設(shè)計 采用的開發(fā)工具是 Keil C51, Keil C51 是美國 K
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1