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

正文內(nèi)容

智能無線天然氣煙霧監(jiān)控終端畢業(yè)論文-資料下載頁

2025-07-07 19:52本頁面

【導讀】生存環(huán)境的舒適與安全是人類永恒追求的物質目標。隨著計算機技術、通信技術、控。境舒適化、安全化的生活空間。通過環(huán)境監(jiān)測系統(tǒng),用戶可以實時獲得居住環(huán)境的信息,并將采集到的環(huán)境信息作為其他家庭設備運行時。的參數(shù),實現(xiàn)對環(huán)境的智能化控制。本終端作為智能家居的一部分,實現(xiàn)了實時監(jiān)測天然。最后,本設計對以后研究工作的重點進行了思考,提出了自己的見解。

  

【正文】 M32 系列里,容量最大的芯片 2體積適中 QFP100 腳封裝,從大型設備到手持設備都可以選用。 3FSMC 接口 由于板上設計有 TFT 模塊, 因此選用具有 FSMC 接口的芯片是必然的。 4SDIO 接口 作為一個嵌入式的平臺,大容量 SD 存儲是必須考慮的, 可以在 SD 上 建立文件系統(tǒng)及大容量文件存取。 5性價比高, 該芯片的批量采購價格在 30 元左右,渠道穩(wěn)定,適合工程選用。 很多用 戶先前都是從 51 平臺轉過來的, 對單片機的經(jīng)驗還停留在 51 帶給我們的簡單易用上, 51 單片機的資源簡單,且口線定義唯一。 相對高端的 51型單片機(如 SILICON C8051F 系列, AVR 等)可以做到一定的口線復用(就是一個口線可以具有多種復用功能), 51在處理對計算速度及控制速度相對不高的應用,還是具有很好的性價比及應用性。近幾年,隨著應用技術的發(fā)展, 產(chǎn)品對嵌入式技術要求越來越高, 51 單片機已經(jīng)不能滿足復雜 嵌入式應用要求, 在ARM 技術發(fā)展過程中, coretexM3內(nèi)核應運而生,它的各項能力使得它成為 微控領域之王, STM32 是這種內(nèi)核的產(chǎn)物, 是目前 coretexM3 內(nèi)核平臺里最具性價比的平臺,可以預見,未來幾年里, STM32 會很快占據(jù)微控平臺市場。 STM32開發(fā)板 奮斗版 STM32 開發(fā)板 MINI 及 V3 的例程工程編寫均基于 RealView MDK 開發(fā)環(huán)境,工程里所包含的庫大部分采用了 STM32 標準庫 , MDK開發(fā)環(huán)境支持 JLINK、 ULINK、 STLINK 的在線仿真及下載。 MDK 環(huán)境的學習可以智能天然氣監(jiān)控終端的網(wǎng)絡通信系統(tǒng) 22 參考奮斗板光盤里的 MDK 視頻教程。在 MDK 下下載程 序的詳細說明可參考奮斗板光盤里的奮斗板文檔目錄下的下載步驟文檔。 在先了解了 STM32 的知識及奮斗 STM32 開發(fā)板的硬件后,我們來引導嘗試一下這個實際的過程。 作為初學,可以選取簡單的例程來做這個體驗,我們選取例程相應目錄中的《 STM32 奮斗板 LED 閃爍例程》。 第一步:先將 JLINK V8 的驅動裝到電腦里。 運行該程序, 可將 JLINK V8 的驅動安裝到 PC 機上。 第二步:安裝 MDK 編譯環(huán)境, MDK 安裝包在光盤根目錄的資料目錄下,文件名為 ,解開壓縮包,運行安裝文件, 安裝好 MDK 開發(fā)環(huán)境后,在 PC上運行 MDK, 打開例程目錄下的《 STM32LED 閃爍例程》工程文件 。 打開工程后,點按鈕 , 開始編譯工程,經(jīng)過一段時間后,編譯完成,生成了目標代碼。可用于下載到板子里,在其余的例程編譯過程中,如果出現(xiàn)編譯錯誤,請參考光盤根目錄的解決方法。 編譯完成后,將 JLINK V8 的 JTAG 電纜插入板子上的 JTAG 接口,將 JLINK V8 用 USB 線連到 PC上,給開發(fā)板加電,加電方式可以是 USB 接口輸入,也可以通過 DC5V 接口輸入。 智能天然氣監(jiān)控終端的網(wǎng)絡通信系統(tǒng) 23 對工程進行如下的仿真及下載環(huán)境設置。 智能天然氣監(jiān)控終端的網(wǎng)絡通信系統(tǒng) 24 智能天然氣監(jiān)控終端的網(wǎng)絡通信系統(tǒng) 25 下載環(huán)境設置完成后,點擊 將例程下載進奮斗板中,下載完成后開發(fā)板會自動復位運行例程,可以看到板子上的藍色發(fā)光二極管閃爍起來。 如果出現(xiàn)如下的下載失敗提示,需要 檢查連線或者工程下載環(huán)境設置。 5 程序設計 程序總體設計思路 智能天然氣監(jiān)控終端的網(wǎng)絡通信系統(tǒng) 26 起始,監(jiān)控終端通過連接 WIFI 建立網(wǎng)絡通信連接,使得 其他網(wǎng)絡設備(比如智能手機,平板電腦) 可以通過網(wǎng)絡向監(jiān)控終端發(fā)送 請求 數(shù)據(jù) 命令 , 監(jiān)控終端備讀取請求數(shù)據(jù) 包 后,返回煙霧傳感器和天然氣傳感器 實時數(shù)據(jù),平時則不作動作。當監(jiān)控終端檢測到測量數(shù)據(jù)超過預警值時,則主動向手機端發(fā)送預警信息,提示用戶注意。 程序 初始化 運行程序時 需要將監(jiān)控器各個硬件以及數(shù)值初始化。例如各個串口的初始化, SD卡初始化,網(wǎng)絡初始化, ADC 初始化,觸摸屏初始化等。 然后開始檢測信息,即手機端是否有向監(jiān)控終端 發(fā) 送請求數(shù)據(jù),即 IP 數(shù)據(jù)包,以向手機發(fā)送即時檢測的信息。 名 稱: static void App_TaskStart(void* p_arg) 功 能:開始任務建立 static void App_TaskStart(void* p_arg) { (void) p_arg。 //初始化 ucosII 時鐘節(jié)拍 OS_CPU_SysTickInit()。 //使能 ucos 的統(tǒng)計任務 if (OS_TASK_STAT_EN 0) OSStatInit()。 //統(tǒng)計任務初始化函數(shù) endif App_TaskCreate()。 //建立其他的任務 while (1) { uip_len = tapdev_read()。 //從網(wǎng)絡設備讀取一個 IP 包 ,返回數(shù)據(jù)長度 if(uip_len0) OSSemPost(ETH_SEM)。 //傳遞網(wǎng)絡接收完成信號量 eth_poll()。 OSTimeDlyHMSM(0, 0, 0, 10)。 } } 上述程序的子程序,具體實行操作初始化各個項目數(shù)值,并且讀取即時數(shù)據(jù)。 名 稱: static void App_TaskCreate(void) 功 能:建立其余任務的函數(shù) static void App_TaskCreate(void) { 智能天然氣監(jiān)控終端的網(wǎng)絡通信系統(tǒng) 27 ADC_SEM=OSSemCreate(0)。 ETH_SEM=OSSemCreate(1)。 //建立網(wǎng)絡數(shù)據(jù)包接收完成的信號量 //建立鍵盤中斷的消息郵箱 /* 建立用戶界面任務 */ OSTaskCreateExt(AppTaskUserIF, //指向任務代碼的指針 (void *)0, //任務開始執(zhí)行時,傳遞給任務的參數(shù)的指針 (OS_STK *)amp。AppTaskUserIFStk[APP_TASK_USER_IF_STK_SIZE1], //分配給任務的堆棧的棧頂指針 從頂向下遞減 APP_TASK_USER_IF_PRIO, //分配給任務的優(yōu)先級 APP_TASK_USER_IF_PRIO, //預備給以后版本的特殊標識符,在現(xiàn)行版本同任務優(yōu)先級 (OS_STK *)amp。AppTaskUserIFStk[0], //指向任務堆棧棧底的指針,用 于堆棧的檢驗 APP_TASK_USER_IF_STK_SIZE, //指定堆棧的容量,用于堆棧的檢驗 (void *)0, //指向用戶附加的數(shù)據(jù)域的指針,用來擴展任務的任務控制塊 OS_TASK_OPT_STK_CHK|OS_TASK_OPT_STK_CLR)。 //選項,指定是否允許堆棧檢驗,是否將堆棧清 0,任務是否要 //進行浮點運算等等。 /* 建立觸摸驅動任務 */ OSTaskCreateExt(AppTaskKbd, (void *)0, (OS_STK *)amp。AppTaskKbdStk[APP_TASK_KBD_STK_SIZE1], APP_TASK_KBD_PRIO, APP_TASK_KBD_PRIO, (OS_STK *)amp。AppTaskKbdStk[0], APP_TASK_KBD_STK_SIZE, (void *)0, OS_TASK_OPT_STK_CHK|OS_TASK_OPT_STK_CLR)。 /* 建立網(wǎng)絡處理任務 */ OSTaskCreateExt(Task_ETH, (void *)0, (OS_STK *)amp。Task_ETHStk[Task_ETH_STK_SIZE1], Task_ETH_PRIO, Task_ETH_PRIO, 智能天然氣監(jiān)控終端的網(wǎng)絡通信系統(tǒng) 28 (OS_STK *)amp。Task_ETHStk[0], Task_ETH_STK_SIZE, (void *)0, OS_TASK_OPT_STK_CHK|OS_TASK_OPT_STK_CLR)。 //ADC 采樣任務 OSTaskCreateExt(Task_ADC, (void *)0, (OS_STK *)amp。Task_AdcStk[Task_Adc_STK_SIZE1], Task_Adc_PRIO, Task_Adc_PRIO, (OS_STK *)amp。Task_AdcStk[0], Task_Adc_STK_SIZE, (void *)0, OS_TASK_OPT_STK_CHK|OS_TASK_OPT_STK_CLR)。 } 網(wǎng)絡處理任務 接收到 IP 數(shù)據(jù)包 后,收集 ADC 采集到的數(shù)據(jù),并通過 WIFI 向手機客戶端發(fā)送即時數(shù)據(jù)信息。 名 稱: static void Task_ETH(void *p_arg) 功 能:網(wǎng)絡 數(shù)據(jù)包 處理任務 static void Task_ETH(void *p_arg){ INT8U err。 (void)p_arg。 while(1){ OSSemPend(ETH_SEM,0,amp。err)。 //等待接收完成信號量 UipPro()。 // 處理網(wǎng)絡數(shù)據(jù)包 } } /**************************************************************************** * 名 稱: static void Task_ADC(void *p_arg) * 功 能: ADC 處理任務 static void Task_ADC(void *p_arg){ INT8U err。 INT8U sms_end。 unsigned char send_data[23]。 sms_end=0x1a。 (void)p_arg。 智能天然氣監(jiān)控終端的網(wǎng)絡通信系統(tǒng) 29 ADC_alarm1[0]= 0x32。 ADC_alarm1[1]= 0x30。 ADC_alarm1[2]=0x30。 ADC_alarm1[3]= 0x00。 ADC_alarm1[4]= 0x00。 ADC_alarm2[0]= 0x32。 ADC_alarm2[1]= 0x30。 ADC_alarm2[2]= 0x30。 ADC_alarm2[3]= 0x00。 ADC_alarm2[4]= 0x00。 ADC_a1=200。 ADC_a2=200。 // memset(phone,0,11)。 // memcpy(phone,15921023305,11)。 while(1){ OSSemPend(ADC_SEM,0,amp。err)。 //等待 ADC信號量 itoa(ADC_ConvertedValue1[0], ADC_STR1,10)。 //ADC1 通道 10 的數(shù)值轉為字符串 itoa(ADC_ConvertedValue1[1], ADC_STR2,10)。 //ADC1 通道 11 的數(shù)值轉為字符串 USART_OUT(USART1, \r\nADC1 通道 10: %s,ADC_STR1)。 //串口 1 輸出通道 10 的數(shù)值 USART_OUT(USART1, \r\nADC1 通道 11: %s,ADC_STR2)。 //串口 1 輸出通道 11 的數(shù)值 USART_OUT(USART1, \r\n)。 if ((ADC_ConvertedValue1[0]ADC_a1) || (ADC_ConvertedValue1[1]ADC_a2)) { memset(send_data,23,0)。 GPIO_SetBits(GPIOD, GPIO_Pin_3)。 MIC_ON。 USART_OUT(USART2, AT+CMGF=1\r)。 OSTimeDlyHMSM(0, 0, 1, 10)。 sprintf(send_data,AT+CMGS=\%s\\r,phone)。 // USART_OUT(USART2, AT+CMGS=\)。 // USART_OUT(USART2, phone)。 // USART_OUT(USART2, \\r)。 USART_OUT(USART2, send_data)。 OSTimeDlyHMSM(0, 0, 2, 10)。 USART_OUT(USART2, alarm!)。 USART_OUT(USART2, amp。sms_end)。 OSTimeDlyHMSM(0, 0, 4, 10)。 USART_OUT(USART2, ATD)。 智能天然氣監(jiān)控終端的網(wǎng)絡通信系統(tǒng) 30 USART_OUT(USART2, phone)。 USART_OUT(USART2, 。\r)。 } if ((ADC_ConvertedValue1[0]ADC_a1) amp。amp。 (ADC_ConvertedValue1[1]ADC_a2)) { GPIO_ResetBits(GPIOD, GPIO_Pin_3)。 //關閉指示燈,關閉蜂鳴器 MIC_OFF。 }
點擊復制文檔內(nèi)容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1