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

正文內(nèi)容

基于單片機(jī)的空氣質(zhì)量遠(yuǎn)程檢測系統(tǒng)項(xiàng)目設(shè)計(jì)方案(編輯修改稿)

2025-05-30 22:34 本頁面
 

【文章內(nèi)容簡介】 6x2個(gè)字符芯片工作電壓:—工作電流:(5V)模塊兒最佳工作電壓:字符尺寸:(WH)mm引腳功能說明:1602LCD采用標(biāo)準(zhǔn)的14腳(無背光)或16腳(有背光)接口,各引腳說明如表26所示:表26 1602引腳說明編號符號引腳說明編號符號引腳說明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背光源負(fù)極第1腳:VSS為地電源。第2腳:VDD接+5V正電源。第3腳:VL為液晶顯示器對比度調(diào)整端,接正電源時(shí)對比度最弱,接地時(shí)對比度最高,對比度過高時(shí)會產(chǎn)生“鬼影”,使用時(shí)可以通過一個(gè)10K的電位器調(diào)整對比度。第4腳:PS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。第5腳:R/W為讀寫信號線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時(shí)可以讀忙信號,當(dāng)RS為高電平R/W為低電平時(shí)可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),夜景模塊執(zhí)行命令。第7~14腳:D0~D7為八位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負(fù)極。 LCD1602的指令說明及時(shí)序1602液晶模塊內(nèi)部的控制器共有11條控制指令,如表27所示:表27 控制命令表序號指令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計(jì)數(shù)器地址10寫數(shù)到CGRAM或DDRAM10要寫的數(shù)據(jù)內(nèi)容11從CGRAM或DDRAM讀數(shù)11讀出的數(shù)據(jù)內(nèi)容1602液晶模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實(shí)現(xiàn)的。(說明:1為高電平、0為低電平)指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。指令3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動方向,高電平右移,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。指令4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。指令5:光標(biāo)或顯示移位 S/C:高電平時(shí)移動顯示的文字,低電平時(shí)移動光標(biāo)。指令6:功能設(shè)置命令 DL:高電平時(shí)為4位總線,低電平時(shí)為8位總線 N:低電平時(shí)為單行顯示,高電平時(shí)雙行顯示 F: 低電平時(shí)顯示5x7的點(diǎn)陣字符,高電平時(shí)顯示5x10的點(diǎn)陣字符。指令7:字符發(fā)生器RAM地址設(shè)置。指令8:DDRAM地址設(shè)置。指令9:讀忙信號和光標(biāo)地址 BF:為忙標(biāo)志位,高電平表示忙,此時(shí)模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。指令10:寫數(shù)據(jù)。指令11:讀數(shù)據(jù)。 1602LCD的RAM地址映射及標(biāo)準(zhǔn)字庫表液晶顯示模塊是一個(gè)慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時(shí)要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,圖221是1602的內(nèi)部顯示地址。圖221 1602LCD內(nèi)部顯示地址第二行第一個(gè)字符的地址是40H,寫入顯示地址時(shí)要求最高位D7恒定為高電平1所以實(shí)際寫入的數(shù)據(jù)應(yīng)該是:01000000B(40H)+10000000B(80H)=11000000B(C0H)。在對液晶模塊的初始化中要先設(shè)置其顯示模式,在液晶模塊顯示字符時(shí)光標(biāo)是自動右移的,無需人工干預(yù)。每次輸入指令前都要判斷液晶模塊是否處于忙的狀態(tài)。1602液晶模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已經(jīng)存儲了160個(gè)不同的點(diǎn)陣字符圖形,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號、和日文假名等,每一個(gè)字符都有一個(gè)固定的代碼。延時(shí)15mS寫指令38H(不檢測忙信號)延時(shí)5mS寫指令38H(不檢測忙信號)延時(shí)5mS寫指令38H(不檢測忙信號)以后每次寫指令、讀/寫數(shù)據(jù)操作均需要檢測忙信號寫指令38H:顯示模式設(shè)置寫指令08H:顯示關(guān)閉寫指令01H:顯示清屏寫指令06H:顯示光標(biāo)移動設(shè)置寫指令0CH:顯示開及光標(biāo)設(shè)置LCD1602的具體接線路圖如圖222所示。圖222 LCD1602接線電路圖考慮到整個(gè)測量系統(tǒng)中不同環(huán)境對氣體濃度及溫濕度范圍要求不同,故設(shè)置了按鍵功能,用于實(shí)現(xiàn)測量范圍的調(diào)整,參考單片機(jī)引腳使用情況,共設(shè)置五個(gè)獨(dú)立按鍵如圖223,實(shí)現(xiàn)功能為設(shè)定鍵可進(jìn)行設(shè)定的進(jìn)入與退出,同時(shí)可實(shí)現(xiàn)三種范圍的切換,另設(shè)左右移位鍵、上下調(diào)值鍵各兩個(gè),與此同時(shí)考慮到用戶可能需要在一定時(shí)間內(nèi)連續(xù)測量一種量,故設(shè)計(jì)了上調(diào)鍵的第二功能:當(dāng)只有上調(diào)鍵按下時(shí)完成顯示的自動與手動的切換以實(shí)現(xiàn)良好的人機(jī)對話。圖223 按鍵電路本設(shè)計(jì)采用集成穩(wěn)壓器7805,C2C30分別為輸入端和輸出端濾波電容,D1為續(xù)流二極管。當(dāng)輸出電流較大時(shí),7805應(yīng)配上散熱板。電源電路如圖224所示:圖224 電源電路第三章 系統(tǒng)軟件程序設(shè)計(jì)在系統(tǒng)硬件電路確定以后,其主要功能的實(shí)現(xiàn)將依賴于軟件來實(shí)現(xiàn)。對同一硬件電路,配以不同的軟件,它所實(shí)現(xiàn)的功能也就不同,其設(shè)計(jì)軟件基本要求:??煽啃允擒浖O(shè)計(jì)的重要指標(biāo),具有較強(qiáng)的抗干擾能力。、易維護(hù)性。編制的軟件要求易閱讀,容易發(fā)現(xiàn)和糾正錯(cuò)誤,容易修改和補(bǔ)充。系統(tǒng)能夠及時(shí)響應(yīng)外部事件的發(fā)生并能及時(shí)做出處理結(jié)果。保證系統(tǒng)進(jìn)行計(jì)算數(shù)據(jù)的精度。目前存在有4種編程語言支持單片機(jī),即匯編語言、PL/M51語言、C語言和BASI語言。其中匯編語言和C語言應(yīng)用的較多,匯編語言的機(jī)器代碼生成效率高,控制性好,但就是移植性不高。結(jié)合本系統(tǒng)的特點(diǎn),這里選用了功能強(qiáng)、效率高的C語言。C語言主要有以下特點(diǎn):用C語言編制的程序效率高,占用存儲空間小,運(yùn)行速度快。C語言能寫出最優(yōu)化程序,且能反映出計(jì)算機(jī)的實(shí)際運(yùn)行情況。C語言能直接與存儲器、接口電路打交道,也能申請中斷。具有良好的模塊化、容易閱讀、維護(hù)等優(yōu)點(diǎn),且編寫的模塊程序易于移植?;贑語言和匯編語言的優(yōu)缺點(diǎn),本系統(tǒng)采用C語言編寫方法。 ,系統(tǒng)軟件主要由傳感器采集模塊、AD轉(zhuǎn)換模塊、人機(jī)接口模塊、聲光報(bào)警模塊、核心控制器模塊等模塊構(gòu)成。 各功能模塊功能描述功能模塊功能描述傳感器采集模塊對空氣質(zhì)量進(jìn)行實(shí)時(shí)監(jiān)測AD轉(zhuǎn)換模塊核心控制器模塊人機(jī)接口模塊無線通訊模塊根據(jù)軟件設(shè)計(jì)的基本要求,采取了如下的措施:。軟件設(shè)計(jì)中包含有:主程序模塊、顯示模塊、A/D數(shù)據(jù)轉(zhuǎn)換子模塊、聲光報(bào)警模塊、數(shù)據(jù)轉(zhuǎn)換模塊、中斷處理模塊等。,C支持浮點(diǎn)運(yùn)算,可以保證數(shù)據(jù)計(jì)算的精度。,提高了系統(tǒng)的實(shí)時(shí)處理事件能力。、硬件抗干擾。軟件抗干擾措施提高了系統(tǒng)的可靠性。以下就對一些主要模塊進(jìn)行詳細(xì)的闡述。由主程序流程圖可以看出,軟件要實(shí)現(xiàn)的主要功能是實(shí)現(xiàn)對傳感器信號的數(shù)據(jù)采集,然后進(jìn)行數(shù)據(jù)的計(jì)算、分析、送液晶進(jìn)行顯示。程序開始時(shí),先關(guān)閉中斷,對系統(tǒng)進(jìn)行初始化,包括單片機(jī)的各寄存器、RAM、定時(shí)器裝載初值、中斷設(shè)置及各模塊初始化等。完成初始化后,液晶顯示各個(gè)參數(shù)為零,CPU等待傳感器傳入信號及AD轉(zhuǎn)換結(jié)束,從而完成當(dāng)前監(jiān)測參數(shù)的正確顯示。開始端口初始化串口初始化讀AD發(fā)送ADLCD顯示判斷報(bào)警 系統(tǒng)程序框圖主程序主要控制單片機(jī)的整個(gè)運(yùn)轉(zhuǎn)的過程,決定了各個(gè)子程序的運(yùn)行先后順序。本課題的程序時(shí)機(jī)包括,端口的初始化,串口中斷的初始化及控制,LCD1602顯示器的初始化和程序控制,報(bào)警電路的控制,AD轉(zhuǎn)化的程序控制,延時(shí)子程序幾個(gè)方面。 延時(shí)函數(shù)是一個(gè)程序的重要部分,也是大部分的程序設(shè)計(jì)中的一個(gè)重要步驟,大多數(shù)芯片是有一定的反應(yīng)時(shí)間,所以必須加一些延時(shí)來給芯片一定的反應(yīng)時(shí)間,保證系統(tǒng)的正常運(yùn)行。延時(shí)函數(shù)大部分是用for循環(huán)的,是單片機(jī)進(jìn)行執(zhí)行空語句_nop_(),來消耗掉一定數(shù)量的時(shí)鐘周期。本程序的延時(shí)函數(shù)是采用兩個(gè)for嵌套的新形式,采用4個(gè)空語句_nop_()。來實(shí)現(xiàn)延時(shí)。其延時(shí)的時(shí)間的單位大約是1ms;。機(jī)械周期為單片機(jī)所采用的晶振周期12倍,因此機(jī)械周期為大概為1μs,延時(shí)函數(shù)的第二級循環(huán)250次,每次執(zhí)行4個(gè)空語句,所以為1ms,所以其輸入的控制次數(shù)就是其延時(shí)的ms單位的數(shù)值。開始獲得延時(shí)時(shí)間msi=0否ims是j=0否j250是i++j++_nop_()。_nop_()。_nop_()。_nop()_。 結(jié)束 圖 延時(shí)函數(shù)程序框圖 串口程序設(shè)計(jì)串口通信的主要是波特率的設(shè)定,一般情況下,所選用的串口的波特率為9600pbs,信號在9600pbs下的傳輸距離大約為50m,可以滿足儀器到子站之間的距離。為了設(shè)定9600pbs波特率。,工作方式為方式1,由定時(shí)器T1的溢出率控制。 s ()定時(shí)器的溢出率等于定時(shí)時(shí)間的倒數(shù)。所以計(jì)算得定時(shí)器的初值為TH=oxfd, TL=oxfd。寫數(shù)據(jù)寫數(shù)據(jù)延時(shí)初始化LCD行+1寫數(shù)據(jù)取顯示首地址寫顯示行列地址寫LCD指令開始返回1616N N Y Y 。SBUF=AD開始用定時(shí)器TMOD確定定時(shí)器1等待中斷設(shè)定SMOD值為0開中斷確定工作方式1TI=1RI=1COM=SBUFTI,RI清零N Y Y N 串口中斷在開啟之前要對其進(jìn)行初始化,在初始化過程中要對其所采用的定時(shí)器進(jìn)行確定,還有一點(diǎn)重要的是要對其的波特率進(jìn)行設(shè)定,以保證其通信的正常進(jìn)行,串口中斷在開啟后,串口中斷就開始等待中斷,如果讀中斷 RI 被置1,則開始讀中斷,將緩存寄存器 SBUF 的數(shù)據(jù)傳給設(shè)定的變量 。如果寫中斷 TI置1,則將數(shù)據(jù)ad 傳給緩存寄存器SBUF。在串口通信結(jié)束后,TI和RI都置零,串口中斷繼續(xù)等待下一次中斷。 AD轉(zhuǎn)換模塊由于定電位電解式氣體傳感器工作響應(yīng)時(shí)間為1020秒左右,故進(jìn)行模數(shù)轉(zhuǎn)換前設(shè)置AD等待25秒,以保證傳感器響應(yīng)完成并使所測數(shù)據(jù)準(zhǔn)確。AD完成轉(zhuǎn)換需要一定的時(shí)間,AD應(yīng)用中我們可以有兩種方法來:,AD完成模數(shù)轉(zhuǎn)換后會向中斷輸出端輸出一個(gè)中斷請求信號,告訴CPU轉(zhuǎn)換已經(jīng)完成,CPU可以讀取數(shù)據(jù)。,設(shè)定一定的時(shí)間讓CPU處于等待狀態(tài),此時(shí)間足夠AD完成轉(zhuǎn)換,過了等待時(shí)間CPU再去讀取數(shù)據(jù)。綜合考慮各方面的因素,本研究采用第一種方法:中斷查詢法。所用的芯片為AD0809,根據(jù)所需的要求,首先AD先等待25秒以使得傳感器完全響應(yīng)完畢,然后AD開始工作,當(dāng)轉(zhuǎn)換完成后向CPU發(fā)出一個(gè)中斷信號告訴CPU可以讀取數(shù)據(jù),CPU響應(yīng)中斷,從PB口讀取轉(zhuǎn)換完畢后的8位二進(jìn)制數(shù)據(jù),再進(jìn)一步進(jìn)行處理。對氣體傳感器分段選擇多個(gè)測試點(diǎn)盡享精確測試,并根據(jù)測試數(shù)據(jù)繪制出傳感器的隔斷擬合曲線,為了提高數(shù)據(jù)精度,采用線性插值法。系統(tǒng)上電后,對單片機(jī)、ADC0809進(jìn)行初始化,開單片機(jī)總中斷,外部中斷0,AD轉(zhuǎn)換結(jié)束后,進(jìn)入中斷子程序讀取轉(zhuǎn)換結(jié)果存放在全局變量中,然后進(jìn)行數(shù)據(jù)分析、計(jì)算與處理,以便以后單片機(jī)進(jìn)行數(shù)據(jù)LCD的顯示處理。 AD流程圖本設(shè)計(jì)所用的顯示器件為1602液晶面板,該液晶能顯示32個(gè)字符,滿足顯示要求。1602液晶與CPU是并口通信,、單片機(jī)P2口傳輸數(shù)據(jù)到1602進(jìn)行顯示。系統(tǒng)上電LCD初始化,液晶顯示首先需要要按照時(shí)序給定顯示地址,然后傳送數(shù)據(jù)。上電后液晶顯示“HELLO IAQ MONITOR”,以便檢測電路是否正確;當(dāng)檢測到按鍵按下后,分別按照按鍵功能顯示三種氣體濃度以及溫濕度顯示。 聲音報(bào)警模塊采用的是蜂鳴器,光報(bào)警是通過2個(gè)發(fā)光二極管來顯示,當(dāng)毒氣含量沒超標(biāo)時(shí)則二極管不閃爍,但是當(dāng)濃度超標(biāo)時(shí)二極管開始閃爍并顯示紅色并啟動蜂鳴器,報(bào)警子程序執(zhí)行之前,設(shè)定的報(bào)警閾值存放在兩個(gè)變量中,傳感器輸入AD轉(zhuǎn)換值后,調(diào)用比較程序,小于閾值則執(zhí)行顯示程序,若大于閾值進(jìn)行聲光報(bào)警。 結(jié)束語轉(zhuǎn)眼間,四年的大學(xué)學(xué)習(xí)生涯就要過去
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1