壓力測試系統(tǒng)課程設(shè)計(jì)_第1頁
壓力測試系統(tǒng)課程設(shè)計(jì)_第2頁
壓力測試系統(tǒng)課程設(shè)計(jì)_第3頁
壓力測試系統(tǒng)課程設(shè)計(jì)_第4頁
壓力測試系統(tǒng)課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、目錄 摘 要 2 第一章 設(shè)計(jì)背景 1.1 壓力測試系統(tǒng)的相關(guān)背 景3 1.2 總體設(shè)計(jì)方案論 證 3 1.2.1 壓力測試系統(tǒng)設(shè)計(jì)框 圖3 1.2.2 壓力測試系統(tǒng)設(shè)計(jì)框圖分 析 3 1.2.3 總體設(shè)計(jì)方案分 析4 第二章 硬件設(shè)計(jì) 2.1 AT89C51 單片機(jī)簡 介5 2.1.1 主要特 2.1.2 管腳說 明6 2.1.3 AT89C51 單片機(jī)在電路圖中連 接7 2.2 51 單片機(jī)最小系統(tǒng)的設(shè) 計(jì)8 2.2.1 單片機(jī)組 成 8 2.2.2 51 單片機(jī)最小系統(tǒng)電路介 紹 8 2.3 壓力傳感 器9 2.3.1 壓力傳感器的選 擇9 2.3.2 壓力傳感器工作原 理 9 2.3.

2、3 電阻應(yīng)變 片 9 2.4 模數(shù)轉(zhuǎn)換電路的設(shè) 計(jì) 10 2.4.1 模數(shù)轉(zhuǎn) 換10 2.4.2 ADC0808 芯 片10 2.5 接口電路的設(shè) 計(jì)13 2.6 驅(qū)動(dòng)與顯示電 路14 2.6.1 74LS245 的原 理 14 2.6.2 74LS245 驅(qū)動(dòng)電 路15 2.7 電源電路的設(shè) 計(jì)16 2.8 原理 圖16 第三章 軟件設(shè)計(jì) 3.1 總體流程 圖17 3.2 子程 序17 3.2.1 A/D 轉(zhuǎn)換子程 序17 3.2.2 顯示子程 序 17 第四章 調(diào)試及仿真 4.1 程序代 碼 18 4.2 仿真結(jié) 果 20 4.3 數(shù)據(jù)分 析 20 附錄一 課程設(shè)計(jì)總 結(jié)21 附錄二 參考

3、文 獻(xiàn) 22 摘要 此次設(shè)計(jì)是基于單片機(jī)的壓力檢測系統(tǒng),選擇的單片機(jī)是基于 AT89C51單片機(jī)的測量與顯示,將壓力經(jīng)過壓力傳感器轉(zhuǎn)變?yōu)殡娦盘?hào),經(jīng) 過放大器放大,然后進(jìn)入 A/D 轉(zhuǎn)換器將模擬量轉(zhuǎn)換為數(shù)字量顯示,我們所 采樣的 A/D 轉(zhuǎn)換器為 ADC0808。 第一章 設(shè)計(jì)背景 1.1 壓力測試系統(tǒng)的相關(guān)背景 近年來,隨著微型計(jì)算機(jī)的發(fā)展,傳感器在人們的工作和日常生活中 應(yīng)用越來越普遍。壓力是工業(yè)生產(chǎn)過程中的重要參數(shù)之一。壓力的檢測或 控制是保證生產(chǎn)和設(shè)備安全運(yùn)行必不可少的條件。實(shí)現(xiàn)智能化壓力檢測系 統(tǒng)對工業(yè)過程的控制具有非常重要的意義。壓力傳感器是工業(yè)實(shí)踐、儀器 儀表控制中最為常用的一種傳

4、感器,并廣泛應(yīng)用于各種工業(yè)自控環(huán)境,涉 及水利水電、 鐵路交通、 生產(chǎn)自控、 航空航天、 軍工、石化、油井、 電力、 船舶、機(jī)床、管道等眾多行業(yè)。壓力測量對實(shí)時(shí)監(jiān)測和安全生產(chǎn)具有重要 的意義。在工業(yè)生產(chǎn)中,為了高效、安全生產(chǎn),必須有效控制生產(chǎn)過程中 的諸如壓力、流量、溫度等主要參數(shù)。由于壓力控制在生產(chǎn)過程中起著決 定性的安全作用,因此有必要準(zhǔn)確測量壓力。通過壓力傳感器將需要測量 的位置的壓力信號(hào)轉(zhuǎn)化為電信號(hào),再經(jīng)過運(yùn)算放大器進(jìn)行信號(hào)放大,送至 8位 AD轉(zhuǎn)換器,然后將模擬信號(hào)轉(zhuǎn)換成單片機(jī)可以識(shí)別的數(shù)字信號(hào),再 經(jīng)單片機(jī)轉(zhuǎn)換成 LED顯示器可以識(shí)別的信息,最后顯示輸出 1.2 總體設(shè)計(jì)方案論證

