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

正文內(nèi)容

基于52單片機的甲醛檢測儀課程設(shè)計-閱讀頁

2024-08-28 12:13本頁面
  

【正文】 就顯示出一個字符。根據(jù)在 LCD 上開始顯示的行列號及每行的列數(shù)就可以找出顯示 RAM 的對應(yīng)地址,送上漢字要顯示的第一字節(jié) ,以此類推,最后送完 32B,這樣漢字就顯示出來了。但對于某些緊急狀態(tài),比如系統(tǒng)檢測到的錯誤狀態(tài)等,為了使操作人員不至于忽視,及時采取措施,往往還需要有某種更能引人注意,提起警覺的報警信號。其中,前兩種報警裝置因硬件結(jié)構(gòu)簡單,軟件編程方便,常常在單片機應(yīng)用系統(tǒng)中使用;而語音報警雖然警報信息較直接,但硬件成本高,結(jié)構(gòu)較復(fù)雜,軟件量也增加 。壓電式蜂鳴器結(jié)構(gòu)簡單、耗電少,更適于在單片機系統(tǒng)中應(yīng)用。在圖 2 中, 接三極管基極輸入端,當(dāng) 輸出高電平 “1” 時,三極管導(dǎo)通,蜂鳴器的通電而發(fā)音,當(dāng) 輸出低電平 “0”時,三極管截止,蜂鳴器停止發(fā)音。 以下為報警電路接線圖見圖 圖 報警電路圖 硬件仿真環(huán)境介紹 Proteus ISIS 是英國 Labcenter 公司開發(fā)的電路分析與實物仿真軟件。具有模擬電路仿真、數(shù)字電路仿真、單片機及其外圍電路組成的系統(tǒng)的仿真、 RS232 動態(tài)仿真、 I2C 調(diào)試器、SPI 調(diào)試器、鍵盤和 LCD 系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號發(fā)生器等。目前支持的單片機類型有: 68000 系列、 8051系列、 AVR 系列、 PIC12 系列、 PIC16 系列、 PIC18 系列、 Z80 系列、 HC11 系列以及各種外圍芯片。在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點等調(diào)試功能,同時可以觀察各個變量、寄存器等的當(dāng)前狀態(tài),因此在該軟件仿真系統(tǒng)中,也必須具有這些功能;同時支持第三方的軟件編譯和調(diào)試環(huán)境,如 Keil C51 uVision2 等軟件??傊?,該軟件是一款集單片機和 SPICE 分析于一身的仿真軟件,功能極其強大。 圖 6 Professional 圖標(biāo) 進(jìn)入 Proteus ISIS:雙擊桌面上的 ISIS 6 Professional 圖標(biāo)(見圖 )或者單擊屏幕左下方的“開始”→“程序”→“ Proteus 6 Professional” →“ ISIS 6 Professional” ,出現(xiàn)如圖 所示屏幕,表明進(jìn)入 Proteus ISIS集成環(huán)境。包括:標(biāo)題欄、主菜單、標(biāo) 準(zhǔn)工具欄、繪圖工具欄、狀態(tài)欄、對象選擇按鈕、預(yù)覽對象方位控制按鈕、仿真進(jìn)程控制按鈕、預(yù)覽窗口、對象選擇器窗口、圖形編輯窗口。匯編語言的可控性較高級語言來說更具優(yōu)越性。匯編語言的機器代碼生成效率高,控制性好,但就是移植性不高。還有很多處理器都支持 C 編譯器,這樣意味著處理器也能很快上手?;?C語言和匯編語言的優(yōu)缺點,本系統(tǒng)采用 C 語言編寫方法。整個軟件程序的編寫采用查詢式方式編寫的。機器匯編是通過匯編軟件將源程序變?yōu)闄C器碼,用于 MCS51單片機的匯編軟件有早期的 A51,隨著單片機開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言開發(fā),單片機的開發(fā)軟件也在不斷發(fā)展, Keil 軟件是目前最流行開發(fā) MCS51系列單片機的軟件,這從近年來各仿真機廠商紛紛宣布全面支持 Keil 即可看出。運行 Keil 軟件需要Pentium 或以上的 CPU, 16MB 或更多 RAM、 20M 以上空閑的硬盤空間、 WIN9 NT、WIN20 WINXP 等操作系統(tǒng)。用過匯編語言后再使用 C 來開發(fā),體會更加深刻。另外重要的一點,只要看一下編譯后 生成的匯編代碼,就能體會到 Keil C51 生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。 C51 單片機軟件開發(fā)系統(tǒng)的整體結(jié)構(gòu) C51 工具包的整體結(jié)構(gòu),如圖 所示,其中 uVision 與 Ishell 分別是 C51 for Windows 和 for Dos 的集成開發(fā)環(huán)境 (IDE),可以完成編輯、編譯、連接、調(diào)試、仿真等整個開發(fā)流程。然后分別由 C51 及 A51 編譯器編譯生成目標(biāo)文件 (.OBJ)。 ABS 文件由 OH51 轉(zhuǎn)換成標(biāo)準(zhǔn)的 Hex 文件,以供調(diào)試器 dScope51 或tScope51 使用進(jìn)行源代碼級調(diào)試,也可由仿真器使用直接對目標(biāo)板進(jìn)行調(diào)試,也可以直接寫入程序存貯器如 EPROM 中。 ( 2)選擇所要的單片機,這里我們選擇常用的 Ateml 公司的 AT89C51。 ( 3)首先我們要在項目中創(chuàng)建新的程序文件或加入舊程序文件。 ( 4)點擊保存新建的程序,也可以用菜單 File- Save 或快捷鍵 Ctrl+S 進(jìn)行保存。鼠標(biāo) 在屏幕左邊的Source Group1 文件夾圖標(biāo)上右擊彈出菜單,在這里可以做在項目中增加減少文件等操作。Add File to Group 39。彈出文件窗口,選擇剛剛保存的文件,按 ADD 按鈕,關(guān)閉文件窗,程序文件已加到項目中了。 ( 5) C 程序文件已被我們加到了項目中了,下面就剩下編譯運行了。圖中 1 為運行,當(dāng)程序處于停止?fàn)顟B(tài)時才有效, 2 為停止,程序處于運行狀態(tài)時才有效。按 4 我們可以打開 5中的串行調(diào)試窗口,這個窗口我們可以看到從 51 芯片的串行 口輸入輸出的字符,這里的第一個項目也正是在這里看運行結(jié)果。 要停止程序運行回到文件編輯模式中,就要先按停止按鈕再按開啟 \關(guān)閉調(diào)試模式按鈕。它保存物理程序存儲區(qū)中的目標(biāo)代碼映象。打開目錄,找到 的文件就可以打開先前的項目了。Target139。打開項目選項窗口,轉(zhuǎn)到 Output 選項 。 圖 編譯信息窗口 如上圖所示,沒有錯誤,沒有警告才算編譯成功。主要是檢測與顯示,時間調(diào)整與顯示,數(shù)據(jù)存儲。見圖 圖 初始化時鐘 初 始 化 LCD 屏 顯示開機畫面 顯示時間 顯示主菜單 初始化 CPU 開始 讀鍵 32 開始使能芯片輸入通道控制字產(chǎn)生時鐘信號讀取 2 字節(jié)數(shù)據(jù)字節(jié)數(shù)據(jù)校驗送入指定寄存器結(jié)束 ⑴ 模數(shù)轉(zhuǎn)換模塊的主要功能就是將經(jīng)放大器放大的模擬電壓信號轉(zhuǎn)化為MCU 能夠處理的數(shù)字信號,并傳送給 MCU。 ⑵ 按鍵查詢式的流程圖見下圖 : 33 開始初始化保護(hù)寄存器操作 向 DS 寫入字節(jié)數(shù)據(jù)向 DS 讀取字節(jié)數(shù)據(jù)結(jié)束 圖 ⑴ DS1302 模塊主要是用于設(shè)置時間和與 MCU 通信經(jīng) LCD 顯示時間。采用直接訪問方式。這樣才能使單片機低功耗計數(shù)系統(tǒng)的設(shè)計更加完善,本次系統(tǒng)仿真采用的是軟件仿真,使用的是 proteus 軟件。本次系統(tǒng)的硬件設(shè)計其中的原理圖編輯和 PCB布線就是在這個軟件環(huán)境中 完成的,至于軟件設(shè)計,則是采用 proteus軟件中的 ISIS和Keil uVision進(jìn)行聯(lián)合調(diào)試。 二,系統(tǒng)接下來顯示, 4個基本操作功能 。 36 第 6 章 結(jié)束語 目前,公共場所民用建筑室內(nèi) 需要 檢測甲醛氣體 ,同樣 建筑材料中甲醛含量也需要 檢測。 具有 民 用價值的便攜式甲醛 檢測儀 的研制受到了人們的高度重視。針對目前的現(xiàn)狀,該系統(tǒng)設(shè)計遵守體積小, 質(zhì)量輕,性價比高的原則。根據(jù)設(shè)計前對該系統(tǒng)所要實現(xiàn)功能的要求,綜合考慮慮我們采用 AT89C52 單片機為控制核心。 軟件是基于匯編與 C語言相結(jié)合編寫的,結(jié)合了兩種編寫語言的優(yōu)點,具有很好的可控性、模塊化和移植性。本系統(tǒng)的主要模塊為甲醛檢測、 A/D轉(zhuǎn)換、液晶顯示和時鐘設(shè)置。由于所學(xué)知識的限制,本系統(tǒng)實現(xiàn)的功能不是很健全 ,但在設(shè)計該系統(tǒng)的過程中,讓我學(xué)會了系統(tǒng)設(shè)計的方法,和養(yǎng)成了系統(tǒng)思考的思維方式。最后把所有模塊進(jìn)行優(yōu)化整合,便得到了一個完整的系統(tǒng)。 同時由于本設(shè)計是采用在 proteus 上進(jìn)行仿真,在 keil 軟件上進(jìn)行編程,最后二者聯(lián)調(diào),實現(xiàn)設(shè)計任務(wù),但在仿真是無法實現(xiàn)甲醛傳感器,因此本設(shè)計采用滑動變阻器模擬傳感器檢測甲醛時輸出的模擬信號,經(jīng) AD0832 轉(zhuǎn)換輸入單片 37 機。 劉 老師 淵博的專業(yè)知識,嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度,精益求精的工作作風(fēng),誨人不倦的高尚師德,嚴(yán)以律己、寬以待人的崇高風(fēng)范,樸實無華、平易近人的人格魅力對我影響深遠(yuǎn)。本論文從選題到完成,每一步都是在 劉 老師 的指導(dǎo)下完成的,傾注了 劉 老師大量的心血。 在 四 年的學(xué)習(xí)期間,曾得到 很多班級同學(xué) 的關(guān)心和幫助,在此表示深深的感謝。 我的畢業(yè)課題是便攜式甲醛顯示器的設(shè)計,是一個實際的小工程。我們的指導(dǎo)老師: 劉喜峰 老師并沒有指責(zé),而是給予我們鼓勵和很多寶貴的建議,并且悉心引導(dǎo),給予我們一個比較清晰的設(shè)計思路。我們遇到了很多的難題,比如硬件器件的選擇,功能的實現(xiàn)等。 最后我還要再次深深地感謝 劉喜峰 老師、各位小組成員,正是基于 劉 老師的悉心指點和大家的全心的幫助,我才能比較順利地完成畢業(yè)設(shè)計。 [4] 趙新民 .《智能儀器原理及設(shè)計》 哈爾濱工業(yè)大學(xué)出版社, 1995。 [6] 嚴(yán)蔚敏 吳偉民。 TR0=1。 TMOD=0x11。 TL1=0xb0。 TL1=(6553650000)%256。 } void main_menu_initial() { main1_menu[0].menu_count=4。 main1_menu[0].subs=NULL。 main1_menu[0].parent_menus=NULL。 measure_menu[0].display=qr。 measure_menu[0].children_menus=NULL。 measure_menu[1].menu_count=2。 measure_menu[1].subs=NULL。 measure_menu[1].parent_menus=main1_menu。 switch(keyval) { case 0: break。 } shuaxin=1。 break。 shuaxin=0。 } void led_menu_show() { uchar n。 if (max_item=4) { for(n=0。n++) { draw_bmp(n*2,20,96,0,menu_led[n].display)。 } else { switch(temp_choosen) { case 0: draw_bmp(0,20,96,0,measurearray)。 default: break。nmax_item。 43 } select_item(user_choosen+1)。 } void start_measure_function(void) {main_Menu()。 Init_Clock()。 Disp_Img(FirstPage)。 ClockMsg()。 delay(2500)。 main_Menu()。 main_menu_initial()。 store_menu_initial()。 munication_menu_initial()。 led_menu_pro()。 44 float xdata lv。 uchar xdata dsw[20]。 uchar code table[]={ 0x00,0x00,0x00,0x30,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*.,0*/ }。 uchar j。 uchar ndat=0。 if(channel==1)channel=3。 _nop_()。 ADCS=0。 _nop_()。 _nop_()。 ADCLK=0。 _nop_()。 ADDI=channelamp。 _nop_()。 ADCLK=0。 _nop_()。 ADDI=(channel1)amp。 _nop_()。 ADCLK=0。 _nop_()。 45 dat=0。i8。 ADCLK=1。 _nop_()。 _nop_()。 dat=1。 } for(i=0。i++) { j=0。 ADCLK=1。 _nop_()。 _nop_()。 j=j7。 if(i7)ndat=1。 ADCLK=0。 dat=
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1