空氣溫濕度檢測(cè)儀畢業(yè)設(shè)計(jì)_第1頁
空氣溫濕度檢測(cè)儀畢業(yè)設(shè)計(jì)_第2頁
空氣溫濕度檢測(cè)儀畢業(yè)設(shè)計(jì)_第3頁
空氣溫濕度檢測(cè)儀畢業(yè)設(shè)計(jì)_第4頁
空氣溫濕度檢測(cè)儀畢業(yè)設(shè)計(jì)_第5頁
已閱讀5頁,還剩48頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、畢畢 畢業(yè)設(shè)計(jì)畢業(yè)設(shè)計(jì) 空氣溫濕度檢測(cè)儀空氣溫濕度檢測(cè)儀 2 目目 錄錄 第一章第一章 引言引言.1 第二章第二章 方案論證方案論證.2 2.1 中央處理單元 cpu 的選擇.2 2.1.1 常見幾種單片機(jī)的比較.2 2.1.2 中央處理單元 at89c51 的確定.3 2.1.3 at89c51 的基本結(jié)構(gòu)和功能簡(jiǎn)介.3 2.2 傳感器的選擇.9 2.2.1 溫度傳感器選擇.9 2.2.2 濕度傳感器的選擇.12 第三章第三章 系統(tǒng)的組成以及輔助電路的設(shè)計(jì)系統(tǒng)的組成以及輔助電路的設(shè)計(jì).16 3.1 采樣保持器和 ad 轉(zhuǎn)換電路的設(shè)計(jì).16 3.1.1 采樣保持器.16 3.1.2 a/d 轉(zhuǎn)

2、換器 adc0809.17 3.2 鍵盤與顯示芯片 hd7279a 介紹.20 3.2.1 hd7279a 芯片簡(jiǎn)介.20 3.2.2 顯示電路.26 3.2.3 串行通訊接口電路.27 第四章第四章 軟件設(shè)計(jì)軟件設(shè)計(jì).29 4.1 上位機(jī)簡(jiǎn)介以及軟件設(shè)計(jì).29 4.1.1 visual basic 語言編程簡(jiǎn)介.29 4.1.2 軟件實(shí)現(xiàn).30 4.2 下位機(jī)軟件設(shè)計(jì).34 總結(jié)及致謝總結(jié)及致謝.35 參考文獻(xiàn)參考文獻(xiàn).36 附錄附錄 1 上位機(jī)軟件程序清單上位機(jī)軟件程序清單.37 附錄附錄 2 下位機(jī)軟件程序清單下位機(jī)軟件程序清單.41 1 第一章第一章 引言引言 人類的生存和社會(huì)活動(dòng)都與

3、溫度濕度密切相關(guān)。隨著現(xiàn)代化的實(shí)現(xiàn),無論是企 業(yè)還是事業(yè)、無論是醫(yī)療衛(wèi)生還是科學(xué)研究都很難找出一個(gè)與溫度濕度無關(guān)的領(lǐng)域 來。所以溫度和濕度的測(cè)量成為日常生產(chǎn)生活最常見的測(cè)量活動(dòng),在市場(chǎng)上我們隨 處可見各種溫濕度測(cè)量?jī)x器,本設(shè)計(jì)就是一種簡(jiǎn)單適用的空氣溫度和濕度的檢測(cè)儀 器,它能精確實(shí)時(shí)的測(cè)量出空氣的溫度和相對(duì)濕度。通過裝置上的 led 來實(shí)時(shí)顯示 空氣的溫度和濕度,其測(cè)量精度為:溫度0.5濕度5%rh,除了具有記錄和打印 的功能外,還能通過上位機(jī)能實(shí)時(shí)顯示溫度變化的曲線。本設(shè)計(jì)的產(chǎn)品不但適用于 家庭,也適用于溫度范圍在55150內(nèi)的所有場(chǎng)所。如:蔬菜生產(chǎn)的溫室、工 廠等。其具有結(jié)構(gòu)簡(jiǎn)單嬌小、設(shè)計(jì)

4、制造成本低、適用范圍廣、設(shè)計(jì)成品便于攜帶等 優(yōu)點(diǎn)。 2 第二章第二章 方案論證方案論證 整個(gè)系統(tǒng)采用兩級(jí)控制結(jié)構(gòu),由上位機(jī)和下位機(jī)組成:上位機(jī)為綜合管理級(jí), 主要實(shí)現(xiàn)顯示、記錄、打印等功能;下位機(jī)為直接控制級(jí),主要完成溫濕度檢測(cè)、 實(shí)時(shí)顯示、數(shù)據(jù)傳輸?shù)裙δ堋?以 8051 為中央處理單元,配以外圍的 ad 轉(zhuǎn)換電路、鍵盤顯示電路和 rs-232 串 口等基本簡(jiǎn)單電路構(gòu)成了檢測(cè)器的核心控制部件,在加上溫度傳感器和濕度傳感器 構(gòu)成了本測(cè)量系統(tǒng)的下位機(jī)。 上位機(jī)選用普通 pc 機(jī)即可,便于實(shí)現(xiàn)綜合管理、存儲(chǔ)數(shù)據(jù)、打印曲線及事后數(shù) 據(jù)處理。下位機(jī)選用嵌入式系統(tǒng),結(jié)構(gòu)簡(jiǎn)單、體積小、成本低、實(shí)時(shí)性好,便于

5、實(shí) 時(shí)采集環(huán)境溫度和濕度。 2.12.1 中央處理單元中央處理單元 cpucpu 的選擇的選擇 單片機(jī)已成為電子系統(tǒng)中進(jìn)行數(shù)據(jù)采集、信息處理、通信聯(lián)絡(luò)和實(shí)施控制的重 要器件。通常利用單片機(jī)技術(shù)在各種系統(tǒng)、儀器設(shè)備或裝置中,形成嵌入式智能系 統(tǒng)或子系統(tǒng)。中央處理器的選擇直接關(guān)系到所做系統(tǒng)的性能,要選擇既便宜又實(shí)用 的單片機(jī)款型。 2.1.1 常見幾種單片機(jī)的比較 intel 公司早期的產(chǎn)品 8031/8051/8751。 80318031 片內(nèi)不帶程序存儲(chǔ)器 rom,使用時(shí)用戶需外接程序存儲(chǔ)器和一片邏輯電路 373,外接的程序存儲(chǔ)器多為 eprom 的 2764 系列。用戶若想對(duì)寫入到 epro

6、m 中的程 序進(jìn)行修改,必須先用一種特殊的紫外線燈將其照射擦除,之后再可寫入。寫入到 外接程序存儲(chǔ)器的程序代碼沒有什么保密性可言。 80518051 片內(nèi)有 4k 的 rom,無須外接外存儲(chǔ)器和 373,更能體現(xiàn)“單片”的簡(jiǎn)練。 但是你編的程序你無法燒寫到其 rom 中,只有將程序交芯片廠代你燒寫,并是一次 性的,今后你和芯片廠都不能改寫其內(nèi)容。 87518751 與 8051 基本一樣,但 8751 片內(nèi)有 4k 的 eprom,用戶可以將自己編寫的程 序?qū)懭雴纹瑱C(jī)的 eprom 中進(jìn)行現(xiàn)場(chǎng)實(shí)驗(yàn)與應(yīng)用,eprom 的改寫同樣需要用紫外線燈 照射一定時(shí)間擦除后再燒寫。 由于上述類型的單片機(jī)應(yīng)用