5、1.2.1 壓力測試系統(tǒng)設(shè)計(jì)框圖 壓力檢測電 ADC080 最小系圖 1-1 壓力測試系統(tǒng)設(shè)計(jì)框圖 力 測AT試 顯示電路 電路主要分成兩個(gè)模塊: A/D 轉(zhuǎn)換模塊和顯示模塊,我們選用的 A/D 轉(zhuǎn)換器是 ADC0808,單片機(jī)為 AT89C51,顯示為 4 位數(shù)碼管顯示。根據(jù)硬 件電路編程,調(diào)試出來并顯示結(jié)果。 1.2.3 總體設(shè)計(jì)方案分析 本次設(shè)計(jì)是基于 AT89C51單片機(jī)的測量與顯示。電路采用 ADC0808模 數(shù)轉(zhuǎn)換電路,ADC0808是CMOS工藝,采用逐次逼近法的 8位 A/D轉(zhuǎn)換芯片, 片內(nèi)有帶鎖存功能的 8 路模擬電子開關(guān),先用 ADC0808的轉(zhuǎn)換器對各路電 壓值進(jìn)行采樣,

6、然后將模擬信號(hào)轉(zhuǎn)換成單片機(jī)可以識(shí)別的數(shù)字信號(hào),再經(jīng) 單片機(jī)轉(zhuǎn)換成 LED顯示器可以識(shí)別的信息,最后顯示輸出。本次設(shè)計(jì)是以 單片機(jī)組成的壓力測量,系統(tǒng)中必須有前向通道作為電信號(hào)的輸入通道, 用來采集輸入信息。壓力的測量,需要傳感器,利用傳感器將壓力轉(zhuǎn)換成 電信號(hào)后,再經(jīng)放大并經(jīng) A/D 轉(zhuǎn)換為數(shù)字量后才能由計(jì)算機(jī)進(jìn)行有效處理。 然后用 LED進(jìn)行顯示。本設(shè)計(jì)的最終結(jié)果是,將軟件下載到硬件上調(diào)試出 來了需要顯示的數(shù)據(jù),當(dāng)輸入的模擬信號(hào)發(fā)生變化的時(shí)候,通過 A/D 轉(zhuǎn)換 后, LED將顯示不同的數(shù)值。 第二章 硬件設(shè)計(jì) 2.1 AT89C51 單片機(jī)簡介 AT89C51是一種帶 4K字節(jié)閃爍可編程可

7、擦除只讀存儲(chǔ) ( FPEROM Falsh Programmable and Erasable Read Only Memory)的低電壓,高性能 CMOS8 位微處理器,俗稱單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除 100 次。該器件采用 ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的 MCS-51指令集和輸出管腳相兼容。 由于將多功能 8 位 CPU和閃爍存儲(chǔ)器組 合在單個(gè)芯片中, ATMEL的 AT89C51是一種高效微控制器。如圖 2-1 : 圖 2-1 AT89C51 外部引腳圖 2.1.1 主要特性 8031 CPU 與 MCS-51 兼容 全靜態(tài)工作: 0Hz-24K

8、Hz 4K 字節(jié)可編程 FLASH存儲(chǔ)器 (壽命: 1000寫/ 擦循環(huán)) 三級(jí)程序存儲(chǔ)器保密鎖定 32 條可編程 I/O 線 6 個(gè)中斷源 低功耗的閑置和掉電模式 2.1.2 管腳說明 VCC:供電電壓。 GND:接地。 128*8 位內(nèi)部 RAM 兩個(gè) 16 位定時(shí)器 / 計(jì)數(shù)器 可編程串行通道 片內(nèi)振蕩器和時(shí)鐘電路 P0口: P0口為一個(gè) 8 位漏級(jí)開路雙向 I/O 口,每腳可吸收 8TTL門電 流。當(dāng) P1口的管腳第一次寫 1 時(shí),被定義為高阻輸入。 P0能夠用于外部 程序數(shù)據(jù)存儲(chǔ)器, 它可以被定義為數(shù)據(jù) / 地址的第八位。 在 FIASH 編程時(shí), P0 口作為原碼輸入口,當(dāng) FIA

