




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 單片機原理與接口技術課程設計單片機原理與接口技術課 程 設 計成績評定表設計課題 基于89c51的自身斷電保護系統設計學院名稱 : 電氣工程學院 專業班級 : 自動1002 學生姓名 : 秦凱新 學 號 : 201046820427 指導教師 : 王黎 臧海河 周剛 設計地點 : 31-505 設計時間 : 2012-12-172012-12-28 指導教師意見:成績: 簽名: 年 月 日23單片機原理與接口技術課 程 設 計課程設計名稱: 基于89c52的壓力監測系統設計 專 業 班 級 : 自 動1002 學 生 姓 名 : 秦凱新 學 號 : 201046820427 指 導 教 師
2、: 王黎 臧海河 周剛 課程設計地點: 31-505 課程設計時間: 2012-12-172012-12-28 單片機原理與接口技術 課程設計任務書學生姓名秦凱新專業班級自動1002學號201046820427題 目基于89c52的壓力監測系統設計課題性質工程設計課題來源自擬指導教師王黎、臧海河、周剛主要內容(參數) 89C52的壓力檢測保護系統可以實現以下功能:1.實現開機后自動恢復供電;2壓力超過上限值或下限制會自動報警;3采用電流互感,采集電路電流來控制繼電器常閉點的斷開和閉合從而控制回路斷開和閉合;4采用聲光報警,使用者可以及時發現和處理電路事故。任務要求(進度)第1-2天:熟悉課程設
3、計任務及要求,查閱技術資料,確定設計方案。第3-4天:按照確定的方案設計單元電路。要求畫出單元電路圖,元件及元件參數選擇要有依據,各單元電路的設計要有詳細論述。第5-6天:軟件設計,編寫程序。第7-8天:實驗室調試。第9-10天:撰寫課程設計報告。要求內容完整、圖表清晰、文理流暢、格式規范、方案合理、設計正確,篇幅合理。主要參考資料1 張迎新單片微型計算機原理、應用及接口技術(第2版)M北京:國防工業出版社,20042偉福LAB6000系列單片機仿真實驗系統使用說明書3閻石數字電路技術基礎(第五版)北京:高等教育出版社,20064單片機開發板的原理圖及系統。審查意見系(教研室)主任簽字: 年
4、月 日 目 錄1 引言62 總體方案設計62.1硬件組成62.2 方案論證72.3 總體方案83 硬件電路設計103.1 時鐘電路103.2復位電路113.3 AD簡介與原理分析123.4 聲光報警接口電路183.5 顯示及鍵盤接口電路193.7 電源電路24 系統軟件設計34.1 主程序設計34.3 部分主要子程序的設計65 系統調試與總結65.1 系統功能測試65.2 技術指標測試76心得體會76.1 為何不采用8255了?76.2為何不采用A/D0809?86.3在幫助同學的過程中我學到了什么?86.4在單片機領域我的規劃?8參考文獻9附錄A 系統原理圖9附錄B 源程序101 引言 壓力
5、監測普遍用于工業領域,并對國家的發展產生了深厚的影響,小到體重計,大到工業中反應爐的氣壓聲電報警。甚至航空航天,智能儀表。以及機器人。本設計就是工業中最普遍的氣壓監測報警系統。所以,這個系統采用自動檢測反應爐中的壓力大小,通過傳感器,并實時進行在液晶1602上進行顯示,還有在液晶上進行參考上限電壓值的設置和參考下限電壓值的的設置。并通過在單片機內部進行比較計算,來實現整個壓力監測系統的聲光電報警。 本系統的設計基于A/D0804芯片和AT89C52單片機,并采用液晶1602作為顯示輸出,系統雖小卻包含了工業要求的各個方面,作為聲電報警模塊,主要用到蜂鳴器和發光二極管。當監測壓力低于下限值和高于
6、上限值就會進行聲光報警。此次系統設計就是針對工業的反應爐的壓力監測,甚至可做體重計到最小的方面。本設計純為個人設計。程序也在開發板驗證成功,如有任何疑問,都可通過實驗調試驗證。2 總體方案設計2.1硬件組成1. 控制器。控制器是系統的核心部分,可以用工業計算機PLC、或者單片機。2. A /D轉換器。A/D轉換器可以把測得的模擬量轉換成數字量輸出,可以直接讀取。3. 繼電器。繼電器在電路中起到斷電保護作用,是系統的安全保障。其種類很多,有電流繼電器、電壓及電器、速度繼電器等等。4. 鍵盤。通過鍵盤可以設置限制電流大小。5. 液晶顯顯示。液晶可以顯示設置電流以及實時電流值大小。2.2 方案論證1
7、.控制器控制器選擇STC 89C51RC 40C單片機來控制溫度的測量顯示。目前國內外使用較多的微控制器是以51內核擴展出的單片機,51單片機的使用已經發展到很高的一個層次,編程多以C語言為主,操作簡單,用途廣泛,易于控制。下面通過標號STC 89C51RC 40C的解釋來對該單片機進行詳細的介紹:STC:前綴,表示芯片為STC公司生產的產品。8:表示該芯片為8051內核芯片9:表示內部含Flash EEPROM存儲器。C:表示該器件為CMOS產品,CMOS常指保存計算機基本啟動信息的 芯片,可由主板的電池供電,即使系統掉電,信息也不會丟失。5:固定不變1:表示該芯片內部程序存儲空間的大小,1
8、為4KB,2為8KB,3為12KB等,程序空間的大小決定了一個芯片所能裝入的執行代碼的多少。RC:表示STC單片機內部RAM(隨機讀寫存儲器)為512KB。40:表示該芯片外部晶振最高可接入40MHz。C:產品級別,表示該芯片使用溫度范圍,C表示商業級,溫度范圍為0度-+70度。該單片機的存儲器相對設計任務來說,對程序代碼的儲存足夠了,所以無需再加外圍的擴展存儲器。2.A/D轉換器模數轉換器是該電路中的重要組成部分,其工作效率直影響到系統的效率。ADC0809轉換器模擬輸入電壓范圍0+5V,不需零點和滿刻度校準,而且能耗低,工作溫度范圍寬,所以可以作為該系統的轉換器。2.3 總體方案按照上述方
9、案論證的結果,首先通過鍵盤設定電流值,然后檢測電流值,轉換成數字量通過數碼管顯示出來。當電流過大時繼電器動作,切斷電路,保護用電器。如圖2.1所示。圖2.1 總體方案框圖圖2.2 系統流程圖3 硬件電路設計3.1 時鐘電路單片機片內有一個高增益的反相放大器,反相放大器的輸入端為XTAL1,輸出端為XTAL2,由該放大器構成的振蕩電路和時鐘電路一起構成了單片機的時鐘方式。在內部方式時鐘電路中,必須在XTAL1和XTAL2引腳兩端跨接石英晶體振蕩器和兩個微調電容構成振蕩電路,通常C1和C2一般取30pF,晶振的頻率取值在1.2MHz12MHz之間。對于外接時鐘電路,要求XTAL1接地,XTAL2腳
10、接外部時鐘,對于外部時鐘信號并無特殊要求,只要保證一定的脈沖寬度,時鐘頻率低于12MHz即可。晶體振蕩器的振蕩信號從XTAL2端送入內部時鐘電路,它將該振蕩信號二分頻,產生一個兩相時鐘信號P1和P2供單片機使用。時鐘信號的周期稱為狀態時間S,它是振蕩周期的2倍,P1信號在每個狀態的前半周期有效,在每個狀態的后半周期P2信號有效。CPU就是以兩相時鐘P1和P2為基本節拍協調單片機各部分有效工作。如圖3.1所示。 圖3.1單片機時鐘電路3.2復位電路在上電或復位過程中,控制CPU的復位狀態:這段時間內讓CPU保持復位狀態,而不是一上電或剛復位完畢就工作,防止CPU發出錯誤的指令、執行錯誤操作,也可
11、以提高電磁兼容性能。單片機在啟動時都需要復位,以使CPU及系統各部件處于確定的初始狀態,并從初態開始工作。單片機系統的復位方式有:手動按鈕復位和上電復位 。復位方式有手動復位、上電復位和積分型復位。如圖3.2所示。圖3.2 復位電路3.3 AD簡介與原理分析 模擬/數字轉換就是我們通常所說的A/D轉換,它將輸入的模擬信號(如電壓)轉換成控制芯片(如單片機,ARM)所能識別的二進制形式,然后經過運算,既可以還原出輸入模擬信號的值。 A/D轉換是一種非常重要的技術手段,是單片機等控制芯片與外界信號的接口部分,如圖3.3所示。圖3.3外界信號:外界信號的范圍十分廣泛,自然界的一切信號,比如聲音,溫度
12、甚至是血糖濃度等都可以規類為外界信號。傳感器:因為大多數外界信號都不是電信號,因此需要通過各種傳感器將這些外界信號轉換成電信號,例如:通過熱電耦可以將溫度轉換成一個電壓值。模擬電路:設計模擬電路的原因主要有以下兩點1由于外界信號的復雜性,使得傳感器直接輸出的電信號可能會存在一些問題(如不穩定),這些不穩定信號如果直接送到A/D芯片進行采樣,則最終結果可能使得最后的顯示值來回亂跳,而無法確定待測的外界信號到底是多少。因此,可能需要設計一套模擬電路對傳感器輸出的不穩定電信號進行濾波等處理,去除干擾,使得進入A/D轉換芯片的電壓值為一個穩定的信號。2每一個A/D轉換芯片都有一個參考電壓,只有輸入的模
13、擬電壓值在這個參考電壓的范圍內才能進行正確的轉換,例如:本試驗將ADC0804芯片的參考電壓設置成0V5V,因此如果輸入的電壓值大于5V,則轉換出的結果永遠為0xFF,若輸入的電壓值小于0V,則轉換出的結果永遠為0,這樣便無法正確的還原出被測信號的大小。基于上述原因,我們可能需要設計一套模擬電路,傳感器的輸出電壓值進行一些變換(放大,縮小),使得送到A/D轉換芯片的電壓值在轉換芯片的參考電壓范圍內。A/D轉換芯片:即模擬/數字轉換芯片,它將輸入的模擬電壓信號轉換成單片機等控制處理器能夠識別的數字二進制形式。處理器芯片:處理器芯片有很多中(比如51單片機,ARM或者是PC上的奔騰處理器,AMD處
14、理器)這些處理器雖然架構不一樣,但是有個共同的特點,就是它們能夠運行程序,因此它們能通過程序對A/D芯片送入的二進制形式的電壓值進行處理,通過運算將其還原成待測的外界信號值,控制顯示部件(如LCD,八段數碼管)將這個值顯示出來。例如:假如ADC0804輸出的二進制值0x80,則根據A/D轉換公式可以推出ADC0804的輸入電壓大小為(0x80/0x100)*5V=2.5V。假設信號經過模擬電路縮小了8倍,則可以推出傳感器的輸出電壓為2.5V*8=20V,再根據傳感器的轉換公式(一般手冊會給出)即可得到輸入的外界信號的值。顯示:顯示的作用是將計算出的待測外界信號的值展示給測量人員,顯示的形式有很
15、多種,如LCD,八段數碼管,上位機軟件等。通過上面的介紹,大家一定對這種基于A/D芯片的嵌入式設計模式有了一個大致的了解,其實現時中很多應用都是遵循了這種設計模式,比如常用的數字萬用表,數字溫度測量儀,血糖測量儀等。本試驗也遵循了這種設計模式,只不過它省略了傳感器和模擬電路部分,首先通過滑動變阻器調節輸入到ADC0804芯片的電壓值(ADC0804芯片的參考電壓調節成0V5V,而滑動變阻器產生的電壓范圍也為0V5V,因此沒有必要設計額外的模擬電路),然后通過51單片機進行運算處理得到這個輸入電壓值,最后再控制八段數碼管將這個電壓值顯示出來,實際上是實現了一個簡易的數字電壓測量表。如圖3.4所示
16、。圖3.4圖3.5 ADC0804規格及引腳分配圖本試驗采用的A/D芯片為ADC0804,它是CMOS 8位單通道逐次漸近型的模/數轉換器,其規格及引腳圖如圖3.5所示,根據手冊我們可以得到各個引腳的大致功能如上:/CS:芯片片選信號,低電平有效,即/CS=0,該芯片才能正常工作,在外接多個ADC0804芯片時,該信號可以作為選擇地址使用,通過不同的地址信號使能不同的ADC0804芯片,從而可以實現多個ADC通道的分時復用。/WR:啟動ADC0804進行ADC采樣,該信號低電平有效,即/WR信號由高電平變成低電平時,觸發一次ADC轉換。/RD:低電平有效,即/RD=0時,可以通過數據端口DB0
17、DB7讀出本次的采樣結果。UIN(+)和UIN(-):模擬電壓輸入端,模擬電壓輸入接UIN(+)端,UIN(-)端接地。雙邊輸入時UIN(+)、UIN(-)分別接模擬電壓信號的正端和負端。當輸入的模擬電壓信號存在“零點漂移電壓”時,可在UIN(-)接一等值的零點補償電壓,變換時將自動從UIN(+)中減去這一電壓。VREF/2:參考電壓接入引腳,該引腳可外接電壓也可懸空,若外界電壓,則ADC的參考電壓為該外界電壓的兩倍,如不外接,則Vref與Vcc共用電源電壓,此時ADC的參考電壓即為電源電壓Vcc的值。CLKR和CLKIN:外接RC電路產生模數轉換器所需的時鐘信號,時鐘頻率CLK = 1/1.
18、1RC,一般要求頻率范圍100KHz1.28MHz。AGND和DGND:分別接模擬地和數字地。 /INT:中斷請求信號輸出引腳,該引腳低電平有效,當一次A/D轉換完成后,將引起/INT=0,實際應用時,該引腳應與微處理器的外部中斷輸入引腳相連(如51單片機的INT0,INT1腳),當產生/INT信號有效時,還需等待/RD=0才能正確讀出A/D轉換結果,若ADC0804單獨使用,則可以將/INT引腳懸空。DB0DB7:輸出A/D轉換后的8位二進制結果。AD外圍電路圖中Vin(+)接電位器的中間滑動端,Vin(-)接地,因為這兩端可以輸入差分電壓,即它可以測量這兩端之間的電壓,此時,Vin(-)即
19、為ADC0804的模擬輸入電壓。Vin(+)與電位器之間串聯一個10歐電阻,目的是限制電流。防止電流過大而燒壞芯片。如圖3.6所示。 圖3.6 AD外圍設計原理圖3.4 聲光報警接口電路采用聲光報警裝置有一下幾大優點,1.在遠距離是可以可以通過聲音及時通知2.在近距離可以通過視聽覺做出反應3.在嘈雜的環境中可以通過視覺通知4.兩種器件配合更加安全可靠具體外圍電路如3.7所示。圖3.7 聲光報警裝置3.5 顯示及鍵盤接口電路在日常生活中,我們對液晶顯示器并不陌生。液晶顯示模塊已作為很多電子產品的通過器件,如在計算器、萬用表、電子表及很多家用電子產品中都可以看到,顯示的主要是數字、專用符號和圖形。
20、在單片機的人機交流界面中,一般的輸出方式有以下幾種:發光管、LED數碼管、液晶顯示器。發光管和LED數碼管比較常用,軟硬件都比較簡單, 在單片機系統中應用晶液顯示器作為輸出器件有以下幾個優點:顯示質量高由于液晶顯示器每一個點在收到信號后就一直保持那種色彩和亮度,恒定發光,而不像陰極射線管顯示器(CRT)那樣需要不斷刷新新亮點。因此,液晶顯示器畫質高且不會閃爍。數字式接口液晶顯示器都是數字式的,和單片機系統的接口更加簡單可靠,操作更加方便。體積小、重量輕液晶顯示器通過顯示屏上的電極控制液晶分子狀態來達到顯示的目的,在重量上比相同顯示面積的傳統顯示器要輕得多。功耗低相對而言,液晶顯示器的功耗主要消
21、耗在其內部的電極和驅動IC上,因而耗電量比其它顯示器要少得多。液晶顯示簡介液晶顯示原理液晶顯示的原理是利用液晶的物理特性,通過電壓對其顯示區域進行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規模集成電路直接驅動、易于實現全彩色顯示的特點,目前已經被廣泛應用在便攜式電腦、數字攝像機、PDA移動通信工具等眾多領域。液晶顯示器的分類液晶顯示的分類方法有很多種,通常可按其顯示方式分為段式、字符式、點陣式等。除了黑白顯示外,液晶顯示器還有多灰度有彩色顯示等。如果根據驅動方式來分,可以分為靜態驅動(Static)、單純矩陣驅動(Simple Matrix)和主動矩陣驅動(Act
22、ive Matrix)三種。液晶顯示器各種圖形的顯示原理:線段的顯示點陣圖形式液晶由M×N個顯示單元組成,假設LCD顯示屏有64行,每行有128列,每8列對應1字節的8位,即每行由16字節,共16×8=128個點組成,屏上64×16個顯示單元與顯示RAM區1024字節相對應,每一字節的內容和顯示屏上相應位置的亮暗對應。例如屏的第一行的亮暗由RAM區的000H00FH的16字節的內容決定,當(000H)=FFH時,則屏幕的左上角顯示一條短亮線,長度為8個點;當(3FFH)=FFH時,則屏幕的右下角顯示一條短亮線;當(000H)=FFH,(001H)=00H,(002
23、H)=00H,(00EH)=00H,(00FH)=00H時,則在屏幕的頂部顯示一條由8段亮線和8條暗線組成的虛線。這就是LCD顯示的基本原理。字符的顯示用LCD顯示一個字符時比較復雜,因為一個字符由6×8或8×8點陣組成,既要找到和顯示屏幕上某幾個位置對應的顯示RAM區的8字節,還要使每字節的不同位為“1”,其它的為“0”,為“1”的點亮,為“0”的不亮。這樣一來就組成某個字符。但由于內帶字符發生器的控制器來說,顯示字符就比較簡單了,可以讓控制器工作在文本方式,根據在LCD上開始顯示的行列號及每行的列數找出顯示RAM對應的地址,設立光標,在此送上該字符對應的代碼即可。160
24、2LCD主要技術參數:顯示容量:16×2個字符芯片工作電壓:4.55.5V工作電流:2.0mA(5.0V)模塊最佳工作電壓:5.0V字符尺寸:2.95×4.35(W×H)mm引腳功能說明1602LCD采用標準的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如表1所示:編號符號引腳說明編號符號引腳說明1VSS電源地9D2數據2VDD電源正極10D3數據3VL液晶顯示偏壓11D4數據4RS數據/命令選擇12D5數據5R/W讀/寫選擇13D6數據6E使能信號14D7數據7D0數據15BLA背光源正極8D1數據16BLK背光源負極表1:引腳接口說明表第1腳:VSS
25、為地電源。第2腳:VDD接5V正電源。第3腳:VL為液晶顯示器對比度調整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產生“鬼影”,使用時可以通過一個10K的電位器調整對比度。第4腳:RS為寄存器選擇,高電平時選擇數據寄存器、低電平時選擇指令寄存器。第5腳:R/W為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當RS和R/W共同為低電平時可以寫入指令或者顯示地址,當RS為低電平R/W為高電平時可以讀忙信號,當RS為高電平R/W為低電平時可以寫入數據。第6腳:E端為使能端,當E端由高電平跳變成低電平時,液晶模塊執行命令。第714腳:D0D7為8位雙向數據線。第15腳:背光源正極
26、。第16腳:背光源負極。1602LCD的指令說明及時序1602液晶模塊內部的控制器共有11條控制指令,如表2所示:序號指令RSR/WD7D6D5D4D3D2D1D01清顯示00000000012光標返回000000001*3置輸入模式00000001I/DS4顯示開/關控制0000001DCB5光標或字符移位000001S/CR/L*6置功能00001DLNF*7置字符發生存貯器地址0001字符發生存貯器地址8置數據存貯器地址001顯示數據存貯器地址9讀忙標志或地址01BF計數器地址10寫數到CGRAM或DDRAM)10要寫的數據內容11從CGRAM或DDRAM讀數11讀出的數據內容表二與HD
27、44780相兼容的芯片時序表如表3所示:讀狀態輸入RS=L,R/W=H,E=H輸出D0D7=狀態字寫指令輸入RS=L,R/W=L,D0D7=指令碼,E=高脈沖輸出無讀數據輸入RS=H,R/W=H,E=H輸出D0D7=數據寫數據輸入RS=H,R/W=L,D0D7=數據,E=高脈沖輸出無表三1602LCD的RAM地址映射液晶顯示模塊是一個慢顯示器件,所以在執行每條指令之前一定要確認模塊的忙標志為低電平,表示不忙,否則此指令失效。要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,表四是1602的內部顯示地址。表四 1602LCD內部顯示地址例如第二行第一個字符的地址是40H,那么是否直
28、接寫入40H就可以將光標定位在第二行第一個字符的位置呢?這樣不行,因為寫入顯示地址時要求最高位D7恒定為高電平1所以實際寫入的數據應該是01000000B(40H)+10000000B(80H)=11000000B(C0H)。在對液晶模塊的初始化中要先設置其顯示模式,在液晶模塊顯示字符時光標是自動右移的,無需人工干預。每次輸入指令前都要判斷液晶模塊是否處于忙的狀態。1602LCD的一般初始化(復位)過程延時15mS寫指令38H(不檢測忙信號)延時5mS寫指令38H(不檢測忙信號延時5mS寫指令38H(不檢測忙信號)以后每次寫指令、讀/寫數據操作均需要檢測忙信號寫指令38H:顯示模式設置寫指令0
29、8H:顯示關閉寫指令01H:顯示清屏寫指令06H:顯示光標移動設置寫指令0CH:顯示開及光標不閃爍(1) 顯示器接口電路如圖3.8所示 圖3.8 顯示器接口電路圖(2)鍵盤接口電路如圖3.9所示圖3.9 鍵盤接口電路3.7 電源電路系統中使用的直流電源共有以下幾組: +5VDC:供MCU及其外圍電路、顯示器與鍵盤接口電路的電源。 ±12VDC:供放大電路、V/F轉換電路等模擬電路電源,其中傳感器的供橋電壓+5VDC通過把+12VDC變換為+5VDC提供。 +12VDC:考慮到繼電器通斷時會產生干擾,輸出控制電路使用一組獨立的電源,以和模擬電路隔離。系統的供電電源是三相三線制交流電,線
30、電壓為380VAC,系統中使用的交流接觸器的線圈額定電壓為220VAC,因此,需要使用一個電源變壓器把380V的交流電變為220V的交流電。CJX2-1210吸合時的線圈功率為70VA,保持時的線圈功率為8VA,考慮到系統的直流電源也需要通過220VAC供給,因此,把380VAC變為220VAC的變壓器容量確定為150VA。穩壓電路采用集成的三端穩壓器,價格便宜,使用方便,內部帶有完善的保護電路。電源電路如圖3.10所示。圖3.10 電源電路4 系統軟件設計系統軟件分為主程序、中斷服務程序和子程序三部分。4.1 主程序設計主程序是系統上電或復位后首先要執行的程序,主程序主要完成系統的初始化、掃
31、描顯示、掃描鍵盤,AD轉換等工作。主程序上電自動復位,也可手動復位;主程序執行時,分別進行鍵盤掃描,AD轉化,以及液晶顯示。分三步執行: 第一:系統上電后,即開始在默認的設置最小下限參考電和最大參考電壓的顯示在第一行即: P-T Down:25Up:60(參考壓力的 上下限值) Real-time Pre:12(實時監測的壓力) (P-T)即Press Test ( Real-time Pre)即Real time press第二:本設計設置4個功能鍵,第一個鍵S4:表示功能切換鍵 ,按第一下表示進行調節上下限 ,按第二下表示不再調表,開始進行AD轉換。第二個鍵S1: 表示調節上限和下限值,按
32、第一下表示調上限值液晶光標閃爍,按第二下液晶不再閃爍,表示調節結束。第三個鍵S2,在按下參考壓力值遞增,上限當超過90時復位為0,下限值當超過30時復位為0,液晶光標一直閃爍。第四個鍵S3在按下參考壓力值遞減,當上限值減到0時置位為90,下限值減到0時置位為30, 液晶光標一直閃爍。第三:AD轉換模塊及顯示模塊,壓力傳感器檢測到壓力后,通過模擬量轉換量,通過單片機計算,把數字量在1602液晶上顯示出來。 圖4.1 主程序流程圖4.3 部分主要子程序的設計系統主要子程序包括顯示子程序、鍵處理子程序,顯示子程序的設計。 既包含三大模塊: 1,鍵盤掃描的子程序設計; 2,A/D0804的子程序設計
33、3,1602液晶顯示的子程序設計 4,初始化液晶和單片機的子程序設計5 系統調試與總結系統研制完成后,首先在實驗室進行了系統功能測試和技術指標測試。并力求完全達到工業要求的水準。5.1 系統功能測試系統上電后,顯示正常,進行了以下測試。 1.上電開始默認顯示測試。2.按鈕s1功能鍵測試。3.按鈕s2數值增測試。4.按鈕s3數值減測試。 6按鈕S4鍵的A/D切換與調節參考上下限的功能轉換測試7.上下限最值測試。8.AD顯示測試。9.AD轉換結果測試。10.報警裝置測試。上述測試結果最終與預期相符。5.2 技術指標測試1.硬件電路測試此次課程設計首先采用PROTEUS軟件仿真,而后進行硬件電路的設
34、計。在軟件仿真中初步形成了程序的調試與修改。此過程采用三個步驟,(1)了解各個功能模塊的作用與聯系。(2)單獨寫出各個模塊的控制程序,進行單獨調試。(3)各個模塊進行有機組合,實現目的功能。此過程遇到的問題比較少,但了解到了完成一個較大工程所需要具備的素質及技巧。完成此系統問題主要出現在硬件的調試6心得體會 6.1 為何不采用8255了?我想這篇心得體會一定要加上的,忙碌了兩個星期,終于在周五的晚上成功了。我做的這個系統是很復雜的,當初硬件電路設計時,我本想用8255作為擴展IO口使用,并用PC口做位尋址進行片選操作,同時用PA口控制1602,PB口做輸入接A/D0804,但是8255的操作復
35、雜程度會使整個設計顯得臃腫而且多余,最后我決定取消用8255作為整個電路的實現。6.2為何不采用A/D0809? 最后敲定采用了單輸入的A/D0804作為A/D轉換,之所以不采用8路輸入的A/D0809為我所要選的A/D轉換器件,是因為這個8路輸入進行片選輸入有點浪費系統,而且,在幫同學解決難題的時候我都推薦使用了A/D0809,對于它的操作我也是非常熟悉的。但為了能夠由硬件電路作為我的課程設計結果的證明。我采用了我自買板子的硬件資源。6.3在幫助同學的過程中我學到了什么?整個課程設計下來,我積累了豐富的經驗,分別幫同學做了斷電保護系統,步進電機的正反轉加速減速,還有數字音樂盒的輔助調試。在幫
36、同學解決問題的同時,也是我的知識結構更加完善。我也進一步掌握了調程序的方法,比如說:我自創在程序中假如小燈,比如說在各個功能跳轉時再養從while語句中跳到另一個while語句中。6.4在單片機領域我的規劃? 從接觸51單片機到自己開始練習寫程序,我一步一步養成了獨立思考,嚴謹的作風.我在51單片機的基礎上我又自學的一款功能更加強大的單片機AVR,我知道路還很遠,但我會繼續堅持下去.因為在單片上,編程越多我就越自信.參考文獻【1】 單片機微型計算機原理、應用及接口技術 張迎新 國防工業出版社【2】 C程序設計 譚永強 清華大學出版社附錄A 系統原理圖附錄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)/延遲函數 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);/寫命令函數void write_dat(uchar dat);/寫數據函數void chushi();/關閉LED,并對LCD初始化,利用數組;void write_press(uchar addr,u
39、char dat)/此函數可把十進制數寫入對應位的液晶中 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. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025屆四川省廣元天立國際學校高一下化學期末檢測模擬試題含解析
- 跟蹤評估指標體系-洞察及研究
- 2025屆江蘇省南通市南通第一中學高一下化學期末聯考試題含解析
- 跨領域知識融合在自動駕駛-洞察闡釋
- 氮肥環保法規解讀-洞察闡釋
- 糖尿病患者靶向藥物治療效果評估研究-洞察闡釋
- 編程語言生態構建-第1篇-洞察闡釋
- 食品供應鏈安全監控-洞察闡釋
- 生態經濟的模糊性與風險模型研究-洞察闡釋
- 零售業智能環境監測系統的開發-洞察闡釋
- 2024年浙江省新華書店集團招聘筆試參考題庫附帶答案詳解
- 1.知識點1-2-1 理解曝光三要素與曝光量
- 《中華民族共同體概論》考試復習題庫(含答案)
- PTBD管路維護技術
- 220kV變電運行中的故障排除方法
- 30題投資管理類崗位常見面試問題含HR問題考察點及參考回答
- 煤礦典型事故案例分析培訓課件
- 15D501 建筑物防雷設施安裝
- 電氣設備運行與維護-開關電器的運行與維護
- 決策力和執行力教學課件
- 試產總結報告模板
評論
0/150
提交評論