7、的早,影響很大,已成為事實(shí)上的工業(yè)標(biāo)準(zhǔn)。后來 很多芯片廠商以各種方式與 intel 公司合作,也推出了同類型的單片機(jī),如同一種 3 單片機(jī)的多個(gè)版本一樣,雖都在不斷的改變制造工藝,但內(nèi)核卻一樣,也就是說這 類單片機(jī)指令系統(tǒng)完全兼容,絕大多數(shù)管腳也兼容;在使用上基本可以直接互換。 我們統(tǒng)稱這些與 8051 內(nèi)核相同的單片機(jī)為“51 系列單片機(jī)” 。 在眾多的 51 系列單片機(jī)中,要算 atmel 公司的 at89c51at89c51 更實(shí)用,因他不但和 8051 指令、管腳完全兼容,而且其片內(nèi)的 4k 程序存儲(chǔ)器是 flashflash 工藝的,這種工 藝的存儲(chǔ)器用戶可以用電的方式瞬間擦除、改寫

8、,一般專為 atmel at89cx 做的編 程器均帶有這些功能。顯而易見,這種單片機(jī)對(duì)開發(fā)設(shè)備的要求很低,開發(fā)時(shí)間也 大大縮短。寫入單片機(jī)內(nèi)的程序還可以進(jìn)行加密,這又很好地保護(hù)了你的勞動(dòng)成果。 重要的一點(diǎn) at89c51 目前的售價(jià)比 8031 還低,市場(chǎng)供應(yīng)也很充足。 2.1.2 中央處理單元 at89c51 的確定 從多方的因素考慮論證。硬件的核心選用 atmel 公司生產(chǎn)的 at89c51 單片機(jī)。它 是一種低功耗、低電壓、高性能的 8 位單片機(jī),片內(nèi)帶有一個(gè)數(shù) kb 的 flash 可編程、 可擦除、只讀存儲(chǔ)器;它采用了 cmos 工藝和 atmel 公司的高密度非易失性存儲(chǔ)器技 術(shù)

9、,而且其輸出引腳和指令系統(tǒng)都與 mcs-51 兼容。 at89c51 是一種帶 4k 字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(fperomfalsh programmable and erasable read only memory)的低電壓,高性能 cmos8 位微處 理器,俗稱單片機(jī)。該器件采用 atmel 高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè) 標(biāo)準(zhǔn)的 mcs-51 指令集和輸出管腳相兼容。由于將多功能 8 位 cpu 和閃爍存儲(chǔ)器組合 在單個(gè)芯片中,atmel 的 at89c51 是一種高效微控制器,為很多嵌入式控制系統(tǒng)提 供了一種靈活性高且價(jià)廉的方案。 2.1.3 at89c51 的基本結(jié)

10、構(gòu)和功能簡(jiǎn)介 1. 結(jié)構(gòu)框圖 圖 2.1 89c51 單片機(jī)結(jié)構(gòu)框圖 4 特殊功能 寄存器 工作寄存器區(qū) 4 組 r0-r7 位尋址區(qū) 128 位 數(shù)據(jù) 緩沖區(qū) 片內(nèi) ram 外部數(shù)據(jù) 存儲(chǔ)器 與 外設(shè) i/o 端口 2.存儲(chǔ)器空間結(jié)構(gòu) 計(jì)算機(jī)操作的主要對(duì)象是數(shù)據(jù),cpu 是按地址控制與組織數(shù)據(jù)流的。因此,地 址空間結(jié)構(gòu)是微機(jī)結(jié)構(gòu)的一項(xiàng)重要內(nèi)容,并直接影響其指令系統(tǒng)。at89c51 的存儲(chǔ) 空間(哈佛結(jié)構(gòu):程序空間與數(shù)據(jù)空間分別獨(dú)立) (1)程序存儲(chǔ)器(由 pc 提供地址) ffffh 1000h 0fffh 0000h 圖 2.2 mcs-51 的程序存儲(chǔ)空間 (2)數(shù)據(jù)存儲(chǔ)器 1)內(nèi)部數(shù)據(jù)

11、存儲(chǔ)器(8 位地址) 2)外部數(shù)據(jù)存儲(chǔ)器與 i/o 端口 ffh 80h 7fh 30h 2fh 20h 1fh 00h 圖 2.3 89c51 的數(shù)據(jù)存儲(chǔ)空間 ffffh 0000h (由數(shù)據(jù)指針 dptr 提供 16 位地址) 外部 60k 內(nèi)部 4k ea=1 外部 4k ea=0 5 (3)引腳及其功能 1) 工作電源與地 圖 2.4 兩種時(shí)鐘電路, (a)內(nèi)部時(shí)鐘方式, (b)外部時(shí)鐘方式。 vcc(40):電源 +5v0.5v gnd(20):地 2) 時(shí)鐘(圖 2.4) xtal1(19):內(nèi)部振蕩器輸入端 xtal2(18):內(nèi)部振蕩器輸出端 3) 并行 i/o 口 p0.0

12、0.0 p0.70.7 (3932) 通用 i/o 口 p0 0 / / a0 0-a7 7 / / d0 0-d7 7。 p1.0 1.0 p1.71.7 ( 18 ) 通用 i/o 口 p1 1 p2.0 2.0 p2.72.7 (2128) 通用 i/o 口 p2 2 / / a8 8-a1515 p3.0 3.0 p3.73.7 (10-17) 通用 i/o 口 p3 3 / / 第二功能 p3.0 3.0 (10)收 p3.1 3.1 (11):txd 串行口數(shù)據(jù)發(fā)送 p3.2 3.2 (12):int0 0 非外中斷 0 p3.3 3.3 (13):int1 1 非外中斷 1 p3

13、.4 3.4 (14): t0 0 計(jì)數(shù)/定時(shí)器 0 的外部計(jì)數(shù)脈沖輸入 p3.5 3.5 (15): t1 1 計(jì)數(shù)/定時(shí)器 1 的外部計(jì)數(shù)脈沖輸入 p3.6 3.6 (16): wr 非外部數(shù)據(jù)存儲(chǔ)器寫控制信號(hào) p3.7 3.7 (17): rd 非外部數(shù)據(jù)存儲(chǔ)器讀控制信號(hào) 4) 控制信號(hào) ale(30):輸出正脈沖,1 有效,外部地址鎖存信號(hào)。 ea 非(31):輸入,0 有效,前 4k 選擇外部程序存儲(chǔ)器的控制信號(hào)。 psen 非(29):輸出,0 有效,訪問外部程序存儲(chǔ)器的選通信號(hào)。 6 wr 非(16):外部數(shù)據(jù)存儲(chǔ)器寫控制信號(hào) rd 非(17):外部數(shù)據(jù)存儲(chǔ)器讀控制信號(hào) rst(

14、9):輸入,高電平持續(xù) 24 個(gè)時(shí)鐘周期有效,產(chǎn)生復(fù)位操作。 圖 2.5 上電與手動(dòng)復(fù)位電路 5) cpu 使用的特殊功能寄存器 累加器(acc) 運(yùn)算指令的目標(biāo)寄存器,用于訪問外部存儲(chǔ)器的唯一寄存器。 b 寄存器(b)專用于乘除法指令,亦可作通用寄存器。 程序狀態(tài)字(psw) 標(biāo)志寄存器 d7 d0 cycyacacf0f0rs1rs1rs0rs0ovovp p cy:進(jìn)位標(biāo)志;位操作累加器。 ac:半進(jìn)位標(biāo)志。 f0 :用戶標(biāo)志,由用戶自行設(shè)置,在程序運(yùn)行中標(biāo)識(shí)某種狀態(tài)。 ov:溢出標(biāo)志。 p:奇偶標(biāo)志(標(biāo)識(shí) acc 的當(dāng)前奇偶狀態(tài)) rs1、rs0:當(dāng)前工作寄存器組編號(hào)值,可在程序中設(shè)定