9、SH進(jìn)行校驗(yàn)時(shí), P0 輸出原碼,此時(shí) P0 外部 必須被拉高。 P1口: P1口是一個(gè)內(nèi)部提供上拉電阻的 8 位雙向 I/O 口, P1口緩沖 器能接收輸出 4TTL門電流。 P1口管腳寫入 1 后,被內(nèi)部上拉為高,可用 作輸入, P1 口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的 緣故。在 FLASH編程和校驗(yàn)時(shí), P1 口作為第八位地址接收 P2口: P2口為一個(gè)內(nèi)部上拉電阻的 8 位雙向 I/O 口, P2口緩沖器可 接收,輸出 4個(gè)TTL門電流,當(dāng) P2口被寫“ 1”時(shí),其管腳被內(nèi)部上拉電 阻拉高,且作為輸入。并因此作為輸入時(shí), P2 口的管腳被外部拉低,將輸 出電流。這是

10、由于內(nèi)部上拉的緣故。 P2口當(dāng)用于外部程序存儲(chǔ)器或 16 位 地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí), P2 口輸出地址的高八位。 在給出地址“1” 時(shí),它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí), P2 口輸出其特殊功能寄存器的內(nèi)容。 P2 口在 FLASH編程和校驗(yàn)時(shí)接收高八位 地址信號(hào)和控制信號(hào)。 P3口:P3口管腳是 8 個(gè)帶內(nèi)部上拉電阻的雙向 I/O 口,可接收輸出 4 個(gè) TTL門電流。當(dāng) P3口寫入“ 1”后,它們被內(nèi)部上拉為高電平,并用作 輸入。作為輸入,由于外部下拉為低電平, P3口將輸出電流( ILL )這是 由于上拉的緣故。 P3 口也可作為 AT89C51的一些特殊

11、功能口: P3 口管腳 備選功能 P3.0 RXD(串行輸入口) P3.1 TXD (串行輸出口) P3.2 /INT0 (外部中斷 0) P3.3 /INT1 (外部中斷 1) P3.4 T0 (記時(shí)器 0 外部輸入) P3.5 T1 (記時(shí)器 1 外部輸入) P3.6 /WR (外部數(shù)據(jù)存儲(chǔ)器寫選通) P3.7 /RD (外部數(shù)據(jù)存儲(chǔ)器讀選通) P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào) RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期 的高電平時(shí)間。 ALE:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址 的地位字節(jié)。 在 FLASH編程期間, 此引腳用于輸入

12、編程脈沖。 在平時(shí), ALE 端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6 。因此 它可用作對外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作 外部數(shù)據(jù)存儲(chǔ)器時(shí), 將跳過一個(gè) ALE脈沖。如想禁止 ALE的輸出可在 SFR8EH 地址上置 0。此時(shí), ALE 只有在執(zhí)行 MOV,X MOVC指令是 ALE才起作用。 另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位 無效。 /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。 在由外部程序存儲(chǔ)器取指期間, 每個(gè)機(jī)器周期兩次 /PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效 的/PSEN信號(hào)將不出現(xiàn)。 /EA:當(dāng)/E

