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

正文內(nèi)容

基于zigbee的空氣質(zhì)量檢測儀設(shè)計(jì)畢業(yè)設(shè)計(jì)論文(文件)

2025-08-01 19:20 上一頁面

下一頁面
 

【正文】 MQ135氣體傳感器MQ135傳感器內(nèi)嵌的氣敏材料是二氧化錫。圖46 MQ135氣體傳感器模塊引腳連接圖標(biāo) 系統(tǒng)硬件電路原理圖基于Zigbee的室內(nèi)空氣質(zhì)量檢測儀,硬件電路分為兩大部分:一個(gè)是Zigbee協(xié)調(diào)器,另一個(gè)是Zigbee傳感器節(jié)點(diǎn)電路。DTH11溫濕度傳感器的DATA引腳與CC2530的P0_7引腳相連,MQ135氣體傳感器的DO引腳與CC2530的P0_6引腳相連。其中,主要講解的是Zigbee程序。 Zigbee程序設(shè)計(jì) IAR Embedded Workbench軟件簡介IAR Embedded Workbench 是1983年成立于1983年IAR Systems 公司為微處理器開發(fā)的一個(gè)集成開發(fā)環(huán)境,支持ARM,AVR,MSP430等芯片內(nèi)核平臺(tái)。AVR IAR 匯編器同其他的IAR系統(tǒng)軟件集成。IAR Embedded Workbench初始頁面如圖51所示。802.IAR第三步,進(jìn)入休眠,事件處理完畢進(jìn)入休眠。ZStack程序入口是main()函數(shù),main函數(shù)總共做了兩件事情。(2)OSAL任務(wù)輪循環(huán),包括事件優(yōu)先級(jí)的判定,然后在調(diào)用事件處理程序?qū)κ录M(jìn)行處理,這樣周而復(fù)始的輪流循環(huán)工作,直到任務(wù)處理完畢進(jìn)入休眠狀態(tài)。 // 關(guān)閉所有中斷 HAL_BOARD_INIT( )。 // 初始化 I/O,LED、 Timer 等 HalDriverInit( )。 //初始化非易失變量 ZMacInit( )。 //初始化按鍵 zmain_dev_info( )。系統(tǒng)上電后,( )函數(shù)實(shí)現(xiàn)硬件的初始準(zhǔn)備,其中包括關(guān)閉所有中斷、時(shí)鐘初始準(zhǔn)備、按鍵初始化、堆棧初始準(zhǔn)備、檢查芯片電壓是否正常、芯片各硬件模塊初始準(zhǔn)備、非易失變量初始準(zhǔn)備等等。若有任務(wù)準(zhǔn)備好了就會(huì)使用任務(wù)處理函數(shù)去處理準(zhǔn)備好的事件,直到所有準(zhǔn)備好的任務(wù)都完成為止。系統(tǒng)初始準(zhǔn)備包括I/O口準(zhǔn)備、硬件準(zhǔn)備、驅(qū)動(dòng)準(zhǔn)備等操作。下面是操作系統(tǒng)初始準(zhǔn)備程序,:osal_init_system(void){ osal_mem_init()。 // 初始化電源管理系統(tǒng)osalInitTasks()。任務(wù)優(yōu)先級(jí)由任務(wù)的標(biāo)號(hào)決定的,taskID 的值越小ID所對(duì)應(yīng)的的任務(wù)優(yōu)先級(jí)就越高,優(yōu)先級(jí)越高任務(wù)就越先執(zhí)行。 //設(shè)置所分配的內(nèi)存空間單元值為 0 osal_memset( tasksEvents, 0, (sizeof( uint16 ) * tasksCnt))。 //Hal_Init(2)APS_Init( taskID++ )。當(dāng)完成上述初始化后,開始執(zhí)行osal_start_system(任何OSAL任務(wù)必須分為兩步:(1)進(jìn)行任務(wù)執(zhí)行前準(zhǔn)備;(2)是執(zhí)行處理任務(wù)事件。然后,就開始進(jìn)入輪循式事件處理,先比較事件優(yōu)先級(jí),按照優(yōu)先級(jí)調(diào)用事件處理函數(shù)進(jìn)行事件處理。除此之外,我們還可以自己定義15個(gè)事件。 } // 得到待處理的最高優(yōu)先級(jí)任務(wù)索引號(hào) idx } while (++idx tasksCnt)。 // 清除本次任務(wù)的事件 HAL_EXIT_CRITICAL_SECTION(intState)。 // 保存未處理的事件 HAL_EXIT_CRITICAL_SECTION(intState)。任務(wù)處理事件處理函數(shù)如下: SAPI 任務(wù)事件處理函數(shù)SAPI 任務(wù)事件處理函數(shù)是由SAPI_ProcessEvent( )控制,主要處理允許綁定時(shí)間事件、綁定時(shí)間事件、系統(tǒng)消息事件、進(jìn)入事件和用戶事件。圖 56 Hal 任務(wù)事件處理函數(shù) ZDApp 任務(wù)事件處理函數(shù)ZDApp 任務(wù)事件處理函數(shù)是由ZDApp_event_loop()控制,該函數(shù)主要負(fù)責(zé)ZDO狀態(tài)改變事件、網(wǎng)絡(luò)形成事件處理、系統(tǒng)消息事件、路由啟動(dòng)事件、網(wǎng)絡(luò)啟動(dòng)事件、網(wǎng)絡(luò)更新NV 事件和設(shè)備重啟事件的處理。編譯器,更是一個(gè)編程語言的開發(fā)環(huán)境。但它并不是專門用于VC的,它也同樣用于VB,VJ,VID等編程語言[[] 郭云,陳圣林. 基于USB總線的溫度采集——應(yīng)用程序設(shè)計(jì)[J]. 科技致富向?qū)?2013,21:125.]。這樣可以減少編程人員的任務(wù)量。大致說來,Platform SDK是以Microsoft C/C++編譯器為核心,配合MASM工作,輔助的工具和文檔資料集合。檢測人員就可以通過電腦對(duì)傳感器節(jié)點(diǎn)進(jìn)行實(shí)時(shí)的監(jiān)控。溫濕度顯示板塊左側(cè)有個(gè)像溫度計(jì)一樣的顯示窗口,此窗口可以根據(jù)接收到的數(shù)據(jù)模擬溫度變化。窗體右上側(cè)是溫度和濕度的變化趨勢(shì)圖。)。串口設(shè)置包括一個(gè)串口下拉選擇按鈕,一個(gè)串口打開按鈕鍵和一個(gè)串口狀態(tài)指示燈。刷新部分分為手動(dòng)刷新按鍵和自動(dòng)刷新按鍵。如圖510所示。每個(gè)Zigbee節(jié)點(diǎn)檢測室內(nèi)空氣質(zhì)量的三個(gè)技術(shù)指標(biāo),物理屬性溫度、濕度和化學(xué)屬性氨氣以及本化合物等污染物。最后,就是由上位機(jī)程序讀取并顯示所接受到的數(shù)據(jù)。Android系統(tǒng)由四層組成,一是應(yīng)用程序?qū)?,二是?yīng)用程序框架層,三是系統(tǒng)運(yùn)行庫層,四是Linux內(nèi)核層。JDK是Java語言的編程的數(shù)據(jù)包?,F(xiàn)在,已經(jīng)有比如C/C++、PHP、Android等組件。 // 初始化系統(tǒng)時(shí)鐘 zmain_vdd_check( )。 // 初始化芯片各硬件模塊 osal_nv_init( NULL )。 // 初始化 MAC 層 osal_init_system( )。 //顯示設(shè)備信息 osal_start_system( )。 // 初始化定時(shí)器 osal_pwrmgr_init()。}任務(wù)初始化程序:void osalInitTasks( void ){ uint8 taskID = 0。 //初始化系統(tǒng)的任務(wù) osal_mem_kick()。 // 初始化內(nèi)存分配系統(tǒng)osal_qHead = NULL。 //使能全部中斷 InitBoard( OB_READY )。 // 確定 IEEE 地址 zgInit( )。 // 初始化堆棧 InitBoard( OB_COLD )。使用Eclipse進(jìn)行安卓程序編寫需要添加adt組件,這樣Eclipse就可以和android sdk建立聯(lián)系[[] 殷西祥,趙思琪,秦曉安,[J].電腦知識(shí)與技術(shù),2014,15:35923594+3587.附錄1Zigbee協(xié)調(diào)器實(shí)物圖:Zigbee傳感器節(jié)點(diǎn)實(shí)物圖:附錄2主程序:int main( void ){ osal_int_disable( INTS_ALL )。Eclipse開發(fā)環(huán)境是來源于Java語言,它的源代碼對(duì)外開發(fā)。主要用在移動(dòng)終端設(shè)備,如:智能手機(jī)、平板和手表等安卓設(shè)備。 Android應(yīng)用程序設(shè)計(jì) 軟件介紹Android是一種基于Linux的自由并且開放源代碼的操作系統(tǒng)。通過Zigbee無線網(wǎng)絡(luò),再發(fā)給Zigbee協(xié)調(diào)器。點(diǎn)擊確定就會(huì)關(guān)閉窗體。 圖 59 上位機(jī)程序顯示窗口用鼠標(biāo)指向標(biāo)題欄,然后右擊就會(huì)彈出一個(gè)菜單,顯示關(guān)閉、移動(dòng)和關(guān)于。操作輸出部分有操作提示標(biāo)簽、操作提示窗口,可以對(duì)每步操作進(jìn)行提示。系統(tǒng)設(shè)置。當(dāng)你選中溫度趨勢(shì)的話,就會(huì)出現(xiàn)溫度趨勢(shì)圖,包括一個(gè)坐標(biāo)軸,X軸標(biāo)的是測量時(shí)間的坐標(biāo)(040)秒,Y軸標(biāo)的是溫度(0176。所對(duì)應(yīng)的文本框接收串口信息,并顯示溫濕度具體的數(shù)值。圖 58 PC電腦上位機(jī)程序下面介紹上位機(jī)的顯示窗口的組成部分,上位機(jī)程序主界面如圖59所示:標(biāo)題欄,標(biāo)有名稱“室內(nèi)空氣質(zhì)量檢測儀——T111齊利剛”,名稱左側(cè)有該程序的應(yīng)用圖標(biāo),右側(cè)有關(guān)閉窗口的按鈕。Zigbee的協(xié)調(diào)器是通過USB數(shù)據(jù)線連接電腦串口,因此需要電腦端安裝串口轉(zhuǎn)USB驅(qū)動(dòng)程序,然后,協(xié)調(diào)器將通過無線網(wǎng)絡(luò)接收到的信息傳送到電腦PC端。SDK是Visual C++和整個(gè)Visual Studio的精華和靈魂。它包含了大部分的windows API函數(shù),并且擁有一個(gè)應(yīng)用程序框架。圖 57 ZDApp 任務(wù)事件處理函數(shù) PC上位機(jī)程序設(shè)計(jì) VC++軟件簡介Visual C++ ,是微軟公司發(fā)布的一種C++編譯器。圖 55 SAPI 任務(wù)事件處理函數(shù) Hal 任務(wù)事件處理函數(shù)Hal任務(wù)事件處理函數(shù)是由函數(shù)Hal_ProcessEvent()控制實(shí)現(xiàn)的,該函數(shù)負(fù)責(zé)LED閃爍事件、按鍵事件和系統(tǒng)消息事件的處理。在ZStack的事件處理中有三種任務(wù)事件處理函數(shù),每種函數(shù)分別擔(dān)任不同類型的任務(wù)處理。 //調(diào)用處理函數(shù) HAL_ENTER_CRITICAL_SECTION(intState)。 //進(jìn)入臨界區(qū) events = tasksEvents[idx]。圖 54 執(zhí)行操作系統(tǒng)流程圖與流程框圖對(duì)應(yīng)的執(zhí)行代碼如下所示:void osal_start_system( void ){ for(。最后,由工作模式轉(zhuǎn)入低功耗的休眠模式。下面主要講的就是如何進(jìn)行任務(wù)事件的處理。Zstack所有的子系統(tǒng)都作為OSAL的一個(gè)任務(wù)來執(zhí)行,因此,在開發(fā)應(yīng)用層的時(shí)候,需要通過創(chuàng)建OSAL任務(wù)來運(yùn)行應(yīng)用程序。 //ZDApp_Init(4) SAPI_Init( taskID )。 //macTaskInit(0) nwk_init( taskID++ )。下面就是任務(wù)初始化的程序代碼:void osalInitTasks( void ){ uint8 taskID = 0。 // 設(shè)置有效的搜索堆的第一個(gè)空閑塊. return (SUCCESS)。 // 初始化消息隊(duì)列 osalTimerInit()。操作系統(tǒng)初始化包括系統(tǒng)內(nèi)存的分配、消息隊(duì)列準(zhǔn)備、定時(shí)器的歸置、電源管理、系統(tǒng)任務(wù)初始準(zhǔn)備等。osal_start_system( )一旦執(zhí)行,則不再返回Main( )函數(shù)。 執(zhí)行操作系統(tǒng)當(dāng)順利完成上述初始化時(shí),執(zhí)行osal_start_system( )函數(shù)開始運(yùn)行OSAL任務(wù)。 //執(zhí)行操作系統(tǒng)} 系統(tǒng)初始化 //初始化操作系統(tǒng) osal_int_enable( INTS_ALL )。 // 初始化 Flash 存儲(chǔ)器 zmain_ext_addr( )。 // 檢查芯片電壓是否正常 zmain_ram_init( )。下面就是系統(tǒng)主控程序的流程框圖,如圖53所示。如圖52所示。需要注意的是:如果有幾個(gè)事件同時(shí)發(fā)生,需先判斷優(yōu)先級(jí),然后逐次處理事件。ZStack是采用操作系統(tǒng)的思想來構(gòu)建,主要采用事件輪流查詢、循環(huán)處理事件方式:第一步,系統(tǒng)初始化,初始化任務(wù)完成后進(jìn)入休眠狀態(tài)。4/Zigbee的CC2530片上系統(tǒng)解決方案。ZStack協(xié)議棧架構(gòu)。嵌入式IAR Embedded Workbench開發(fā)環(huán)境非常好用,用戶可以利用他完全、高效地開發(fā)和管理嵌入式應(yīng)用工程。產(chǎn)品有很多:帶有C/C++編譯器和調(diào)試器的集成開發(fā)環(huán)境、實(shí)時(shí)操作系統(tǒng)和開發(fā)套件、硬件仿真器以及狀態(tài)機(jī)建模工具等[[] 陳媛媛,郭開林. 無線傳感器網(wǎng)絡(luò)在三峽庫區(qū)滑坡遠(yuǎn)程監(jiān)測中的應(yīng)用[J]. 世界科技研究與發(fā)展,2013,02:190192+200.]。同時(shí),通過相應(yīng)的指令、語句對(duì)所用的算法進(jìn)行簡要說明。終端節(jié)點(diǎn)電路原理圖如圖47所示。不同的點(diǎn)是,Zigbee協(xié)調(diào)器只是實(shí)現(xiàn)數(shù)據(jù)的接收和發(fā)送的功能,所以協(xié)調(diào)器除了最小系統(tǒng)之外,包括收發(fā)功能的天線電路,因?yàn)樗€通過USB數(shù)據(jù)線連接電腦串口,所以還會(huì)有USB轉(zhuǎn)串口的電路。MQ135氣體傳感器可以檢測氨氣、 硫化物、 苯系蒸汽等,對(duì)煙霧等有害物質(zhì)的監(jiān)測效果也相當(dāng)?shù)娘@著。DHT11溫濕度傳感器具有質(zhì)量好、響應(yīng)快、抗干擾力強(qiáng)、性價(jià)比高等特點(diǎn)。在ZigBee無線傳感網(wǎng)絡(luò)中,天線以及巴倫匹配電路非常重要,這不僅關(guān)系到射頻通路質(zhì)量優(yōu)良程度,同時(shí),對(duì)通信距離和系統(tǒng)功耗都有非常大的影響。注意:RF的收發(fā)操作是要以32MHz的晶體振蕩器為時(shí)鐘源才行[[] 茍全登,閆連山. 基于ZigBee的低功耗井下人員快速定位系統(tǒng)的研究與設(shè)計(jì)[J]. 煤炭技術(shù),2013,09:113114.]。圖 42 電源電路圖 時(shí)鐘電路CC2530芯片需要兩個(gè)晶振為其提供時(shí):一個(gè)是XOSC_QXOSC_Q2接32MHz晶振,一個(gè)是P2_一個(gè)是XOSC_QXOSC_Q2接32MHz晶振,一個(gè)是P2_通過本章描述,對(duì)實(shí)物有了系統(tǒng)性的認(rèn)識(shí)。整個(gè)監(jiān)測系統(tǒng)分為三大部分:資源層、中間軟件層及應(yīng)用層,并且分別介紹了系統(tǒng)的硬件組成部分和軟件組成部分。MQ135氣體傳感器價(jià)格便宜,可以檢測出氨氣、 硫化物、 苯系蒸汽,對(duì)煙霧和其它有害物質(zhì)的監(jiān)測也很靈敏。 圖 35 DHT11引腳圖DHT11參數(shù)如下:(1)可以檢測空氣的濕度和溫度;(2)濕度測量范圍:21%到91%RH;(3)溫度測量范圍:0度到50度;(4)工作電壓:;(5)電源指示燈(紅色)。傳感器有三部分組成:一個(gè)是通過電阻變化的感濕器件,另一個(gè)是檢測溫度器件,還有一個(gè)8位主控制芯片[[] 李巖舟,周清,班彩霞,陳科余,
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1