15、。 堆棧指針(sp) 據(jù)指針(dptr) 16 位寄存器,由兩個(gè) 8 位寄存器 dph 與 dpl 組成。 主要作用是提供訪問外部數(shù)據(jù)存儲(chǔ)器或 i/o 端口的地址。 dph 與 dpl 可作為通用寄存器使用。 程序計(jì)數(shù)器(pc) 即指令指針。16 位寄存器,為 cpu 提供當(dāng)前待取的指令地址。 cpu 每讀取一個(gè)字節(jié)的指令內(nèi)容,pc 即自動(dòng)加一。 7 復(fù)位狀態(tài)為 0000h。 不能在程序中直接讀或修改 pc 的內(nèi)容。 6) 特殊功能寄存器 表 2 特殊功能寄存器功能說明 符號(hào)名地址 功 能 說 明 p080hp0 口鎖存器,可用于數(shù)據(jù)總線與地址線低八位。 sp81h堆棧指針,系統(tǒng)復(fù)位時(shí) sp=

16、07h,監(jiān)控初始化時(shí) sp=40h。 dpl82h 數(shù)據(jù)地址指針寄存器 dptr 的低八位。 dph83h 數(shù)據(jù)地址指針寄存器 dptr 的高八位。 pcon87h電源控制寄存器,可設(shè)置節(jié)電狀態(tài)。d7 為波特率因子。 tcon88h 定時(shí)器控制寄存器,d4-7 控制定時(shí)器,d0-3 與外中斷有關(guān)。 tmod89h 定時(shí)器工作方式控制寄存器 tl08ah t0 計(jì)數(shù)器低八位。 tl18bh t1 計(jì)數(shù)器低八位。 th08ch t0 計(jì)數(shù)器高八位。 th18dh t1 計(jì)數(shù)器高八位。 p190h p1 口鎖存器。 scon98h 串行口控制寄存器。 sbuf99h 串行口數(shù)據(jù)緩沖寄存器。 p2a0

17、hp2 口鎖存器,可用于地址總線高八位。 iea8h中斷允許寄存器。 p3b0hp3 口鎖存器,各位有第二功能如 txd.rxd.int0.int1等。 ipb8h 中斷優(yōu)先級(jí)寄存器。 pswd0h 程序狀態(tài)字, 含狀態(tài)標(biāo)志位及工作寄存器組指針 rsi。 acce0h 累加器。 bf0h 乘除運(yùn)算寄存器,也可用作八位通用寄存器。 特殊功能寄存器只能直接尋址,寄存器名即代表其地址。 字節(jié)地址可被 8 整除的特殊功能寄存器可以位尋址。其 d0 位的位地址與字節(jié)地 8 址相同,后面逐位加一。 3.外部中斷源 mcs-51 單片機(jī)設(shè)有四個(gè)雙向 i/o 端口(p0,p1,p2,p3),每一條 i/o 線

18、都能獨(dú) 立地用作輸入或輸出。p0 口為三態(tài)雙向口,能帶 8 個(gè) lsttl 電路。p1,p2,p3 口為準(zhǔn) 雙向口,負(fù)載能力為 4 個(gè) lsttl 電路。 (1)多個(gè)外部中斷源系統(tǒng)設(shè)計(jì) mcs-51 有兩個(gè)中斷源,但在實(shí)際的應(yīng)用系統(tǒng)中,外部中斷請(qǐng)求源往往比較多。 定時(shí)器中斷作為外部中斷使用把 mcs-51 的兩個(gè)定時(shí)器/計(jì)數(shù)器(t0 和 t1)選擇為計(jì) 數(shù)器方式,每當(dāng) t0 或 t1 引腳上發(fā)生負(fù)跳變時(shí),t0 和 t1 的計(jì)數(shù)器加 1。利用這個(gè)特 性,可以把 t0 和 t1 引腳作為外部中斷請(qǐng)求標(biāo)志。而定時(shí)器的益出中斷作為外部中 斷請(qǐng)求標(biāo)志。 當(dāng)接在 t0 引腳上的外部中斷請(qǐng)求輸入線發(fā)生負(fù)跳變

19、時(shí),tl0 加 1 益出,tf0 被 置“1”向 cpu 發(fā)出中斷請(qǐng)求。同時(shí) th0 的內(nèi)容自動(dòng)送入 tl0,使 tl0 恢復(fù)初始值 0ffh。這樣,每當(dāng) t0 引腳上有一次負(fù)跳變時(shí)都置“1”與 tf0,向 cpu 發(fā)中斷請(qǐng)求, t0 引腳就相當(dāng)于邊沿觸發(fā)的外部中斷請(qǐng)求源輸入線。同理,也可以把 t1 引腳作類 似的處理。 圖 2.6 五個(gè)外部中斷源連接 8031 設(shè)備0 設(shè)備1 設(shè)備2 設(shè)備3 設(shè)備4 int0 int1 p1.0 p1.1 p1.2 p1.3 9 (2)五個(gè)外部中斷源連接中斷和查詢結(jié)合的方式。 這種方法是把系統(tǒng)中多個(gè)外部中斷源按它們的重要程度進(jìn)行排隊(duì),把其中最高級(jí)別 的中斷源

20、接到 mcs-51 的一個(gè)外部中斷源輸入端,其余的中斷源用線或的方法連接到 另一個(gè)外部中斷輸入端,并同時(shí)還接到一個(gè) i/o 口。中斷請(qǐng)求有硬件電路產(chǎn)生,而 中斷源的識(shí)別由程序查詢來處理,查詢順序由中斷源的優(yōu)先級(jí)決定。上圖為五個(gè)外 部中斷源的連接電路,其中設(shè)備 14 經(jīng) oc 門與 int1 連接,并連接到 p1.0p1.3 均 采用電平觸發(fā)方式。設(shè)備 0 為最高級(jí)中斷源,單獨(dú)作為外部中斷 0 的輸入信號(hào)。外 部中斷 1 的中斷服務(wù)程序如下: intr:pushpsw pusha jnbp1.0, dvt1 jnbp1.1,dvt2 jnbp1.2, dvt3 jnbp1.3, dvt4 int

21、r1:pop a poppsw ret1 dvt1: ajmp intr1 dvt2: ajmp intr1 dvt3: ajmp intr1 dvt4: ajmp intr1 2.22.2 傳感器的選擇傳感器的選擇 現(xiàn)代信息技術(shù)的三大基礎(chǔ)是信息采集(即傳感器技術(shù))、信息傳輸(通信技術(shù))和 信息處理(計(jì)算機(jī)技術(shù))。傳感器屬于信息技術(shù)的前沿尖端產(chǎn)品,尤其是溫度傳感器 被廣泛用于工農(nóng)業(yè)生產(chǎn)、科學(xué)研究和生活等領(lǐng)域,數(shù)量高居各種傳感器之首。傳感 器選擇的恰當(dāng)與否直接關(guān)系到整個(gè)測(cè)量系統(tǒng)的精確度和穩(wěn)定性。 10 1 2 3 2.2.1 溫度傳感器選擇 近百年來,溫度傳感器的發(fā)展大致經(jīng)歷了以下三個(gè)階段;(1

22、)傳統(tǒng)的分立式溫度 傳感器(含敏感元件);(2)模擬集成溫度傳感器控制器;(3)智能溫度傳感器。根 據(jù)系統(tǒng)的設(shè)計(jì)要求和從經(jīng)濟(jì)實(shí)用的角度來看,本系統(tǒng)采用了 ad590 作為溫度傳感器。 ad590 的簡(jiǎn)單介紹的簡(jiǎn)單介紹 ad590 是 ad 公司利用 pn 結(jié)正向電流與溫度的關(guān)系制成的電流輸出型兩端溫 度傳感器。實(shí)際上,中國也開發(fā)出了同類型的產(chǎn)品 sg590。這種器件在被測(cè)溫度一 定時(shí),相當(dāng)于一個(gè)恒流源。該器件具有良好的線性和互換性,測(cè)量精度高,并具有 消除電源波動(dòng)的特性。即使電源在 515v 之間變化,其電流只是在 1a 以下作微 小變化。 1.ad5901.ad590 的功能及特性:的功能及

