基于51單片機壓力檢測課程設(shè)計_第1頁
基于51單片機壓力檢測課程設(shè)計_第2頁
基于51單片機壓力檢測課程設(shè)計_第3頁
基于51單片機壓力檢測課程設(shè)計_第4頁
基于51單片機壓力檢測課程設(shè)計_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 單片機原理與接口技術(shù)課程設(shè)計單片機原理與接口技術(shù)課 程 設(shè) 計成績評定表設(shè)計課題 基于89c51的自身斷電保護系統(tǒng)設(shè)計學(xué)院名稱 : 電氣工程學(xué)院 專業(yè)班級 : 自動1002 學(xué)生姓名 : 秦凱新 學(xué) 號 : 201046820427 指導(dǎo)教師 : 王黎 臧海河 周剛 設(shè)計地點 : 31-505 設(shè)計時間 : 2012-12-172012-12-28 指導(dǎo)教師意見:成績: 簽名: 年 月 日23單片機原理與接口技術(shù)課 程 設(shè) 計課程設(shè)計名稱: 基于89c52的壓力監(jiān)測系統(tǒng)設(shè)計 專 業(yè) 班 級 : 自 動1002 學(xué) 生 姓 名 : 秦凱新 學(xué) 號 : 201046820427 指 導(dǎo) 教 師

2、: 王黎 臧海河 周剛 課程設(shè)計地點: 31-505 課程設(shè)計時間: 2012-12-172012-12-28 單片機原理與接口技術(shù) 課程設(shè)計任務(wù)書學(xué)生姓名秦凱新專業(yè)班級自動1002學(xué)號201046820427題 目基于89c52的壓力監(jiān)測系統(tǒng)設(shè)計課題性質(zhì)工程設(shè)計課題來源自擬指導(dǎo)教師王黎、臧海河、周剛主要內(nèi)容(參數(shù)) 89C52的壓力檢測保護系統(tǒng)可以實現(xiàn)以下功能:1.實現(xiàn)開機后自動恢復(fù)供電;2壓力超過上限值或下限制會自動報警;3采用電流互感,采集電路電流來控制繼電器常閉點的斷開和閉合從而控制回路斷開和閉合;4采用聲光報警,使用者可以及時發(fā)現(xiàn)和處理電路事故。任務(wù)要求(進度)第1-2天:熟悉課程設(shè)

3、計任務(wù)及要求,查閱技術(shù)資料,確定設(shè)計方案。第3-4天:按照確定的方案設(shè)計單元電路。要求畫出單元電路圖,元件及元件參數(shù)選擇要有依據(jù),各單元電路的設(shè)計要有詳細論述。第5-6天:軟件設(shè)計,編寫程序。第7-8天:實驗室調(diào)試。第9-10天:撰寫課程設(shè)計報告。要求內(nèi)容完整、圖表清晰、文理流暢、格式規(guī)范、方案合理、設(shè)計正確,篇幅合理。主要參考資料1 張迎新單片微型計算機原理、應(yīng)用及接口技術(shù)(第2版)M北京:國防工業(yè)出版社,20042偉福LAB6000系列單片機仿真實驗系統(tǒng)使用說明書3閻石數(shù)字電路技術(shù)基礎(chǔ)(第五版)北京:高等教育出版社,20064單片機開發(fā)板的原理圖及系統(tǒng)。審查意見系(教研室)主任簽字: 年

4、月 日 目 錄1 引言62 總體方案設(shè)計62.1硬件組成62.2 方案論證72.3 總體方案83 硬件電路設(shè)計103.1 時鐘電路103.2復(fù)位電路113.3 AD簡介與原理分析123.4 聲光報警接口電路183.5 顯示及鍵盤接口電路193.7 電源電路24 系統(tǒng)軟件設(shè)計34.1 主程序設(shè)計34.3 部分主要子程序的設(shè)計65 系統(tǒng)調(diào)試與總結(jié)65.1 系統(tǒng)功能測試65.2 技術(shù)指標(biāo)測試76心得體會76.1 為何不采用8255了?76.2為何不采用A/D0809?86.3在幫助同學(xué)的過程中我學(xué)到了什么?86.4在單片機領(lǐng)域我的規(guī)劃?8參考文獻9附錄A 系統(tǒng)原理圖9附錄B 源程序101 引言 壓力