13、A 保持低電平時(shí), 則在此期間外部程序存儲(chǔ)器 (0000H-FFFFH), 不管是否有內(nèi)部程序存儲(chǔ)器。 注意加密方式 1時(shí),/EA 將內(nèi)部鎖定為 RESET; 當(dāng)/EA 端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引 腳也用于施加 12V 編程電源( VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出。 2.1.3 AT89C51 單片機(jī)在電路圖中連接 連接如下圖 2-2 所示: 圖 2-2 AT89C51 單片機(jī)在電路圖中的連接 2.2 51 單片機(jī)最小系統(tǒng)的設(shè)計(jì) 2.2.1 單片機(jī)組成 單片機(jī)的最小系統(tǒng)由 RAM, RO

14、M晶, 振電路,復(fù)位電路,電源,地線組 成。 電路設(shè)計(jì)如圖 2-3 所示: 圖 2-3 單片機(jī)最小系統(tǒng) 隨著電子技術(shù)的發(fā)展,單片機(jī)的功能將更加完善,因而單片機(jī)的應(yīng)用 將更加普及。它們將在智能化儀器、家電產(chǎn)品、工業(yè)過程控制等方面得到 更廣泛的應(yīng)用。單片機(jī)將是智能化儀器和中、小型控制系統(tǒng)中應(yīng)用最多的 有種微型計(jì)算機(jī)。 2.2.2 51 單片機(jī)最小系統(tǒng)電路介紹 2.2.2.1 51 單片機(jī)最小系統(tǒng)復(fù)位電路的極性電容 C1的大小直接影響 單片機(jī)的復(fù)位時(shí)間,一般采用 1030uF,51 單片機(jī)最小系統(tǒng)容值越大需要 的復(fù)位時(shí)間越短。 2.2.2.2 51 單片機(jī)最小系統(tǒng)晶振 Y1 也可以采用 6MHz或者

15、 11.0592MHz,在正常工作的情況下可以采用更高頻率的晶振, 51 單片機(jī)最 小系統(tǒng)晶振的振蕩頻率直接影響單片機(jī)的處理速度,頻率越大處理速度越 快。 2.2.2.3 51 單片機(jī)最小系統(tǒng)起振電容 C2、C3 一般采用 1533pF,并 且電容離晶振越近越好,晶振離單片機(jī)越近越好 4.P0 口為開漏輸出,作 為輸出口時(shí)需加上拉電阻,阻值一般為 10k。 2.2.2.4 設(shè)置為定時(shí)器模式時(shí),加 1 計(jì)數(shù)器是對內(nèi)部機(jī)器周期計(jì)數(shù) (1 個(gè)機(jī)器周期等于 12個(gè)振蕩周期,即計(jì)數(shù)頻率為晶振頻率的 1/12 )。計(jì) 數(shù)值 N乘以機(jī)器周期 Tcy 就是定時(shí)時(shí)間 t。 2.2.2.5 設(shè)置為計(jì)數(shù)器模式時(shí),外

16、部事件計(jì)數(shù)脈沖由T0或 T1引腳 輸入到計(jì)數(shù)器。在每個(gè)機(jī)器周期的 S5P2期間采樣 T0、T1 引腳電平。當(dāng)某 周期采樣到一高電平輸入,而下一周期又采樣到一低電平時(shí),則計(jì)數(shù)器加 1,更新的計(jì)數(shù)值在下一個(gè)機(jī)器周期的 S3P1期間裝入計(jì)數(shù)器。由于檢測一 個(gè)從 1 到 0 的下降沿需要 2個(gè)機(jī)器周期,因此要求被采樣的電平至少要維 持一個(gè)機(jī)器周期。當(dāng)晶振頻率為 12MHz時(shí),最高計(jì)數(shù)頻率不超過 1/2MHz, 即計(jì)數(shù)脈沖的周期要大于 2 ms。 2.3 壓力傳感器 2.3.1 壓力傳感器的選擇 壓力傳感器是將壓力轉(zhuǎn)換為電信號(hào)輸出的傳感器。通常把壓力測量儀 表中的電測式儀表稱為壓力傳感器。壓力傳感器一般

17、由彈性敏感元件和位 移敏感元件(或應(yīng)變計(jì))組成。彈性敏感元件的作用是使被測壓力作用于 某個(gè)面積上并轉(zhuǎn)換為位移或應(yīng)變,然后由位移敏感元件或應(yīng)變計(jì)轉(zhuǎn)換為與 壓力成一定關(guān)系的電信號(hào)。有時(shí)把這兩種元件的功能集于一體。壓力傳感 器廣泛應(yīng)用于各種工業(yè)自控環(huán)境,涉及水利水電、鐵路交通、智能建筑、 生產(chǎn)自控、航空航天、軍工、石化、油井、電力、船舶、機(jī)床、管道等眾 多行業(yè)。 力學(xué)傳感器的種類繁多,但常用的壓力有應(yīng)變片壓力傳感器、半導(dǎo)體 應(yīng)變片壓力傳感器、壓阻式壓力傳感器、電感式壓力傳感器、電容式壓力 傳感器、諧振式壓力傳感器及,光纖壓力傳感器等。應(yīng)用最為廣泛的是壓 阻式壓力傳感器,它具有極低的價(jià)格和較高的精度以

18、及較好的線性特性。 壓力傳感器是使用最為廣泛的一種傳感器。傳統(tǒng)的壓力傳感器以機(jī)械 結(jié)構(gòu)型的器件為主,以彈性元件的形變指示壓力,但這種結(jié)構(gòu)尺寸大、質(zhì) 量輕,不能提供電學(xué)輸出。隨著半導(dǎo)體技術(shù)的發(fā)展,半導(dǎo)體壓力傳感器也 應(yīng)運(yùn)而生。其特點(diǎn)是體積小、質(zhì)量輕、準(zhǔn)確度高、溫度特性好。特別是隨 著 MEMS技術(shù)的發(fā)展,半導(dǎo)體傳感器向著微型化發(fā)展,而且其功耗小、可 靠性高。 2.3.2 壓力傳感器工作原理 壓阻式應(yīng)變壓力傳感器的主要由電阻應(yīng)變片按照電橋原理組成。 2.3.3 電阻應(yīng)變片 一種將被測件上的應(yīng)變變化轉(zhuǎn)換成為一種的敏感器件。它是壓阻式應(yīng) 變傳感器的主要組成部分之一。電阻應(yīng)變片應(yīng)用最多的是金屬電阻應(yīng)變片

19、 和應(yīng)變片兩種。金屬電阻應(yīng)變片又有絲狀應(yīng)變片和金屬箔狀應(yīng)變片兩種。 通常是將應(yīng)變片通過特殊的粘和劑緊密的粘合在產(chǎn)生力學(xué)應(yīng)變基體上,當(dāng) 基體受力發(fā)生應(yīng)力變化時(shí),電阻應(yīng)變片也一起產(chǎn)生形變, 使應(yīng)變片的阻值發(fā)生改變,從而使加在上的發(fā)生變化。這種應(yīng)變片在 受力時(shí)產(chǎn)生的阻值變化通常較小,一般這種應(yīng)變片都組成應(yīng)變電橋,并通 過后續(xù)的儀表放大器進(jìn)行放大,再傳輸給(通常是A/D 轉(zhuǎn)換和 CPU)顯示 或執(zhí)行機(jī)構(gòu)。 金屬電阻應(yīng)變片的內(nèi)部結(jié)構(gòu)如圖 2-4 : 圖 2-4 金屬電阻應(yīng)變絲的結(jié)構(gòu) 如圖所示,是電阻應(yīng)變片的結(jié)構(gòu)示意圖,它由基體材料、金屬應(yīng)變絲 或應(yīng)變箔、絕緣保護(hù)片和引出線等部分組成。根據(jù)不同的用途,電阻

20、應(yīng)變 片的阻值可以由設(shè)計(jì)者設(shè)計(jì),但電阻的取值范圍應(yīng)注意:阻值太小,所需 的驅(qū)動(dòng)電流太大,同時(shí)應(yīng)變片的發(fā)熱致使本身的溫度過高,不同的環(huán)境中 使用,使應(yīng)變片的阻值變化太大,輸出明顯,過于復(fù)雜。而電阻太大,阻 抗太高,抗外界的電磁干擾能力較差。一般均為幾十歐至幾十千歐左右。 2.4 模數(shù)轉(zhuǎn)換電路的設(shè)計(jì) 2.4.1 模數(shù)轉(zhuǎn)換 模擬量輸入通道的任務(wù)是將模擬量轉(zhuǎn)換成數(shù)字量。能夠完成這一任務(wù) 的器件稱之為模數(shù)轉(zhuǎn)換器,簡稱 A/D轉(zhuǎn)換器。本次設(shè)計(jì)的中 A/D 轉(zhuǎn)換器的 任務(wù)是將放大器輸出的模擬信號(hào)轉(zhuǎn)換位數(shù)字量進(jìn)行輸出。 A/D 轉(zhuǎn)換電路的核心元件是 ADC0808芯片 2.4.2 ADC0808 芯片 ADC

21、0 808和 ADC0 809 除精度略有差別外 (前者精度為 8位、后者精度 為 7位) ,其余各方面完全相同。它們都是 CMOS器件,不僅包括一個(gè) 8 位 的逐次逼近型的 ADC部分,而且還提供一個(gè) 8 通道的模擬多路開關(guān)和通道 尋址邏輯,因而有理由把它作為簡單的“數(shù)據(jù)采集系統(tǒng)” 。利用它可直接 輸入 8 個(gè)單端的模擬信號(hào)分時(shí)進(jìn)行 A/D 轉(zhuǎn)換,在多點(diǎn)巡回檢測和過程控制、 運(yùn)動(dòng)控制中應(yīng)用十分廣泛。 1)主要技術(shù)指標(biāo)和特性 ( 1)分辨率: 8 位。 2)總的不可調(diào)誤差: ADC0808為 1/2LSB,ADC 0809 為 1LSB。 ( 3)轉(zhuǎn)換時(shí)間: 取決于芯片時(shí)鐘頻率, 如 CLK=