23、特性: ad590是電流型溫度傳感器,通過對(duì)電流的測(cè)量可得到所需要的溫度值。根據(jù)特 性分擋ad590,的后綴以i,j,k,l,m表示。ad590l, ad590m一般用于精密溫度測(cè)量電 路,其電路外形如圖6 所示,它采用金屬殼3腳封裝,其中1腳為電源正端v+;2腳為 電流輸出端i0;3腳為管殼,一般不用。集成溫度傳感器的電路符號(hào)如下圖所示。 v+ 1 2 3 v- 圖2.7 ad590的外形電路圖和集成溫度傳感器電路符號(hào) 2.ad5902.ad590的主特性參數(shù)如下:的主特性參數(shù)如下: 工作電壓:430v; 工作溫度:55150 保存溫度:65175; 正向電壓:44v; 反向電壓:20v;

24、焊接溫度:(10s);300; 靈敏度:1a/k 11 3.ad5903.ad590的工作原理的工作原理 在被測(cè)溫度一定時(shí),ad590相當(dāng)于一個(gè)恒流源,把它和530v的直流電源相連, 并在輸出端串接一個(gè)1k的恒值電阻,那么,此電阻上流過的電流將和被測(cè)溫度成 正比, 此時(shí)電阻兩端將會(huì)有1mv/k的電壓信號(hào)。其基本電路如下圖2.8所示。 i1 i2 電源 es - ube + 圖2.8 感溫部分的核心電路 圖2.8是利用ube特性的集成pn結(jié)傳感器的感溫部分核心電路。其中t1、t2 起恒流作用,可用于使左右兩支路的集電極電流i1和i2相等;t3、t4是感溫用的 晶體管,兩個(gè)管的材質(zhì)和工藝完全相同,

25、但t3實(shí)質(zhì)上是由n個(gè)晶體管并聯(lián)而成, 因而其結(jié)面積是t4的n倍。t3和t4的發(fā)射結(jié)電壓ube3和ube4經(jīng)反極性串聯(lián)后加在電 阻r上,所以r上端電壓為ube。因此,電流i1為: i1ube/r=(kt/q)(lnn)/r 對(duì)于ad590,n=8,這樣電路的總電流將與熱力學(xué)溫度t成正比,將此電流引至 負(fù)載電阻rl上便可得到與t成正比的輸出電壓。由于利用了恒流特性,所以輸出 信號(hào)不受電源電壓和導(dǎo)線電阻的影響。圖2.8中的電阻r是在硅板上形成的薄膜電 阻,該電阻已用激光修正了其電阻值,因而在基準(zhǔn)溫度下可得到1a/k的i值。 4.4.測(cè)溫電路的設(shè)計(jì)測(cè)溫電路的設(shè)計(jì) 100mv/ 12 圖 2.9 溫度傳

26、感器的接口電路 在設(shè)計(jì)測(cè)溫電路時(shí),首先應(yīng)將電流轉(zhuǎn)換成電壓。由于 ad590 為電流輸出元件, 它的溫度每升高 1k,電流就增加 1a。當(dāng) ad590 的電流通過一個(gè) 10k 的電阻時(shí), 這個(gè)電阻上的壓降為 10mv/k,即轉(zhuǎn)換成 10mv/k,為了使此電阻精確(0.1%) ,可用 一個(gè) 9.6k 的電阻與一個(gè) 1k 的電位器串聯(lián),然后通過調(diào)節(jié)電位器來獲得精確的 10k。圖 2.9 所示是一個(gè)電流/電壓和絕對(duì)/攝氏溫標(biāo)的轉(zhuǎn)換電路,其中運(yùn)算放大器 a1 被接成電壓跟隨器形式,以增加信號(hào)的輸入阻抗。而運(yùn)放 a2 的作用是把絕對(duì)溫 標(biāo)轉(zhuǎn)換成攝氏溫標(biāo),給 a2 的同相輸入端輸入一個(gè)恒定的電壓(如 1.2

27、35v) ,然后將 此電壓放大到 2.73v。這樣,a1 與 a2 輸出端之間的電壓即為轉(zhuǎn)換成的攝氏溫標(biāo)。將 ad590 放入 0的冰水混合溶液中,a1 同相輸入端的電壓應(yīng)為 2.73v,同樣使 a2 的 輸出電壓也為 2.73v,因此 a1 與 a2 兩輸出端之間的電壓: 2.732.730v 即對(duì)應(yīng)于 0。 2.2.2 濕度傳感器的選擇 濕度傳感器選用是濕度傳感器選用 hm1500,hm1500 是一種專門為那些 oem 要 求可靠性和精度高的測(cè)量所設(shè)計(jì)的,在基于 hs1101 簡(jiǎn)單電容性濕度傳感器的基礎(chǔ)上, 測(cè)量值直接以線性電壓的形式輸出,精度達(dá)到3%rh。 1.hm15001.hm15