5、監(jiān)測普遍用于工業(yè)領(lǐng)域,并對國家的發(fā)展產(chǎn)生了深厚的影響,小到體重計,大到工業(yè)中反應(yīng)爐的氣壓聲電報警。甚至航空航天,智能儀表。以及機器人。本設(shè)計就是工業(yè)中最普遍的氣壓監(jiān)測報警系統(tǒng)。所以,這個系統(tǒng)采用自動檢測反應(yīng)爐中的壓力大小,通過傳感器,并實時進行在液晶1602上進行顯示,還有在液晶上進行參考上限電壓值的設(shè)置和參考下限電壓值的的設(shè)置。并通過在單片機內(nèi)部進行比較計算,來實現(xiàn)整個壓力監(jiān)測系統(tǒng)的聲光電報警。 本系統(tǒng)的設(shè)計基于A/D0804芯片和AT89C52單片機,并采用液晶1602作為顯示輸出,系統(tǒng)雖小卻包含了工業(yè)要求的各個方面,作為聲電報警模塊,主要用到蜂鳴器和發(fā)光二極管。當(dāng)監(jiān)測壓力低于下限值和高于

6、上限值就會進行聲光報警。此次系統(tǒng)設(shè)計就是針對工業(yè)的反應(yīng)爐的壓力監(jiān)測,甚至可做體重計到最小的方面。本設(shè)計純?yōu)閭€人設(shè)計。程序也在開發(fā)板驗證成功,如有任何疑問,都可通過實驗調(diào)試驗證。2 總體方案設(shè)計2.1硬件組成1. 控制器??刂破魇窍到y(tǒng)的核心部分,可以用工業(yè)計算機PLC、或者單片機。2. A /D轉(zhuǎn)換器。A/D轉(zhuǎn)換器可以把測得的模擬量轉(zhuǎn)換成數(shù)字量輸出,可以直接讀取。3. 繼電器。繼電器在電路中起到斷電保護作用,是系統(tǒng)的安全保障。其種類很多,有電流繼電器、電壓及電器、速度繼電器等等。4. 鍵盤。通過鍵盤可以設(shè)置限制電流大小。5. 液晶顯顯示。液晶可以顯示設(shè)置電流以及實時電流值大小。2.2 方案論證1

7、.控制器控制器選擇STC 89C51RC 40C單片機來控制溫度的測量顯示。目前國內(nèi)外使用較多的微控制器是以51內(nèi)核擴展出的單片機,51單片機的使用已經(jīng)發(fā)展到很高的一個層次,編程多以C語言為主,操作簡單,用途廣泛,易于控制。下面通過標(biāo)號STC 89C51RC 40C的解釋來對該單片機進行詳細的介紹:STC:前綴,表示芯片為STC公司生產(chǎn)的產(chǎn)品。8:表示該芯片為8051內(nèi)核芯片9:表示內(nèi)部含F(xiàn)lash EEPROM存儲器。C:表示該器件為CMOS產(chǎn)品,CMOS常指保存計算機基本啟動信息的 芯片,可由主板的電池供電,即使系統(tǒng)掉電,信息也不會丟失。5:固定不變1:表示該芯片內(nèi)部程序存儲空間的大小,1

8、為4KB,2為8KB,3為12KB等,程序空間的大小決定了一個芯片所能裝入的執(zhí)行代碼的多少。RC:表示STC單片機內(nèi)部RAM(隨機讀寫存儲器)為512KB。40:表示該芯片外部晶振最高可接入40MHz。C:產(chǎn)品級別,表示該芯片使用溫度范圍,C表示商業(yè)級,溫度范圍為0度-+70度。該單片機的存儲器相對設(shè)計任務(wù)來說,對程序代碼的儲存足夠了,所以無需再加外圍的擴展存儲器。2.A/D轉(zhuǎn)換器模數(shù)轉(zhuǎn)換器是該電路中的重要組成部分,其工作效率直影響到系統(tǒng)的效率。ADC0809轉(zhuǎn)換器模擬輸入電壓范圍0+5V,不需零點和滿刻度校準(zhǔn),而且能耗低,工作溫度范圍寬,所以可以作為該系統(tǒng)的轉(zhuǎn)換器。2.3 總體方案按照上述方

9、案論證的結(jié)果,首先通過鍵盤設(shè)定電流值,然后檢測電流值,轉(zhuǎn)換成數(shù)字量通過數(shù)碼管顯示出來。當(dāng)電流過大時繼電器動作,切斷電路,保護用電器。如圖2.1所示。圖2.1 總體方案框圖圖2.2 系統(tǒng)流程圖3 硬件電路設(shè)計3.1 時鐘電路單片機片內(nèi)有一個高增益的反相放大器,反相放大器的輸入端為XTAL1,輸出端為XTAL2,由該放大器構(gòu)成的振蕩電路和時鐘電路一起構(gòu)成了單片機的時鐘方式。在內(nèi)部方式時鐘電路中,必須在XTAL1和XTAL2引腳兩端跨接石英晶體振蕩器和兩個微調(diào)電容構(gòu)成振蕩電路,通常C1和C2一般取30pF,晶振的頻率取值在1.2MHz12MHz之間。對于外接時鐘電路,要求XTAL1接地,XTAL2腳