22、500kHz時(shí),TCONV=128 s 。 (4)單一電源: +5V 。 (5)模擬輸入電壓范圍: 單極性 05V;雙極性 5V, 10V(需外加 一定電路 ) 。 ( 6)具有可控三態(tài)輸出緩存器。 (7)啟動(dòng)轉(zhuǎn)換控制為脈沖式 (正脈沖 ) ,上升沿使所有內(nèi)部寄存器清 零,下降沿使 A/D 轉(zhuǎn)換開始。 ( 8)使用時(shí)不需進(jìn)行零點(diǎn)和滿刻度調(diào)節(jié)。 2) 內(nèi)部結(jié)構(gòu)和外部引腳 ADC0808/0809的內(nèi)部結(jié)構(gòu)和外部引腳分別如圖 2-5 和圖 2-6 所示。內(nèi) 部各部分的作用和工作原理在內(nèi)部結(jié)構(gòu)圖中已一目了然,在此就不再贅述, 下面僅對各引腳定義分述如下: 圖 2-5 ADC0808/0809 內(nèi)部結(jié)

23、構(gòu)框圖 (1)IN0IN78路模擬輸入, 通過 3 根地址譯碼線 ADDA、ADDB、 ADDC來選通一路。 ( 2)D7D0 A/D 轉(zhuǎn)換后的數(shù)據(jù)輸出端,為三態(tài)可控輸出,故可直 接和微處理器數(shù)據(jù)線連接。 8 位排列順序是 D7為最高位, D0為最低位。 ( 3) ADDA、ADDB、ADDC模擬通道選擇地址信號(hào), ADDA為低位, ADDC為高位。地址信號(hào)與選中通道對應(yīng)關(guān)系如表1 所示。 ( 4) VR(+)、VR(-) 正、負(fù)參考電壓輸入端,用于提供片內(nèi)DAC 電阻網(wǎng)絡(luò)的基準(zhǔn)電壓。在單極性輸入時(shí), VR(+)=5V,VR(-)=0V ;雙極性輸 入時(shí), VR(+)、 VR(-) 分別接正、