28、00 主要的特點(diǎn):主要的特點(diǎn): 體積小、帶防護(hù)棒狀封裝。 即使浸在水里也不受影響。 可交換性極強(qiáng)。 高度的可靠性和長(zhǎng)期的穩(wěn)定性。 在 3-7 伏的電壓范圍內(nèi)可正常工作。,以典型的 1-4v 電壓輸出表示 1- 100%的濕度。 可在很低的溫度下正常工作。 在電壓范圍內(nèi),按比例參數(shù)調(diào)壓。 在長(zhǎng)時(shí)間處于飽和狀態(tài)后快速脫濕 反應(yīng)時(shí)間快 對(duì)化學(xué)品的高抵抗性 13 2.hm15002.hm1500 工作原理工作原理: 圖 2.10 hm1500 工作原理框圖 3.3.最大參數(shù)(最大參數(shù)(ta=25ta=25 除非特別注明)除非特別注明) 4.4.特性參數(shù)(特性參數(shù)(ta=23,vs=5.0vdc,rl1

29、mta=23,vs=5.0vdc,rl1m 除非特別注明)除非特別注明) vout 晶體管振蕩器 傳 感 器 l.p.濾波器 gain 14 3 4 . 2)23(1 (% etarhrh read 5.hm15005.hm1500 的典型測(cè)量范圍的典型測(cè)量范圍 hm1500 特別適用于在 1095%rh 精確測(cè)量的環(huán)境。超過范圍(95%包 括飽和)不會(huì)影響可靠性。 圖 2.11 典型測(cè)量范圍輸出圖 6.hm15006.hm1500 模擬電壓輸出曲線(模擬電壓輸出曲線(vs=5vvs=5v) 單位:?jiǎn)挝唬簃vmv 如果需要可以用如下的關(guān)系式做補(bǔ)償: 溫度效應(yīng): 非小線性補(bǔ)償: 15 3 3 2

30、 5 3 9 4 . 2)23(1 75.21607. 9335. 1919 . 1 % eta veveve rh outoutout 7.hm15007.hm1500 工作曲線如下:工作曲線如下: 圖 2.12 hm1500 工作曲線 16 第三章第三章 系統(tǒng)的組成以及輔助電路的設(shè)計(jì)系統(tǒng)的組成以及輔助電路的設(shè)計(jì) 整個(gè)溫濕度檢測(cè)系統(tǒng)結(jié)構(gòu)框圖如圖 1 所示: 圖 3.1 系統(tǒng)結(jié)構(gòu)框圖 上位機(jī)為普通 pc 機(jī),使用標(biāo)準(zhǔn) rs-232 串口與下位機(jī)通訊,接收下位機(jī)發(fā)來的 溫度數(shù)據(jù)和濕度數(shù)據(jù)。 下位機(jī)系統(tǒng)主要由單片機(jī) at89c51、溫度傳感器 ad590、濕度傳感器 hm1500、 顯示電路 hd

31、7279a 和 led 數(shù)碼管組成,原理框圖如圖 12 所示。 圖 3.2 下位機(jī)原理框圖 3.13.1 采樣保持器和采樣保持器和 adad 轉(zhuǎn)換電路的設(shè)計(jì)轉(zhuǎn)換電路的設(shè)計(jì) 3.1.1 采樣保持器 由于 adc0809 的分辨率為 8 位,轉(zhuǎn)換時(shí)為 100s,可能會(huì)由于轉(zhuǎn)換的時(shí)期帶來 誤差。因此常用集成電路芯片 lf398 作為采樣保持器。lf398 是一種反饋型采樣/保 持放大電路。采用雙極型結(jié)型場(chǎng)效應(yīng)管工藝,具有采樣速度高,保持電壓下降 率低,精度高等特點(diǎn),lf398 的供電電壓可在5v18v 之間選擇,8 腳和 7 腳是兩 串口 下位機(jī) 上位機(jī) 上位機(jī) 濕度傳感器 hm1500 at89c

32、51 溫度傳感器 ad590 顯示電路 hd7279a led 數(shù)碼管 a/d i/o 串口 i/oa/d 17 個(gè)控制端使用時(shí) 7 腳接參考電壓,可選擇不同的電平,如當(dāng) 7 腳接地時(shí),8 腳所控 制信號(hào)電平大于 1.4v,lf398 處于采樣狀態(tài),此時(shí)輸出端跟隨輸入端變化。當(dāng) 8 腳 為低電平時(shí),lf398 處于保持狀態(tài)。 由于 lf398 采用的是反相輸入端,因此還需要一個(gè)倒相器,選擇 lm324(反相 比例放大器) 。lf398 與 lm324。 3.1.2 a/d 轉(zhuǎn)換器 adc0809 a/d轉(zhuǎn)換器(adc)的作用就是把模擬量轉(zhuǎn)換成數(shù)字量,以便于計(jì)算機(jī)進(jìn)行處理。 隨著超大規(guī)模集成電路

33、技術(shù)的飛速發(fā)展,a/d轉(zhuǎn)換器的新設(shè)計(jì)思想和制造技術(shù)層出不 窮。為滿足各種不同的檢測(cè)及控制任務(wù)的需要,大量結(jié)構(gòu)不同、性能各異的a/d轉(zhuǎn)換 器芯片應(yīng)運(yùn)用而生。adc0809是采用cmos工藝制造的8位8通道逐次逼近式ad轉(zhuǎn)換器。 1.adc08091.adc0809結(jié)構(gòu)及轉(zhuǎn)換原理結(jié)構(gòu)及轉(zhuǎn)換原理 adc0809的結(jié)構(gòu)框圖如下圖中所示。0809是采用逐次逼近的方法完成a/d轉(zhuǎn)換的。 由單一的5v電源供電;片內(nèi)帶有鎖存功能的8路選一的模擬開關(guān),由c、b、a的編 碼來決定所選的通道。0809完成一次轉(zhuǎn)換需要100s左右。輸出具有ttl三態(tài)鎖存緩 沖器,連接到mcs-51的數(shù)據(jù)總線上。通過適當(dāng)?shù)耐饨与娐罚?

34、圖3.3 adc0809轉(zhuǎn)換原理圖 adc0809可對(duì)05v的模擬信號(hào)進(jìn)行轉(zhuǎn)換。其工作過程如下: 首先用指令選擇0809的一個(gè)模擬輸入通道,當(dāng)執(zhí)行movxdptr,a時(shí),產(chǎn)生一個(gè) 啟動(dòng)信號(hào)給start引腳送入脈沖,開始對(duì)選中通道轉(zhuǎn)換。當(dāng)轉(zhuǎn)換結(jié)束后發(fā)出結(jié)束信號(hào), 置eoc腳為高電平,該信號(hào)可作為中斷申請(qǐng)信號(hào);當(dāng)讀允許信號(hào)到,oe端有高電平, 則可以讀出轉(zhuǎn)換的數(shù)字量。利用movx a,dptr把該通道轉(zhuǎn)換結(jié)果讀到a累加器中。 18 2.adc08092.adc0809引腳及功能引腳及功能 adc0809是一種逐次逼近式8路模擬輸入、8位數(shù)字量輸出的a/d轉(zhuǎn)換器。其引腳 圖如下圖所示 圖3.4 ad

35、c0809管腳示意圖 由引腳圖可見,adc0809共有28引腳,采用雙列直插式封裝。其主要引腳功能 如下: in0in7:是8路模擬信號(hào)輸入端。 d0d7:8位數(shù)字量輸出端。 a、b、c與ale控制8路模擬通道的切換,a、b、c分別于三根地址線或數(shù)據(jù)線相 連,三者編碼對(duì)應(yīng)8個(gè)通道地址口。c、b、a000111分別對(duì)應(yīng)in0-in7通道地址。 強(qiáng)調(diào)說明一點(diǎn):adc0809雖然有8路模擬通道可以同時(shí)輸入8路模擬信號(hào),但每個(gè)瞬間 只能轉(zhuǎn)換一路,各路之間的切換由軟件變換通道地址實(shí)現(xiàn)。 oe、start、clk為控制信號(hào)端,oe為輸出允許端,start為啟動(dòng)信號(hào)輸入端, clk為時(shí)鐘信號(hào)輸入端。 vr(

36、)和vr()為參考電壓輸入端。 3.at89c513.at89c51與與adc0809adc0809的接口的接口 在討論mcs-51與0809的接口設(shè)計(jì)之前,先來討論單片機(jī)如何來控制adc的問題。 用單片機(jī)控制adc時(shí),多數(shù)采用查詢和中斷控制兩種方法。查詢法是在單片機(jī)把啟動(dòng) 命令送到adc之后,執(zhí)行別的程序,同時(shí)對(duì)adc的狀態(tài)進(jìn)行查詢,以檢查adc變換是否 已經(jīng)結(jié)束,如查詢到變換已經(jīng)結(jié)束,則讀入轉(zhuǎn)換完畢的數(shù)據(jù)。 19 中斷控制法是在啟動(dòng)信號(hào)送到adc之后,單片機(jī)執(zhí)行別的程序。當(dāng)adc變換結(jié)束并向 單片機(jī)發(fā)出中斷請(qǐng)求信號(hào)時(shí),單片機(jī)響應(yīng)此中斷請(qǐng)求,進(jìn)入中斷服務(wù)子程序,讀入 轉(zhuǎn)換數(shù)據(jù),并進(jìn)行必要的數(shù)

37、據(jù)處理,然后返回到源程序。這種方法單片機(jī)無須進(jìn)行 轉(zhuǎn)換時(shí)間的管理,cpu效率高,所以特別適用于變換時(shí)間較長(zhǎng)的adc。 如果對(duì)轉(zhuǎn)換速度要求高,采用上述兩種adc控制方式往往不能滿足要求,可采用 dma接口(例如intel公司的8237dma控制器)。傳輸一開始,ad轉(zhuǎn)換的數(shù)據(jù)就可以從 輸出的寄存器經(jīng)過dma中的數(shù)據(jù)寄存器直接傳輸?shù)街骷拇嫫?,因而不必受到程序的?制。 (1)軟件延時(shí)方式 adc0809與89c51單片機(jī)的接口如下圖中所示。 圖 3.5 adc0809與89c51單片機(jī)的接口電路 由于adc0809片內(nèi)無時(shí)鐘,可利用89c51提供的地址鎖存允許信號(hào)ale經(jīng)d觸發(fā)器 二分頻后獲得,a