10、接外部時鐘,對于外部時鐘信號并無特殊要求,只要保證一定的脈沖寬度,時鐘頻率低于12MHz即可。晶體振蕩器的振蕩信號從XTAL2端送入內(nèi)部時鐘電路,它將該振蕩信號二分頻,產(chǎn)生一個兩相時鐘信號P1和P2供單片機使用。時鐘信號的周期稱為狀態(tài)時間S,它是振蕩周期的2倍,P1信號在每個狀態(tài)的前半周期有效,在每個狀態(tài)的后半周期P2信號有效。CPU就是以兩相時鐘P1和P2為基本節(jié)拍協(xié)調(diào)單片機各部分有效工作。如圖3.1所示。 圖3.1單片機時鐘電路3.2復(fù)位電路在上電或復(fù)位過程中,控制CPU的復(fù)位狀態(tài):這段時間內(nèi)讓CPU保持復(fù)位狀態(tài),而不是一上電或剛復(fù)位完畢就工作,防止CPU發(fā)出錯誤的指令、執(zhí)行錯誤操作,也可

11、以提高電磁兼容性能。單片機在啟動時都需要復(fù)位,以使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初態(tài)開始工作。單片機系統(tǒng)的復(fù)位方式有:手動按鈕復(fù)位和上電復(fù)位 。復(fù)位方式有手動復(fù)位、上電復(fù)位和積分型復(fù)位。如圖3.2所示。圖3.2 復(fù)位電路3.3 AD簡介與原理分析 模擬/數(shù)字轉(zhuǎn)換就是我們通常所說的A/D轉(zhuǎn)換,它將輸入的模擬信號(如電壓)轉(zhuǎn)換成控制芯片(如單片機,ARM)所能識別的二進制形式,然后經(jīng)過運算,既可以還原出輸入模擬信號的值。 A/D轉(zhuǎn)換是一種非常重要的技術(shù)手段,是單片機等控制芯片與外界信號的接口部分,如圖3.3所示。圖3.3外界信號:外界信號的范圍十分廣泛,自然界的一切信號,比如聲音,溫度

12、甚至是血糖濃度等都可以規(guī)類為外界信號。傳感器:因為大多數(shù)外界信號都不是電信號,因此需要通過各種傳感器將這些外界信號轉(zhuǎn)換成電信號,例如:通過熱電耦可以將溫度轉(zhuǎn)換成一個電壓值。模擬電路:設(shè)計模擬電路的原因主要有以下兩點1由于外界信號的復(fù)雜性,使得傳感器直接輸出的電信號可能會存在一些問題(如不穩(wěn)定),這些不穩(wěn)定信號如果直接送到A/D芯片進行采樣,則最終結(jié)果可能使得最后的顯示值來回亂跳,而無法確定待測的外界信號到底是多少。因此,可能需要設(shè)計一套模擬電路對傳感器輸出的不穩(wěn)定電信號進行濾波等處理,去除干擾,使得進入A/D轉(zhuǎn)換芯片的電壓值為一個穩(wěn)定的信號。2每一個A/D轉(zhuǎn)換芯片都有一個參考電壓,只有輸入的模

13、擬電壓值在這個參考電壓的范圍內(nèi)才能進行正確的轉(zhuǎn)換,例如:本試驗將ADC0804芯片的參考電壓設(shè)置成0V5V,因此如果輸入的電壓值大于5V,則轉(zhuǎn)換出的結(jié)果永遠為0xFF,若輸入的電壓值小于0V,則轉(zhuǎn)換出的結(jié)果永遠為0,這樣便無法正確的還原出被測信號的大小?;谏鲜鲈颍覀兛赡苄枰O(shè)計一套模擬電路,傳感器的輸出電壓值進行一些變換(放大,縮?。?,使得送到A/D轉(zhuǎn)換芯片的電壓值在轉(zhuǎn)換芯片的參考電壓范圍內(nèi)。A/D轉(zhuǎn)換芯片:即模擬/數(shù)字轉(zhuǎn)換芯片,它將輸入的模擬電壓信號轉(zhuǎn)換成單片機等控制處理器能夠識別的數(shù)字二進制形式。處理器芯片:處理器芯片有很多中(比如51單片機,ARM或者是PC上的奔騰處理器,AMD處

14、理器)這些處理器雖然架構(gòu)不一樣,但是有個共同的特點,就是它們能夠運行程序,因此它們能通過程序?qū)/D芯片送入的二進制形式的電壓值進行處理,通過運算將其還原成待測的外界信號值,控制顯示部件(如LCD,八段數(shù)碼管)將這個值顯示出來。例如:假如ADC0804輸出的二進制值0x80,則根據(jù)A/D轉(zhuǎn)換公式可以推出ADC0804的輸入電壓大小為(0x80/0x100)*5V=2.5V。假設(shè)信號經(jīng)過模擬電路縮小了8倍,則可以推出傳感器的輸出電壓為2.5V*8=20V,再根據(jù)傳感器的轉(zhuǎn)換公式(一般手冊會給出)即可得到輸入的外界信號的值。顯示:顯示的作用是將計算出的待測外界信號的值展示給測量人員,顯示的形式有很