24、負(fù)極性的參考電壓 表 1 地址信號(hào)與選中通道的關(guān)系 地址 ADDC ADDB ADDA 選中通道 0 0 0 IN0 0 0 1 IN1 0 1 0 IN2 0 1 1 IN3 1 0 0 IN4 1 0 1 IN5 1 1 0 IN6 1 1 1 IN7 圖 2-6 ADC0808/0809 外部引腳圖 ( 5)ALE地址鎖存允許信號(hào), 高電平有效。 當(dāng)此信號(hào)有效時(shí), A、 B、C三位地址信號(hào)被鎖存,譯碼選通對應(yīng)模擬通道。在使用時(shí),該信號(hào)常 和 START信號(hào)連在一起,以便同時(shí)鎖存通道地址和啟動(dòng)A/D 轉(zhuǎn)換。 (6)STARTA/D 轉(zhuǎn)換啟動(dòng)信號(hào),正脈沖有效。加于該端的脈沖的 上升沿使逐次逼

25、近寄存器清零,下降沿開始A/D 轉(zhuǎn)換。如正在進(jìn)行轉(zhuǎn)換時(shí) 又接到新的啟動(dòng)脈沖,則原來的轉(zhuǎn)換進(jìn)程被中止,重新從頭開始轉(zhuǎn)換。 (7)EOC轉(zhuǎn)換結(jié)束信號(hào),高電平有效。該信號(hào)在A/D 轉(zhuǎn)換過程中 為低電平,其余時(shí)間為高電平。該信號(hào)可作為被CPU查詢的狀態(tài)信號(hào),也 可作為對 CPU的中斷請求信號(hào)。在需要對某個(gè)模擬量不斷采樣、轉(zhuǎn)換的情 況下, EOC也可作為啟動(dòng)信號(hào)反饋接到 START端,但在剛加電時(shí)需由外電 路第一次啟動(dòng) 8)OE輸出允許信號(hào), 高電平有效。 當(dāng)微處理器送出該信號(hào)時(shí), ADC0808/0809的輸出三態(tài)門被打開, 使轉(zhuǎn)換結(jié)果通過數(shù)據(jù)總線被讀走。 在 中斷工作方式下,該信號(hào)往往是 CPU發(fā)出