38、le腳的頻率時(shí)89c51單片機(jī)時(shí)鐘頻率的1/6(但要注意的是,每當(dāng)訪 問外部數(shù)據(jù)存儲(chǔ)器時(shí),將少1個(gè)ale脈沖)。如果單片機(jī)時(shí)鐘頻率采用6mhz,則ale腳 的輸出頻率為1mhz,再二分頻后為500khz,恰好符合adc0809對(duì)時(shí)鐘頻率的要求。由 于adc0809具有輸出三態(tài)鎖存器,其8位數(shù)據(jù)輸出引腳可直接與數(shù)據(jù)總線相連。地址 譯碼引腳a、b、c分別與地址總線的低三位a0、a1、a2相連,以選通in0-in7中的一 個(gè)通路。將2.7(地址總線a15)作為片選信號(hào),在啟動(dòng)a/d轉(zhuǎn)換時(shí),由單片機(jī)的寫信 號(hào)和p2.7控制adc的地址鎖存和轉(zhuǎn)換啟動(dòng),由于ale和start連在一起,因此adc0809

39、的鎖存在鎖存通道地址的同時(shí),啟動(dòng)并進(jìn)行轉(zhuǎn)換。在讀取轉(zhuǎn)換結(jié)果時(shí),用低電平的 讀信號(hào)和p2.7腳經(jīng)一或非門后,產(chǎn)生的正脈沖作為oe信號(hào),用以打開三態(tài)輸出鎖存 20 器。 由以上分析可知:在軟件編寫時(shí),應(yīng)令p2.7a150;a0、a1、a2給出被選擇的模 擬通道的地址;執(zhí)行一條輸出指令,啟動(dòng)a/d轉(zhuǎn)換;執(zhí)行一條輸入指令,讀取轉(zhuǎn)換結(jié) 果。 (2)中斷方式 adc0809與89c51的中斷方式接口電路只需要將上圖中的eoc腳經(jīng)過一非門連接到 89c51的int1腳即可。采用中斷方式可大大節(jié)省cpu時(shí)間,當(dāng)轉(zhuǎn)換結(jié)束時(shí),eoc發(fā)出一 個(gè)脈沖向單片機(jī)提出中斷申請(qǐng),單片機(jī)響應(yīng)中斷請(qǐng)求,由外部中斷1的中斷服務(wù)子程

40、 序讀a/d結(jié)果,并啟動(dòng)0809的下一個(gè)轉(zhuǎn)換,外部中斷1采用跳沿觸發(fā)方式。 3.23.2 鍵盤與顯示芯片鍵盤與顯示芯片 hd7279ahd7279a 介紹介紹 3.2.1 hd7279a 芯片簡(jiǎn)介 1.1.芯片簡(jiǎn)介芯片簡(jiǎn)介 hd7279a硬件電路圖hd7279a是一種管理鍵盤和led顯示器的專用智能控制芯片。 它能對(duì)8位共陰極led顯示器或64個(gè)led發(fā)光管進(jìn)行管理和驅(qū)動(dòng),同時(shí)能對(duì)多達(dá)88的 鍵盤矩陣的按鍵情況進(jìn)行監(jiān)視,具有自動(dòng)消除鍵抖動(dòng)并識(shí)別按鍵代碼的功能,從而 可以提高cpu工作的效率。hd7279a和微處理器之間采用串行接口,其接口電路和外 圍電路簡(jiǎn)單,占用口線少,加之它具有較高的性能價(jià)

41、格比,因此,在微型控制器、 智能儀表、控制面板和家用電器等領(lǐng)域中日益獲得廣泛的應(yīng)用。 hd7279a是一片具有串行接口的,可同時(shí)驅(qū)動(dòng)8位共陰式數(shù)碼管的智能顯示驅(qū)動(dòng) 芯片,該芯片同時(shí)還可以連接多達(dá)64鍵的鍵盤矩陣,單片即可完成led顯示、鍵盤接 口的全部功能。 hd7279a內(nèi)部含有譯碼器,可直接接受bcd碼或者16進(jìn)制碼,并同時(shí)具有2種譯碼 方式,此外,還具有多種控制指令,如消隱、閃爍、左移、右移、段尋址等。 hd7279a具有片選信號(hào)可方便地實(shí)現(xiàn)多于8位的顯示或多于64位的鍵盤接口。 特點(diǎn)特點(diǎn): 串行接口,無需外圍元件可直接驅(qū)動(dòng)led 各位獨(dú)立控制譯碼、不譯碼、消隱以及閃爍等屬性 左右移動(dòng)指

42、令 具有段尋址指令,方便控制獨(dú)立的led 64鍵鍵盤控制器,內(nèi)含去抖動(dòng)電路 21 圖3.6 hd7279a管腳示意圖 2.2.管腳說明管腳說明 hd7279a的硬件電路如圖3.6所示,它共有28個(gè)引腳。 rc引腳用于連接hd7279a 的外接振蕩元件,其典型值為r=1.5k,c=15pf。reset為復(fù)位端。該端由低電平變 成高電平并保持25ms即復(fù)位結(jié)束。通常,該端接+5v即可。dig0dig7分別為8個(gè)led 管的位驅(qū)動(dòng)輸出端。sasg分別為led數(shù)碼管的a段g段的輸出端。dp為小數(shù)點(diǎn)的驅(qū)動(dòng) 輸出端。hd7279a片內(nèi)具有驅(qū)動(dòng)電路,它可以直接驅(qū)動(dòng)1英吋及以下的led數(shù)碼管,使 外圍電路變得

43、簡(jiǎn)單可靠。 dig0dig7和sasg同時(shí)還分別是64鍵盤的列線和行線端口, 完成對(duì)鍵盤的監(jiān)視、譯碼和鍵碼的識(shí)別。在88陣列中每個(gè)鍵的鍵碼是用十六進(jìn)制 表示的,可用讀鍵盤數(shù)據(jù)指令讀出,其范圍是00h3fh。 hd7279與微處理器僅需4條 接口線,其中cs為片選信號(hào)(低電平有效) 。當(dāng)微處理器訪問hd7279a(讀鍵號(hào)或?qū)?指令)時(shí),應(yīng)將片選端置為低電平。data為串行數(shù)據(jù)端,當(dāng)向hd7279a發(fā)送數(shù)據(jù)時(shí), data為輸入端;當(dāng)hd7279a輸出鍵盤代碼時(shí),data為輸出端。clk為數(shù)據(jù)串行傳送的 同步時(shí)鐘輸入端,時(shí)鐘的上升沿表示數(shù)據(jù)有效。key為按鍵信號(hào)輸出端,在無鍵按下 時(shí)為高電平;而有鍵

44、按下時(shí)此引腳變?yōu)榈碗娖讲⑶乙恢北3值芥I釋放為止。 表 1 所列為 hd7279a 的電特性。 參數(shù)符號(hào)測(cè)試條件最小值典型值最大值 電源電壓 vcc/v.4.55.05.5 工作電流 icc/ma 不接 led .35 工作電流 icc/ma led 全亮, iseg=10ma .60100 邏輯輸入高電 平 vih/v. 邏輯輸入低電 vil/v.0.0.8 22 平 按鍵響應(yīng)時(shí)間 tkey/ms 含去抖時(shí)間 101840 key 引腳輸入 電流 iki/ma.10 key 引腳輸出 電流 iko/ma.7 3.3. 控制指令控制指令 1)hd7279a 指令系統(tǒng)由 6 條純指令

45、、7 條帶數(shù)據(jù)指令和 1 條讀鍵盤指令組成。 6 條純指令為: (1) 復(fù)位指令。指令代碼為 a4h,其功能為清除所有顯示,包括字符消隱屬 性和閃爍屬性。 (2) 測(cè)試指令。指令代碼為 bfh,其功能為將所有的 led 點(diǎn)亮并閃爍,可用 于自檢。 (3) 左移指令。指令代碼為 a1h,其功能為將所有的顯示左移 1 位,移位后, 最右位空(無顯示),不改變消隱和閃爍屬性。 (4) 右移指令。指令代碼為 a0h,其功能與左移指令相似,只是方向相反。 (5) 循環(huán)左移指令。指令代碼為 a3h,其功能為將所有的顯示循環(huán)左移 1 位。 移位后,最左位內(nèi)容移至最右位,不改變消隱和閃爍屬性。 (6) 循環(huán)右