15、多種,如LCD,八段數(shù)碼管,上位機軟件等。通過上面的介紹,大家一定對這種基于A/D芯片的嵌入式設(shè)計模式有了一個大致的了解,其實現(xiàn)時中很多應(yīng)用都是遵循了這種設(shè)計模式,比如常用的數(shù)字萬用表,數(shù)字溫度測量儀,血糖測量儀等。本試驗也遵循了這種設(shè)計模式,只不過它省略了傳感器和模擬電路部分,首先通過滑動變阻器調(diào)節(jié)輸入到ADC0804芯片的電壓值(ADC0804芯片的參考電壓調(diào)節(jié)成0V5V,而滑動變阻器產(chǎn)生的電壓范圍也為0V5V,因此沒有必要設(shè)計額外的模擬電路),然后通過51單片機進行運算處理得到這個輸入電壓值,最后再控制八段數(shù)碼管將這個電壓值顯示出來,實際上是實現(xiàn)了一個簡易的數(shù)字電壓測量表。如圖3.4所示

16、。圖3.4圖3.5 ADC0804規(guī)格及引腳分配圖本試驗采用的A/D芯片為ADC0804,它是CMOS 8位單通道逐次漸近型的模/數(shù)轉(zhuǎn)換器,其規(guī)格及引腳圖如圖3.5所示,根據(jù)手冊我們可以得到各個引腳的大致功能如上:/CS:芯片片選信號,低電平有效,即/CS=0,該芯片才能正常工作,在外接多個ADC0804芯片時,該信號可以作為選擇地址使用,通過不同的地址信號使能不同的ADC0804芯片,從而可以實現(xiàn)多個ADC通道的分時復(fù)用。/WR:啟動ADC0804進行ADC采樣,該信號低電平有效,即/WR信號由高電平變成低電平時,觸發(fā)一次ADC轉(zhuǎn)換。/RD:低電平有效,即/RD=0時,可以通過數(shù)據(jù)端口DB0

17、DB7讀出本次的采樣結(jié)果。UIN(+)和UIN(-):模擬電壓輸入端,模擬電壓輸入接UIN(+)端,UIN(-)端接地。雙邊輸入時UIN(+)、UIN(-)分別接模擬電壓信號的正端和負端。當(dāng)輸入的模擬電壓信號存在“零點漂移電壓”時,可在UIN(-)接一等值的零點補償電壓,變換時將自動從UIN(+)中減去這一電壓。VREF/2:參考電壓接入引腳,該引腳可外接電壓也可懸空,若外界電壓,則ADC的參考電壓為該外界電壓的兩倍,如不外接,則Vref與Vcc共用電源電壓,此時ADC的參考電壓即為電源電壓Vcc的值。CLKR和CLKIN:外接RC電路產(chǎn)生模數(shù)轉(zhuǎn)換器所需的時鐘信號,時鐘頻率CLK = 1/1.

18、1RC,一般要求頻率范圍100KHz1.28MHz。AGND和DGND:分別接模擬地和數(shù)字地。 /INT:中斷請求信號輸出引腳,該引腳低電平有效,當(dāng)一次A/D轉(zhuǎn)換完成后,將引起/INT=0,實際應(yīng)用時,該引腳應(yīng)與微處理器的外部中斷輸入引腳相連(如51單片機的INT0,INT1腳),當(dāng)產(chǎn)生/INT信號有效時,還需等待/RD=0才能正確讀出A/D轉(zhuǎn)換結(jié)果,若ADC0804單獨使用,則可以將/INT引腳懸空。DB0DB7:輸出A/D轉(zhuǎn)換后的8位二進制結(jié)果。AD外圍電路圖中Vin(+)接電位器的中間滑動端,Vin(-)接地,因為這兩端可以輸入差分電壓,即它可以測量這兩端之間的電壓,此時,Vin(-)即