26、的中斷請求響應(yīng)信號(hào)。 3)工作時(shí)序與使用說明 ADC 0808/0809 的工作時(shí)序如圖 2-7 所示。當(dāng)通道選擇地址有效時(shí), ALE信號(hào)一出現(xiàn), 地址便馬上被鎖存, 這時(shí)轉(zhuǎn)換啟動(dòng)信號(hào)緊隨 ALE之后( 或 與 ALE同時(shí)) 出現(xiàn)。START的上升沿將逐次逼近寄存器 SAR復(fù)位,在該上升 沿之后的 2s 加 8 個(gè)時(shí)鐘周期內(nèi) ( 不定) ,EOC信號(hào)將變低電平, 以指示轉(zhuǎn) 換操作正在進(jìn)行中,直到轉(zhuǎn)換完成后 EOC再變高電平。微處理器收到變?yōu)?高電平的 EOC信號(hào)后, 便立即送出 OE信號(hào), 打開三態(tài)門, 讀取轉(zhuǎn)換結(jié)果。 圖 2-7 ADC 0808/0809 工作時(shí)序 模擬輸入通道的選擇可以相

27、對于轉(zhuǎn)換開始操作獨(dú)立地進(jìn)行 ( 當(dāng)然,不 能在轉(zhuǎn)換過程中進(jìn)行 ) ,然而通常是把通道選擇和啟動(dòng)轉(zhuǎn)換結(jié)合起來完成 ( 因?yàn)?ADC0808/0809 的時(shí)間特性允許這樣做 ) 。這樣可以用一條寫指令既 選擇模擬通道又啟動(dòng)轉(zhuǎn)換。在與微機(jī)接口時(shí),輸入通道的選擇可有兩種方 法,一種是通過地址總線選擇,一種是通過數(shù)據(jù)總線選擇。 如用 EOC信號(hào)去產(chǎn)生中斷請求,要特別注意 EOC的變低相對于啟動(dòng)信 號(hào)有 2 s+8 個(gè)時(shí)鐘周期的延遲,要設(shè)法使它不致產(chǎn)生虛假的中斷請求。 為此,最好利用 EOC上升沿產(chǎn)生中斷請求,而不是靠高電平產(chǎn)生中斷請求 2.5 接口電路的設(shè)計(jì) ADC0808與 AT89C51采用中斷方式

28、。由于 ADC0808片內(nèi)有三態(tài)輸出鎖 存器,因此可以直接與 AT89C51接口。這里將 ADC0808作為一個(gè)外部擴(kuò)展 并行 I/O 口,采用先選法尋址。由 P3.0 控制啟動(dòng)轉(zhuǎn)換信號(hào)端( START), 三位地址線加到 ADC0808的 ADDA、 ADDB、ADDC端。當(dāng)啟動(dòng) ADC0808時(shí), 先送通道號(hào)地址到 ADDA、ADDB和 ADDC;鎖存通道號(hào)并啟動(dòng) A/D 轉(zhuǎn)換。 A/D 轉(zhuǎn)換完畢, EOC端置 1,然后使 OE端有效,打開輸出鎖存器三態(tài)門, 8 位 數(shù)據(jù)便讀入到單片機(jī)中。 接口電路原理圖 2-8 所示: 圖 2-8 ADC0806 接口電路原理圖 2.6 驅(qū)動(dòng)與顯示電路

29、2.6.1 74LS245 的原理 74LS245 為 8 路通向三態(tài)雙向總線收發(fā)器,可雙向傳輸數(shù)據(jù)。 16 個(gè)三 態(tài)門每兩個(gè)三態(tài)門組成一路雙向驅(qū)動(dòng)。驅(qū)動(dòng)方向由 ,DIR 兩個(gè)控制端控 制, 控制端控制驅(qū)動(dòng)器有效或高阻態(tài),在 控制端有效( =0)時(shí), DIR 控制端控制驅(qū)動(dòng)器的驅(qū)動(dòng)方向 . 即: DIR=0信號(hào)由 B A;DIR=1信號(hào)由 A B傳輸。在 =1 時(shí), A、B為高阻狀態(tài)。 74LS245的管腳圖如圖 2-9 所示: 圖 2-9 74LS245 引腳圖 2.6.2 74LS245 驅(qū)動(dòng)電路 當(dāng)數(shù)碼管顯示時(shí),由于單片機(jī)的驅(qū)動(dòng)能力達(dá)不到數(shù)碼管的驅(qū)動(dòng)電流, 有時(shí)工作不穩(wěn)定, 因此需要一個(gè)