46、移指令。指令代碼為 a2h,其功能與循環(huán)左移指令相似,只是方 向相反。 2) 帶數(shù)據(jù)指令均由雙字節(jié)組成,它們是: (1) 按方式 0 譯碼下載指令 1 0 0 00 a2 a1 a0dp x x x d3 d2 d1 d0 x x:無影響 第 1 字節(jié)為指令,其中 a2,a1,a0 代表顯示位地址: a2,a1,a0 7 6 5 4 3 2 1 0 顯示位 8 7 6 5 4 3 2 1 23 顯示位 8 為最高位,參見圖 1。 第 2 字節(jié)為顯示內(nèi)容,其中 dp 為小數(shù)點(diǎn)控制 位,dp=1,小數(shù)點(diǎn)顯示;dp=0,小數(shù)點(diǎn)熄滅。 d3 d2 d1 d0 為數(shù)據(jù),按方式 0 譯碼 時(shí)數(shù)據(jù)和顯示的關(guān)

47、系如下: d3 d2 d1 d0 00h 01h 02h 03h 04h 05h 06hh 07h 08h 09h 0ah 0bh 0ch 0dh 0eh 0fh 顯示內(nèi)容 0 1 2345 67 8 9 - e h l p 空 (2) 按方式 1 譯碼下載指令 1 1 0 0 1 a2 a1 a0dp x x x d3 d2 d1 do 該指令和按方式 0 譯碼下載指令的含義基本相同。按方式 1 譯碼時(shí)數(shù)據(jù)和顯示 的關(guān)系如下: d3 d2 d1 d0 00h 01h 02h 03h 04h 05h 06hh 07h 08h 09h 0ah 0bh 0ch 0dh 0eh 0fh 顯示內(nèi)容 0

48、 1 23 4 5 67 8 9 -eh l p 空 (3) 不譯碼下載指令 1 0 0 10 a2 a1 a0dp a b cd e f g a2 a1 a0 仍為位地址,第 2 字節(jié)仍為顯示內(nèi)容,其中 dp 和 ag 分別代表小數(shù) 點(diǎn)和 led 顯示器的 7 段,相應(yīng)位為 1 時(shí),該段點(diǎn)亮;為 0 時(shí),該段熄滅。 (4) 閃爍控制指令 1 0 0 01 0 0 0d8 d7 d6 d5 d4 d3 d2 d1 該指令規(guī)定了每個(gè)數(shù)碼管的閃爍屬性。d1d8 分別對(duì)應(yīng)第 1 到第 8 個(gè)數(shù)碼管, 該位為 1 不閃爍;該位為 0 閃爍。缺省狀態(tài)為所有數(shù)碼管均不閃爍。 () 消隱控制指令 1 0 0

49、 1 1 0 0 0d8 d7 d6 d5 d4 d3 d2 d1 24 該指令規(guī)定了每個(gè)數(shù)碼管的消隱屬性。d1d8 分別對(duì)應(yīng)第 1 到第 8 個(gè)數(shù)碼管, 該位為 1 顯示;該位為 0 消隱。應(yīng)該注意的是至少要有 1 位保持顯示狀態(tài),如果全 部消隱則該命令無效。 (6) 段點(diǎn)亮指令 1 1 1 00 0 0 0 x x d5 d4 d3 d2 d1 d0 xx:無影響。該指令的作用是點(diǎn)亮某個(gè) led 數(shù)碼管中的某一段或 64 個(gè) led 發(fā)光 管中的某一個(gè)。d0d5 的范圍是 00h3fh,所對(duì)應(yīng)的段如下: 數(shù)據(jù) 00h 01h .06h 07h 08h 09h .0eh 0fh . .38h

50、 39h .3eh 3fh 段 g f . a dp g f . a dp . .g f . a dp 數(shù)碼管 第 1 個(gè) . .第 2 個(gè) . . . .第 8 個(gè) . . (7) 關(guān)閉指令 1 1 0 0 0 0 0 0x x d5 d4 d3 d2 d1 d0 xx:無影響。該指令的作用是關(guān)閉某個(gè)數(shù)碼管中的某一段,其對(duì)應(yīng)關(guān)系同段點(diǎn)亮 指令。 3)讀取鍵盤指令: 0 0 0 1 0 1 0 1d7 d6 d5 d4d3 d2 d1 d0 該指令的作用是讀取當(dāng)前的鍵盤代碼。與其他帶數(shù)據(jù)的指令不同,它的第 2 個(gè) 字節(jié)不是寫入 hd7279a 的數(shù)據(jù),而是從 hd7279a 讀回的按鍵代碼。如

51、前說述,當(dāng)有 鍵按下時(shí)其范圍是 00h3fh;而無鍵按下時(shí)代碼是 ffh。 4.4.時(shí)序時(shí)序 (1)純指令時(shí)序:微處理器發(fā)出 8 個(gè) clk 脈沖,向 hd7279a 傳送 8 位指令。 data 引腳為高阻狀態(tài),如圖 3.7 所示。 25 圖 3.7 純指令時(shí)序 (2) 帶數(shù)據(jù)指令時(shí)序:微處理器發(fā)出 16 個(gè) clk 脈沖,前 8 個(gè)向 hd7279a 傳送 8 位指令;后 8 個(gè)向 hd7279a 傳送 8 位數(shù)據(jù)。data 引腳為高阻狀態(tài),如圖 3.8 所示。 圖 3.8 帶數(shù)據(jù)指令時(shí)序 (3)讀鍵盤指令時(shí)序:微處理器發(fā)出 16 個(gè) clk 脈沖,前 8 個(gè)向 hd7279a 傳送 8

52、位指令, data 引腳為高阻狀態(tài);后 8 個(gè)由 hd7279a 向微處理器返回 8 位按鍵代碼, data 引腳為輸出狀態(tài)。在最后 1 個(gè) clk 脈沖的下降沿 data 引腳恢復(fù)高阻狀態(tài),如 圖 3.9 所示。 圖 3.9 讀鍵盤指令時(shí)序 26 5.5.幾點(diǎn)說明幾點(diǎn)說明 1) 證正確的時(shí)序是 hd7279a 正常工作的前提條件。當(dāng)選定了 hd7279a 的振蕩元 件 rc 和晶振之后,應(yīng)調(diào)節(jié)延時(shí)時(shí)間,使時(shí)序中的 t1t8 滿足表 2 所列要求。由表 2 所列的數(shù)值可知,hd7279a 時(shí)序規(guī)定的時(shí)間范圍很寬,達(dá) 1050 倍,很容易滿足, 但為了提高微處理器訪問 hd7279a 的速度,在

53、要求系統(tǒng)運(yùn)行速度較快時(shí),應(yīng)仔細(xì)調(diào) 試 hd7279a 的讀寫程序,使其運(yùn)行時(shí)間接近最短。 2)微處理器通過 key 引腳電平來判斷是否有鍵按下,在使用查詢方式管理鍵盤 時(shí),該引腳接至微處理器的 1 位 i/o 端口;如果使用中斷方式,該引腳應(yīng)接至微處 理器的外部中斷輸入端。同時(shí)應(yīng)將該中斷觸發(fā)控制位設(shè)置成下降沿有效的邊沿觸發(fā) 方式。若置成電平觸發(fā)方式,則應(yīng)注意在按鍵時(shí)間較長(zhǎng)時(shí)可能引起的多次中斷問題。 3)hd7279a 沒有提供組合鍵功能。如果某些場(chǎng)合確需雙鍵組合使用,可在微處理 器某位 i/o 引腳接入一鍵,與 hd7279a 所連鍵盤共同組成雙鍵功能。 4)圖 1 電路中有 3 種電阻:阻值