19、為ADC0804的模擬輸入電壓。Vin(+)與電位器之間串聯(lián)一個10歐電阻,目的是限制電流。防止電流過大而燒壞芯片。如圖3.6所示。 圖3.6 AD外圍設(shè)計原理圖3.4 聲光報警接口電路采用聲光報警裝置有一下幾大優(yōu)點,1.在遠距離是可以可以通過聲音及時通知2.在近距離可以通過視聽覺做出反應(yīng)3.在嘈雜的環(huán)境中可以通過視覺通知4.兩種器件配合更加安全可靠具體外圍電路如3.7所示。圖3.7 聲光報警裝置3.5 顯示及鍵盤接口電路在日常生活中,我們對液晶顯示器并不陌生。液晶顯示模塊已作為很多電子產(chǎn)品的通過器件,如在計算器、萬用表、電子表及很多家用電子產(chǎn)品中都可以看到,顯示的主要是數(shù)字、專用符號和圖形。

20、在單片機的人機交流界面中,一般的輸出方式有以下幾種:發(fā)光管、LED數(shù)碼管、液晶顯示器。發(fā)光管和LED數(shù)碼管比較常用,軟硬件都比較簡單, 在單片機系統(tǒng)中應(yīng)用晶液顯示器作為輸出器件有以下幾個優(yōu)點:顯示質(zhì)量高由于液晶顯示器每一個點在收到信號后就一直保持那種色彩和亮度,恒定發(fā)光,而不像陰極射線管顯示器(CRT)那樣需要不斷刷新新亮點。因此,液晶顯示器畫質(zhì)高且不會閃爍。數(shù)字式接口液晶顯示器都是數(shù)字式的,和單片機系統(tǒng)的接口更加簡單可靠,操作更加方便。體積小、重量輕液晶顯示器通過顯示屏上的電極控制液晶分子狀態(tài)來達到顯示的目的,在重量上比相同顯示面積的傳統(tǒng)顯示器要輕得多。功耗低相對而言,液晶顯示器的功耗主要消

21、耗在其內(nèi)部的電極和驅(qū)動IC上,因而耗電量比其它顯示器要少得多。液晶顯示簡介液晶顯示原理液晶顯示的原理是利用液晶的物理特性,通過電壓對其顯示區(qū)域進行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅(qū)動、易于實現(xiàn)全彩色顯示的特點,目前已經(jīng)被廣泛應(yīng)用在便攜式電腦、數(shù)字攝像機、PDA移動通信工具等眾多領(lǐng)域。液晶顯示器的分類液晶顯示的分類方法有很多種,通??砂雌滹@示方式分為段式、字符式、點陣式等。除了黑白顯示外,液晶顯示器還有多灰度有彩色顯示等。如果根據(jù)驅(qū)動方式來分,可以分為靜態(tài)驅(qū)動(Static)、單純矩陣驅(qū)動(Simple Matrix)和主動矩陣驅(qū)動(Act

22、ive Matrix)三種。液晶顯示器各種圖形的顯示原理:線段的顯示點陣圖形式液晶由M×N個顯示單元組成,假設(shè)LCD顯示屏有64行,每行有128列,每8列對應(yīng)1字節(jié)的8位,即每行由16字節(jié),共16×8=128個點組成,屏上64×16個顯示單元與顯示RAM區(qū)1024字節(jié)相對應(yīng),每一字節(jié)的內(nèi)容和顯示屏上相應(yīng)位置的亮暗對應(yīng)。例如屏的第一行的亮暗由RAM區(qū)的000H00FH的16字節(jié)的內(nèi)容決定,當(dāng)(000H)=FFH時,則屏幕的左上角顯示一條短亮線,長度為8個點;當(dāng)(3FFH)=FFH時,則屏幕的右下角顯示一條短亮線;當(dāng)(000H)=FFH,(001H)=00H,(002

23、H)=00H,(00EH)=00H,(00FH)=00H時,則在屏幕的頂部顯示一條由8段亮線和8條暗線組成的虛線。這就是LCD顯示的基本原理。字符的顯示用LCD顯示一個字符時比較復(fù)雜,因為一個字符由6×8或8×8點陣組成,既要找到和顯示屏幕上某幾個位置對應(yīng)的顯示RAM區(qū)的8字節(jié),還要使每字節(jié)的不同位為“1”,其它的為“0”,為“1”的點亮,為“0”的不亮。這樣一來就組成某個字符。但由于內(nèi)帶字符發(fā)生器的控制器來說,顯示字符就比較簡單了,可以讓控制器工作在文本方式,根據(jù)在LCD上開始顯示的行列號及每行的列數(shù)找出顯示RAM對應(yīng)的地址,設(shè)立光標(biāo),在此送上該字符對應(yīng)的代碼即可。160