30、驅(qū)動(dòng)電路, 使數(shù)碼管顯示電路, 如下圖 2-10 所示。本電路用 74LS245 16 個(gè)三態(tài)門每兩個(gè)三態(tài)門組成一路雙向驅(qū)動(dòng)。 通過單片機(jī)輸送過來的 信號(hào)有 74LS245 進(jìn)行驅(qū)動(dòng),由數(shù)碼管進(jìn)行顯示。 圖 2-10 74LS245 驅(qū)動(dòng)電路與數(shù)碼管連接圖 2.7 電源電路的設(shè)計(jì) 電源電路設(shè)計(jì)圖如 2.11 所示: 圖 2-11 電源電路的設(shè)計(jì)圖 2.8 原理圖 圖 2-12 原理圖 第三章 軟件設(shè)計(jì) 3.1 總體流程圖 主程序模塊 主程序主要完成定時(shí)器初始化和 A/D 轉(zhuǎn)換模擬值通道口選定,調(diào)用顯 示子程序等。主程序的流程圖如圖 3-1 所示: 3.2.2 顯示子程序 顯示子程序采用動(dòng)態(tài)掃描

31、法實(shí)現(xiàn) 4 位數(shù)碼管的數(shù)值顯示。 LED數(shù)碼管 采用軟件譯碼動(dòng)態(tài)掃描方式。在顯示子程序中包含多路循環(huán)顯示和單路顯 示程序。多路循環(huán)顯示把 8個(gè)存儲(chǔ)單元的數(shù)值依次取出送到 4 位數(shù)碼管上 顯示。每一路顯示 1 秒,單路顯示程序只對當(dāng)前選中的一路數(shù)據(jù)進(jìn)行顯示。 每路數(shù)據(jù)顯示時(shí)需經(jīng)過轉(zhuǎn)換變成十進(jìn)制 BCD碼,放于 4 個(gè)數(shù)碼管的顯示緩 沖中。單路顯示或多路顯示通過標(biāo)志位控制。在顯示控制程序中加入了對 單路或多路循環(huán)按鍵和通道選擇按鍵判斷 第四章 調(diào)試及仿真 4.1 程序代碼 #include #define uchar unsigned char #define uint unsigned int

32、unsigned char code tab=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f; uchar code tab1=0 xfe,0 xfd,0 xfb,0 xf7; uchar dis_buf4; sbit ST=P30; sbit OE=P31; sbit EOC=P32; sbit CLK=P33; sbit P20=P20; sbit P21=P21; sbit P22=P22; sbit P23=P23; sbit AA=P35; sbit BB=P36; sbit CC=P37; void delay

33、()/ 延時(shí)函數(shù) uchar t; for(t=0;t250;t+); void display() uchar j; for(j=0;j4;j+) P1=tabdis_bufj; P2=tab1j; delay(); P2=0 xff; void t1() interrupt 1 / 定時(shí)器中斷服務(wù)函數(shù) ; 作用 : 產(chǎn)生 CLK信號(hào) TH0=(65536-200)/256; TL0=(65536-200)%256; CLK=CLK; void main()/ 主函數(shù) uchar sj=0,ge=0,shi=0,bai=0,qian=0; uint temp; TMOD=0 x01; TH0

34、=(65536-200)/256;/ 定時(shí)時(shí)間為 0.2us, 亦即 CLK周期為 0.4us TL0=(65536-200)%256; EA=1; ET0=1; TR0=1; while(1) AA=0;/ 選擇通道 0 BB=0; CC=0; ST=0;/ 關(guān)閉轉(zhuǎn)換 OE=0;/ 關(guān)閉輸出 ST=1;/ 開啟轉(zhuǎn)換 ST=0;/ 關(guān)閉轉(zhuǎn)換 while(EOC=0);/ 判斷是否轉(zhuǎn)換結(jié)束 : 是則執(zhí)行以下語句 , 否則等 待 OE=1;/ 開啟數(shù)據(jù)輸出允許 sj=P0;/ 將數(shù)據(jù)取走 , 存放在變量 sj 中 OE=0;/ 關(guān)閉輸出 temp=sj;/ 電壓值轉(zhuǎn)換 ,5V 作為參考電壓 , 分

35、成 256份 qian=temp/1000; / 個(gè)位 bai=(temp-qian*1000)/100;/ 十位 shi=(temp-qian*1000-bai*100)/10;/ 百位 ge=temp-qian*1000-bai*100-shi*10;/ 千位 dis_buf0=ge; dis_buf1=shi; dis_buf2=bai; dis_buf3=qian; display(); OE=0; 4.2 仿真結(jié)果 圖 4-1 仿真結(jié)果圖 4.3 數(shù)據(jù)分析 由外部傳感器檢測壓力,數(shù)碼顯示管顯示范圍為 0255, 本次課程設(shè)計(jì) 用滑動(dòng)變阻器代替外部傳感器,將滑動(dòng)變阻器平均分成 266 份,通過上調(diào) 或下調(diào)壓力同步改變壓力值,得到仿真結(jié)果。 例如測 05V 電壓: 當(dāng)外部傳感器檢測到壓力

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論