54、為 200 的電阻是限流電阻,用來限制 led 數(shù) 碼管的電流。在使用中不應(yīng)為了過分追求數(shù)碼管的亮度而任意減小其電阻值,以防 hd7279a 芯片過熱燒壞。阻值為 100k 和 10k 的電阻分別稱為下拉電阻和位選電 阻,如果 hd7279a 僅用于顯示器管理,則這兩種電阻都可以去掉。 5)hd7279a 的 3,5,26 腳均為空閑引腳,一律懸空。 3.2.2 顯示電路 1.顯示電路由顯示芯片 hd7279a 和 8 個(gè) led 數(shù)碼管組成,顯示電路圖如圖 3.10 所示。 27 圖 3.10 顯示電路原理圖 8 個(gè)共陰極 led 數(shù)碼管用于顯示溫度和濕度,第 8 位為溫度符號(hào)位,第 7 位

55、為 溫度百位數(shù)字,第 6 位為溫度十位溫度小數(shù)位數(shù)字,第 3 位為濕度標(biāo)志位,第 2 位 為濕度十位數(shù)字。第 1 位濕度個(gè)位 3.2.3 串行通訊接口電路 隨著計(jì)算機(jī)系統(tǒng)的應(yīng)用和微機(jī)網(wǎng)絡(luò)的發(fā)展,通信功能越來越顯的重要。這里所 說的通信是只計(jì)算機(jī)與外界的信息交換。因此,通信既包括計(jì)算機(jī)與外部設(shè)備之間, 也包括計(jì)算機(jī)和計(jì)算機(jī)之間的信息交換。由于串行通信是在一根傳輸線上一位一位 的傳送信息,所用的傳輸線少,并且可以借助現(xiàn)成的電話網(wǎng)進(jìn)行信息傳送,因此, 特別適合于遠(yuǎn)距離傳輸。對(duì)于那些與計(jì)算機(jī)相距不遠(yuǎn)的人機(jī)交換設(shè)備和串行存儲(chǔ) 的外部設(shè)備如終端、打印機(jī)、邏輯分析儀、磁盤等,采用串行方式交換數(shù)據(jù)也很普 遍。

56、在實(shí)時(shí)控制和管理方面,采用多臺(tái)微機(jī)處理機(jī)組成分級(jí)分布控制系統(tǒng)中,各 cpu 之間的通信一般都是串行方式。所以串行接口是微機(jī)應(yīng)用系統(tǒng)常用的接口。 許多外設(shè)和計(jì)算機(jī)按串行方式進(jìn)行通信,這里所說的串行方式,是指外設(shè)與接 口電路之間的信息傳送方式,實(shí)際上,cpu 與接口之間仍按并行方式工作。 1.1.串行通信的概念串行通信的概念 圖 3.11 數(shù)據(jù)傳輸示意圖 所謂“串行通信”是指外設(shè)和計(jì)算機(jī)間使用一根數(shù)據(jù)信號(hào)線(另外需要地線,可 能還需要控制線),數(shù)據(jù)在一根數(shù)據(jù)信號(hào)線上一位一位地進(jìn)行傳輸,每一位數(shù)據(jù)都占 據(jù)一個(gè)固定的時(shí)間長(zhǎng)度。如圖 3.11 所示。這種通信方式使用的數(shù)據(jù)線少,在遠(yuǎn)距離 通信中可以節(jié)約通

57、信成本,當(dāng)然,其傳輸速度比并行傳輸慢。 由于 cpu 與接口之間按并行方式傳輸,接口與外設(shè)之間按串行方式傳輸,因此, 在串行接口中,必須要有“接收移位寄存器” (串并)和“發(fā)送移位寄存器” (并 串) 。典型的串行接口的結(jié)構(gòu)如圖 3.12 所示。 在數(shù)據(jù)輸入過程中,數(shù)據(jù) 1 位 1 位地從外設(shè)進(jìn)入接口的“接收移位寄存器” ,當(dāng) “接收移位寄存器”中已接收完 1 個(gè)字符的各位后,數(shù)據(jù)就從“接收移位寄存器” 進(jìn)入“數(shù)據(jù)輸入寄存器” 。cpu 從“數(shù)據(jù)輸入寄存器”中讀取接收到的字符。 (并行 讀取,即 d7d0 同時(shí)被讀至累加器中) 。 “接收移位寄存器”的移位速度由“接收時(shí) 鐘”確定。 在數(shù)據(jù)輸出

58、過程中,cpu 把要輸出的字符(并行地)送入“數(shù)據(jù)輸出寄存器” , 28 “數(shù)據(jù)輸出寄存器”的內(nèi)容傳輸?shù)健鞍l(fā)送移位寄存器” ,然后由“發(fā)送移位寄存器” 移位,把數(shù)據(jù) 1 位 1 位地送到外設(shè)。 “發(fā)送移位寄存器”的移位速度由“發(fā)送時(shí)鐘” 確定。 接口中的“控制寄存器”用來容納 cpu 送給此接口的各種控制信息,這些控制 信息決定接口的工作方式。 “狀態(tài)寄存器”的各位稱為“狀態(tài)位” ,每一個(gè)狀態(tài)位都可以用來指示數(shù)據(jù)傳輸 過程中的狀態(tài)或某種錯(cuò)誤。例如,用狀態(tài)寄存器的 d5 位為“1”表示“數(shù)據(jù)輸出寄 存 圖 3.12 典型的串行接口的結(jié)構(gòu) 器”空,用 d0 位表示“數(shù)據(jù)輸入寄存器滿” ,用 d2

59、位表示“奇偶檢驗(yàn)錯(cuò)”等。此設(shè) 計(jì)就采用了 rs232 通訊接口,電路采用 max3221 芯片,其原理圖如圖 23 所示。通過 以上的電路 pc 機(jī)就可以自由的和單片機(jī)進(jìn)行信息交換了。 29 圖 3.13 rs232 通訊接口 30 第四章第四章 軟件設(shè)計(jì)軟件設(shè)計(jì) 軟件的設(shè)計(jì)是整個(gè)系統(tǒng)的靈魂,也是系統(tǒng)能夠?qū)崿F(xiàn)功能的基礎(chǔ)。程序設(shè)計(jì)的好 壞,直接關(guān)系到整個(gè)系統(tǒng)的運(yùn)行,本設(shè)計(jì)的軟件系統(tǒng)分為兩個(gè)部分:一部分是上位 機(jī)的 vb 編程設(shè)計(jì);一部分是下位機(jī)的 51 系統(tǒng)的匯編語言設(shè)計(jì)。 4.14.1 上位機(jī)簡(jiǎn)介以及軟件設(shè)計(jì)上位機(jī)簡(jiǎn)介以及軟件設(shè)計(jì) 4.1.1 visual basic 語言編程簡(jiǎn)介 上位機(jī)軟件

60、采用 visual basic 編程,visual 意為“可視化的” ,指的是一種開 發(fā)圖形用戶界面(gui)的方法,所以 visual basic 是基于 basic 的可視化的程序 設(shè)計(jì)語言。basic 指的是 basic(beginners all-purpose symbolicinstruction code,初學(xué)者通用符號(hào)指令代碼)語言,一種在計(jì)算技術(shù)發(fā)展歷史上應(yīng)用得最為廣 泛的語言。visual basic 在原有 basic 語言的基礎(chǔ)上進(jìn)一步發(fā)展,包含了數(shù)百條 語句、函數(shù)及關(guān)鍵詞,其中很多和 windows gui 有直接關(guān)系。在 visual basic 中, 一方面繼承了

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論