24、2LCD主要技術(shù)參數(shù):顯示容量:16×2個字符芯片工作電壓:4.55.5V工作電流:2.0mA(5.0V)模塊最佳工作電壓:5.0V字符尺寸:2.95×4.35(W×H)mm引腳功能說明1602LCD采用標(biāo)準(zhǔn)的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如表1所示:編號符號引腳說明編號符號引腳說明1VSS電源地9D2數(shù)據(jù)2VDD電源正極10D3數(shù)據(jù)3VL液晶顯示偏壓11D4數(shù)據(jù)4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)5R/W讀/寫選擇13D6數(shù)據(jù)6E使能信號14D7數(shù)據(jù)7D0數(shù)據(jù)15BLA背光源正極8D1數(shù)據(jù)16BLK背光源負極表1:引腳接口說明表第1腳:VSS

25、為地電源。第2腳:VDD接5V正電源。第3腳:VL為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度。第4腳:RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。第5腳:R/W為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當(dāng)RS和R/W共同為低電平時可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時可以讀忙信號,當(dāng)RS為高電平R/W為低電平時可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。第15腳:背光源正極

26、。第16腳:背光源負極。1602LCD的指令說明及時序1602液晶模塊內(nèi)部的控制器共有11條控制指令,如表2所示:序號指令RSR/WD7D6D5D4D3D2D1D01清顯示00000000012光標(biāo)返回000000001*3置輸入模式00000001I/DS4顯示開/關(guān)控制0000001DCB5光標(biāo)或字符移位000001S/CR/L*6置功能00001DLNF*7置字符發(fā)生存貯器地址0001字符發(fā)生存貯器地址8置數(shù)據(jù)存貯器地址001顯示數(shù)據(jù)存貯器地址9讀忙標(biāo)志或地址01BF計數(shù)器地址10寫數(shù)到CGRAM或DDRAM)10要寫的數(shù)據(jù)內(nèi)容11從CGRAM或DDRAM讀數(shù)11讀出的數(shù)據(jù)內(nèi)容表二與HD

27、44780相兼容的芯片時序表如表3所示:讀狀態(tài)輸入RS=L,R/W=H,E=H輸出D0D7=狀態(tài)字寫指令輸入RS=L,R/W=L,D0D7=指令碼,E=高脈沖輸出無讀數(shù)據(jù)輸入RS=H,R/W=H,E=H輸出D0D7=數(shù)據(jù)寫數(shù)據(jù)輸入RS=H,R/W=L,D0D7=數(shù)據(jù),E=高脈沖輸出無表三1602LCD的RAM地址映射液晶顯示模塊是一個慢顯示器件,所以在執(zhí)行每條指令之前一定要確認模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,表四是1602的內(nèi)部顯示地址。表四 1602LCD內(nèi)部顯示地址例如第二行第一個字符的地址是40H,那么是否直

28、接寫入40H就可以將光標(biāo)定位在第二行第一個字符的位置呢?這樣不行,因為寫入顯示地址時要求最高位D7恒定為高電平1所以實際寫入的數(shù)據(jù)應(yīng)該是01000000B(40H)+10000000B(80H)=11000000B(C0H)。在對液晶模塊的初始化中要先設(shè)置其顯示模式,在液晶模塊顯示字符時光標(biāo)是自動右移的,無需人工干預(yù)。每次輸入指令前都要判斷液晶模塊是否處于忙的狀態(tài)。1602LCD的一般初始化(復(fù)位)過程延時15mS寫指令38H(不檢測忙信號)延時5mS寫指令38H(不檢測忙信號延時5mS寫指令38H(不檢測忙信號)以后每次寫指令、讀/寫數(shù)據(jù)操作均需要檢測忙信號寫指令38H:顯示模式設(shè)置寫指令0

29、8H:顯示關(guān)閉寫指令01H:顯示清屏寫指令06H:顯示光標(biāo)移動設(shè)置寫指令0CH:顯示開及光標(biāo)不閃爍(1) 顯示器接口電路如圖3.8所示 圖3.8 顯示器接口電路圖(2)鍵盤接口電路如圖3.9所示圖3.9 鍵盤接口電路3.7 電源電路系統(tǒng)中使用的直流電源共有以下幾組: +5VDC:供MCU及其外圍電路、顯示器與鍵盤接口電路的電源。 ±12VDC:供放大電路、V/F轉(zhuǎn)換電路等模擬電路電源,其中傳感器的供橋電壓+5VDC通過把+12VDC變換為+5VDC提供。 +12VDC:考慮到繼電器通斷時會產(chǎn)生干擾,輸出控制電路使用一組獨立的電源,以和模擬電路隔離。系統(tǒng)的供電電源是三相三線制交流電,線

30、電壓為380VAC,系統(tǒng)中使用的交流接觸器的線圈額定電壓為220VAC,因此,需要使用一個電源變壓器把380V的交流電變?yōu)?20V的交流電。CJX2-1210吸合時的線圈功率為70VA,保持時的線圈功率為8VA,考慮到系統(tǒng)的直流電源也需要通過220VAC供給,因此,把380VAC變?yōu)?20VAC的變壓器容量確定為150VA。穩(wěn)壓電路采用集成的三端穩(wěn)壓器,價格便宜,使用方便,內(nèi)部帶有完善的保護電路。電源電路如圖3.10所示。圖3.10 電源電路4 系統(tǒng)軟件設(shè)計系統(tǒng)軟件分為主程序、中斷服務(wù)程序和子程序三部分。4.1 主程序設(shè)計主程序是系統(tǒng)上電或復(fù)位后首先要執(zhí)行的程序,主程序主要完成系統(tǒng)的初始化、掃

31、描顯示、掃描鍵盤,AD轉(zhuǎn)換等工作。主程序上電自動復(fù)位,也可手動復(fù)位;主程序執(zhí)行時,分別進行鍵盤掃描,AD轉(zhuǎn)化,以及液晶顯示。分三步執(zhí)行: 第一:系統(tǒng)上電后,即開始在默認的設(shè)置最小下限參考電和最大參考電壓的顯示在第一行即: P-T Down:25Up:60(參考壓力的 上下限值) Real-time Pre:12(實時監(jiān)測的壓力) (P-T)即Press Test ( Real-time Pre)即Real time press第二:本設(shè)計設(shè)置4個功能鍵,第一個鍵S4:表示功能切換鍵 ,按第一下表示進行調(diào)節(jié)上下限 ,按第二下表示不再調(diào)表,開始進行AD轉(zhuǎn)換。第二個鍵S1: 表示調(diào)節(jié)上限和下限值,按

32、第一下表示調(diào)上限值液晶光標(biāo)閃爍,按第二下液晶不再閃爍,表示調(diào)節(jié)結(jié)束。第三個鍵S2,在按下參考壓力值遞增,上限當(dāng)超過90時復(fù)位為0,下限值當(dāng)超過30時復(fù)位為0,液晶光標(biāo)一直閃爍。第四個鍵S3在按下參考壓力值遞減,當(dāng)上限值減到0時置位為90,下限值減到0時置位為30, 液晶光標(biāo)一直閃爍。第三:AD轉(zhuǎn)換模塊及顯示模塊,壓力傳感器檢測到壓力后,通過模擬量轉(zhuǎn)換量,通過單片機計算,把數(shù)字量在1602液晶上顯示出來。 圖4.1 主程序流程圖4.3 部分主要子程序的設(shè)計系統(tǒng)主要子程序包括顯示子程序、鍵處理子程序,顯示子程序的設(shè)計。 既包含三大模塊: 1,鍵盤掃描的子程序設(shè)計; 2,A/D0804的子程序設(shè)計

33、3,1602液晶顯示的子程序設(shè)計 4,初始化液晶和單片機的子程序設(shè)計5 系統(tǒng)調(diào)試與總結(jié)系統(tǒng)研制完成后,首先在實驗室進行了系統(tǒng)功能測試和技術(shù)指標(biāo)測試。并力求完全達到工業(yè)要求的水準(zhǔn)。5.1 系統(tǒng)功能測試系統(tǒng)上電后,顯示正常,進行了以下測試。 1.上電開始默認顯示測試。2.按鈕s1功能鍵測試。3.按鈕s2數(shù)值增測試。4.按鈕s3數(shù)值減測試。 6按鈕S4鍵的A/D切換與調(diào)節(jié)參考上下限的功能轉(zhuǎn)換測試7.上下限最值測試。8.AD顯示測試。9.AD轉(zhuǎn)換結(jié)果測試。10.報警裝置測試。上述測試結(jié)果最終與預(yù)期相符。5.2 技術(shù)指標(biāo)測試1.硬件電路測試此次課程設(shè)計首先采用PROTEUS軟件仿真,而后進行硬件電路的設(shè)

34、計。在軟件仿真中初步形成了程序的調(diào)試與修改。此過程采用三個步驟,(1)了解各個功能模塊的作用與聯(lián)系。(2)單獨寫出各個模塊的控制程序,進行單獨調(diào)試。(3)各個模塊進行有機組合,實現(xiàn)目的功能。此過程遇到的問題比較少,但了解到了完成一個較大工程所需要具備的素質(zhì)及技巧。完成此系統(tǒng)問題主要出現(xiàn)在硬件的調(diào)試6心得體會 6.1 為何不采用8255了?我想這篇心得體會一定要加上的,忙碌了兩個星期,終于在周五的晚上成功了。我做的這個系統(tǒng)是很復(fù)雜的,當(dāng)初硬件電路設(shè)計時,我本想用8255作為擴展IO口使用,并用PC口做位尋址進行片選操作,同時用PA口控制1602,PB口做輸入接A/D0804,但是8255的操作復(fù)

35、雜程度會使整個設(shè)計顯得臃腫而且多余,最后我決定取消用8255作為整個電路的實現(xiàn)。6.2為何不采用A/D0809? 最后敲定采用了單輸入的A/D0804作為A/D轉(zhuǎn)換,之所以不采用8路輸入的A/D0809為我所要選的A/D轉(zhuǎn)換器件,是因為這個8路輸入進行片選輸入有點浪費系統(tǒng),而且,在幫同學(xué)解決難題的時候我都推薦使用了A/D0809,對于它的操作我也是非常熟悉的。但為了能夠由硬件電路作為我的課程設(shè)計結(jié)果的證明。我采用了我自買板子的硬件資源。6.3在幫助同學(xué)的過程中我學(xué)到了什么?整個課程設(shè)計下來,我積累了豐富的經(jīng)驗,分別幫同學(xué)做了斷電保護系統(tǒng),步進電機的正反轉(zhuǎn)加速減速,還有數(shù)字音樂盒的輔助調(diào)試。在幫

36、同學(xué)解決問題的同時,也是我的知識結(jié)構(gòu)更加完善。我也進一步掌握了調(diào)程序的方法,比如說:我自創(chuàng)在程序中假如小燈,比如說在各個功能跳轉(zhuǎn)時再養(yǎng)從while語句中跳到另一個while語句中。6.4在單片機領(lǐng)域我的規(guī)劃? 從接觸51單片機到自己開始練習(xí)寫程序,我一步一步養(yǎng)成了獨立思考,嚴謹?shù)淖黠L(fēng).我在51單片機的基礎(chǔ)上我又自學(xué)的一款功能更加強大的單片機AVR,我知道路還很遠,但我會繼續(xù)堅持下去.因為在單片上,編程越多我就越自信.參考文獻【1】 單片機微型計算機原理、應(yīng)用及接口技術(shù) 張迎新 國防工業(yè)出版社【2】 C程序設(shè)計 譚永強 清華大學(xué)出版社附錄A 系統(tǒng)原理圖附錄B 源程序#include<reg

37、52.h>#define uchar unsigned char#define uint unsigned intsbit cs=P32;sbit rd=P37;sbit wr=P36;uchar value;sbit eg=P34;sbit rs=P35;sbit s1=P20;sbit s2=P21;sbit s3=P22;sbit s4=P23;sbit dula=P26;sbit wela=P27;uchar uper,low;uchar s1num,num;uchar table="P-T Down:25Up:60"uchar table1="Re

38、al-time Pre:12"void delay(uint z)/延遲函數(shù) uchar x,y; for(x=z;x>0;x-) for(y=110;y>0;y-); void sweep() if(s4=0) delay(5); if(s4=0) num+; if(num=2) num=0; while(!s4); void write_com(uchar com);/寫命令函數(shù)void write_dat(uchar dat);/寫數(shù)據(jù)函數(shù)void chushi();/關(guān)閉LED,并對LCD初始化,利用數(shù)組;void write_press(uchar addr,u

39、char dat)/此函數(shù)可把十進制數(shù)寫入對應(yīng)位的液晶中 uchar a,b; a=dat/10; b=dat%10; write_com(0x80+addr); write_dat(0x30+a); write_dat(0x30+b); void write_press2(uchar addr,uchar dat) uchar a,b; a=dat/10; b=dat%10; write_com(0x80+0x40+addr); write_dat(0x30+a); write_dat(0x30+b); uchar AD_divert() uchar a; cs=0; wr=0; delay(200); wr=1; cs=1; delay(1000); cs=0; rd=0; delay(100); a=P1; rd=1; cs=1; a=a%10+17; return a; void AD_display() value=AD_divert(); write_press2(14,value); write_com(0x80+14); void display();void keys

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論