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

正文內(nèi)容

基于stm32的wifi無(wú)線網(wǎng)絡(luò)應(yīng)用設(shè)計(jì)畢業(yè)設(shè)計(jì)說(shuō)明書(參考版)

2025-06-27 16:13本頁(yè)面
  

【正文】 最后,謝謝所有關(guān)心,理解,支持和幫 助。 正 是 他 們 在平 時(shí) 的 悉 心 教 導(dǎo) , 為 我 打 下 了 完 成 畢 業(yè) 設(shè) 計(jì) 所 學(xué) 要 的 專 業(yè) 理 論 基 礎(chǔ) 。 他 的 言 傳 身 教 , 將 會(huì) 使 我 受 益 終 生 。 論 文 的 完 成 , 處 處 都 有 他 的 辛 勤 的 汗 水 , 沒(méi) 有 老 師 的 指 導(dǎo) , 本 論 文 不 可能 順 利 完 成 的 。 參 考 文 獻(xiàn) 32參 考 文 獻(xiàn) [1] 沙占友等. 單片機(jī)外圍電路設(shè)計(jì). 北京:電子工業(yè)出版社,2022[2] 美 Berger,《嵌入式系統(tǒng)設(shè)計(jì)》電子工業(yè)出版社,[3] 《嵌入式系統(tǒng)設(shè)計(jì)教程》,馬洪連等,電子工業(yè)出版社,[4] 嵌入式系統(tǒng)基礎(chǔ)教程 [M].北京: 北京航空航天大學(xué)出版社,[5] 楊剛主編,《32 位嵌入式系統(tǒng)與 SoC 設(shè)計(jì)導(dǎo)論(第 2 版)》,電子工業(yè)出版社,[6] 李寧.《基于 MDK 的 STM32 處理器開發(fā)應(yīng)用》北京航空航天大學(xué)出版社. 2022 年[7] Duckmyung, Yuseong, Daejeon. Modified multilevel inverter employing half and fullbridge cells with cascade transformer and its extension to photovoltaic power generation. 2022:305719[8] KONSTANTIN TURITSYN ;PETR SULC ;SCOTT BACKHAUS ;MICHAEL CHERTKOV. Options for Control of Reactive Power by Distributed Photovoltaic , 99(6)[9] H. El Fadil ;F. Giri. Climatic sensorless maximum power point tracking in PV generation engineering practice :2022, 19 致 謝 33致 謝在 此 論 文 完 成 之 際 , 我 首 先 要 向 自 己 的 導(dǎo) 師 XX 老 師 表 示 最 衷 心 的 感 謝和 最 誠(chéng) 摯 的 敬 意 。,首先給出了該系統(tǒng)軟件設(shè)計(jì)的分層框圖,詳細(xì)介紹了LCD驅(qū)動(dòng)程序、串口初始化程序、WiFi參數(shù)配置程序的編寫,重點(diǎn)分析了網(wǎng)絡(luò)數(shù)據(jù)傳輸協(xié)議報(bào)文的設(shè)計(jì),簡(jiǎn)述了UC/GUI在STM32嵌入式平臺(tái)的移植,并在此基礎(chǔ)上進(jìn)行了WiFi無(wú)線熱點(diǎn)接入圖形界面的開發(fā)。全文分為三大板塊:。在所有任務(wù)創(chuàng)建完畢后,系統(tǒng)進(jìn)入了正常的多個(gè)任務(wù)同時(shí)運(yùn)行的狀態(tài)。_Task_1 與_GUI_Task 的工作流程與 _Task_0 類似,只不過(guò)_Task_1 移動(dòng)的是窗口,_GUI_Task 用來(lái)維護(hù)顯示背景。_Task_0 的工作流程圖如圖 52 所示:首先:調(diào)用函數(shù) FRAMEWIN_Create( )和 WM_CreateWindowAsChild( )分別創(chuàng)建了框架父窗口和子窗口,然后調(diào)用函數(shù) WM_SelectWindow(hChildWin)和 GUI_SetFont( )選擇了子窗口為其并設(shè)置了顯示字體。在起始任務(wù)中,我們創(chuàng)建了 3 個(gè)用戶任務(wù),分別是:1. _Task_0,優(yōu)先級(jí)為 5,用來(lái)維護(hù)_Task_0 窗口;2. _Task_1,優(yōu)先級(jí)為 4,用來(lái)維護(hù)_Task_1 窗口;3. _GUI_Task,優(yōu)先級(jí)為 3,用來(lái)維護(hù)背景區(qū)域。其次,為了消除多窗口顯示時(shí)的閃爍現(xiàn)象,為所有窗口起用了存儲(chǔ)設(shè)備支第五章 軟件設(shè)計(jì)29持,即通過(guò)調(diào)用函數(shù) WM_SetCreateFlags(WM_CF_MEMDEV)來(lái)實(shí)現(xiàn);接下來(lái)又為背景窗口設(shè)置了回調(diào)函數(shù):WM_SetCallback(WM_HBKWIN, _cbBackgroundWin)。 WiFi熱點(diǎn)接入管理界面開發(fā)本文程序基于 STM32F103VCT6 微控制器芯片開發(fā),使用 uC/OSII 嵌入式實(shí)時(shí)操作系統(tǒng)進(jìn)行任務(wù)管理、調(diào)度和同步使用 uC/GUI 的 API 繪圖函數(shù)開進(jìn)行圖形界面開發(fā),實(shí)現(xiàn) WiFi 熱點(diǎn)接入管理界面應(yīng)用程序的開發(fā)。 LCD 底層 API 的編寫在將 uC/GUI 用于具體的液晶顯示器時(shí)需要提供 TFTLCD 的底層驅(qū)動(dòng)函數(shù)。GPIO_SetBits(GPIOC, GPIO_Pin_1 )。GPIO_ResetBits(GPIOC, GPIO_Pin_1)。由之前的 LCD 轉(zhuǎn)接板原理圖可知 ILI9325 RST 復(fù)位引腳連接的是 STM32 的 PC1 引腳,且 RST 引腳是低電平有效,所以為了產(chǎn)生有效的復(fù)位信號(hào),需要將 PC1 引腳電平拉高——拉低——再拉高,具體實(shí)現(xiàn)的程序代碼如下:GPIO_SetBits(GPIOC, GPIO_Pin_1 )。本文所用程序中 ILI9325 液晶控制器的初始化函數(shù)原型如下:void LCD_9325_Init(void)。} ILI9235 的初始化ILI9325 的初始化需要配置眾多的寄存器,用于配置電源模塊、工作模式、伽馬校正等等,具體每個(gè)參數(shù)的含義可以查閱 ILI9325 數(shù)據(jù)手冊(cè),其中最重要的用于配置工作模式的寄存器之前已經(jīng)介紹過(guò)。 OSSemPend(DispSem, 0, amp。 }第五章 軟件設(shè)計(jì)27void GUI_X_Unlock(void) { OSSemPost(DispSem)。U32 GUI_X_GetTaskId(void) { return ((U32)(OSTCBCurOSTCBPrio))。正如在介紹 uC/OSⅡ任務(wù)同步與通信機(jī)制時(shí)所述,對(duì)于顯示器、打印機(jī)等獨(dú)占性資源,需要采用信號(hào)者臨界的內(nèi)部數(shù)據(jù)結(jié)構(gòu)進(jìn)行保護(hù)。GUI_Font6x8 //設(shè)置默認(rèn)字體define GUI_ALLOC_SIZE 5000 //為 WM 和存儲(chǔ)設(shè)備分配的動(dòng)態(tài) //內(nèi)存空間/*可選包配置*/define GUI_WINSUPPORT 1 //啟用窗口管理器define GUI_SUPPORT_MEMDEV 1 //啟用存儲(chǔ)設(shè)備支持define GUI_SUPPORT_AA 1 //啟用抗鋸齒endif當(dāng)量機(jī)制對(duì)其進(jìn)行保護(hù),以使任務(wù)可以有序的使用這些資源。 //LCD 控制器 //初始化函數(shù)endif 的配置(高層配置) 頭文件中的內(nèi)容主要用來(lái)配置 GUI 庫(kù)的一些可選功能,例如是否使用窗口管理器(WM)、控件庫(kù)(widget library)功能以及是否啟用多任務(wù)環(huán)境支持等選項(xiàng)。具體步驟如下:編寫 、 、 的配置(低層配置) 中包含與具體型號(hào)的液晶顯示器硬件相關(guān)的宏定義,主要有兩大類: 宏:定義顯示分辨率以及其他可選特性(例如鏡像等); 控制器宏:定義如何訪問(wèn)你所使用的 LCD 控制器。 uC/GUI 程序包。 uC/GUI的移植 uC/GUI 的目錄結(jié)構(gòu)uC/GUI 推薦的目錄結(jié)構(gòu)如圖 47 所示,在工程文件夾中保持 uC/GUI 程序文件(包括頭文件)的獨(dú)立性和完整性可以使 uC/GUI 的升級(jí)更加簡(jiǎn)單(僅需簡(jiǎn)單的替換 GUI 子文件夾)。主要包括數(shù)據(jù)報(bào)文、應(yīng)答報(bào)文和數(shù)據(jù)結(jié)束報(bào)文。具體過(guò)程為主叫方將呼叫請(qǐng)求發(fā)送至服務(wù)器,服務(wù)器收到請(qǐng)求后解析數(shù)據(jù)包產(chǎn)生呼叫通告報(bào)文發(fā)給被叫方,等待被叫方的呼叫應(yīng)答報(bào)文,然后將結(jié)果傳遞給主叫方,同時(shí),如果被叫方長(zhǎng)時(shí)間沒(méi)有反應(yīng),則服務(wù)器會(huì)產(chǎn)生呼叫失敗報(bào)文給主叫方。目的標(biāo)號(hào):8bit,目的端用戶名的用戶名。源標(biāo)長(zhǎng):8bit,主叫端用戶名的用戶名。CRC:8bit,CRC 的全拼是 Cyclic Redundancy Check,又稱之為循環(huán)冗余校驗(yàn)。Random:16bit,Random 是客戶端產(chǎn)生的一個(gè) 16 位的隨機(jī)數(shù),服務(wù)器返回的應(yīng)答報(bào)文應(yīng)是 Random+1。能力:8bit,能力主要用于該用戶使用資源的權(quán)利,服務(wù)器可以根據(jù)用戶的能力判斷用戶是否對(duì)資源有實(shí)用的權(quán)限。類型:8bit,表示報(bào)文的類型,在這個(gè)字節(jié)的不同值代表不同的數(shù)據(jù)報(bào)文第五章 軟件設(shè)計(jì)22類型,其中 0x10:注冊(cè)報(bào)文請(qǐng)求,0x12:注冊(cè)報(bào)文失敗,0x20:呼叫請(qǐng)求,0x22 被叫通報(bào),0x21:呼叫成功,0x23 呼叫失敗。對(duì)于與信令相關(guān)的數(shù)據(jù)包主要包括注冊(cè)請(qǐng)求報(bào)文,注冊(cè)應(yīng)答報(bào)文,呼叫請(qǐng)求報(bào)文,呼叫通報(bào)報(bào)文,被叫端呼叫應(yīng)答報(bào)文,服務(wù)器呼叫應(yīng)答報(bào)文,報(bào)文格式如第五章 軟件設(shè)計(jì)21圖 56 至圖 511。本項(xiàng)目中,WiFi 模塊所在的系統(tǒng)架構(gòu)為 C/S 架構(gòu),這就要求數(shù)據(jù)報(bào)文除了需要模塊能夠正確的處理,同時(shí)要求服務(wù)器能夠解析。為了能夠保證數(shù)據(jù)能夠在網(wǎng)絡(luò)上順利傳輸以及平臺(tái)的兼容性,需將發(fā)送至串口的報(bào)文制定統(tǒng)一的數(shù)據(jù)結(jié)。由于在讀取 GRAM 顯示數(shù)據(jù)時(shí)地址計(jì)數(shù)器 AC 的值不會(huì)自動(dòng)更新,因此在希望讀取另一地址處的顯示數(shù)據(jù)時(shí)需要重新設(shè)置 AC 的初值并重復(fù)以上過(guò)程。讀取數(shù)據(jù)的流程如圖 43 所示:第五章 軟件設(shè)計(jì)19圖 54 ILI9325 讀內(nèi)部顯示數(shù)據(jù)流程圖首先,根據(jù)在初始化時(shí)設(shè)置的 GRAM 地址刷新方式(由 I/D、AM 位的組合值確定)以及窗口地址區(qū)域的起止坐標(biāo)(由 HSA、HEA 和 VSA、VEA 聯(lián)合確定)設(shè)置填入地址計(jì)數(shù)器 AC 的初始地址值 M。因此,在讀取 9325內(nèi)部 GRAM 的數(shù)據(jù)時(shí),第一次讀出的是無(wú)效數(shù)據(jù),從第二次開始讀取有效數(shù)據(jù)。來(lái)自 MPU 的將被寫入內(nèi)部 GRAM 的數(shù)據(jù)首先被寫入 WDR,然后再被自動(dòng)寫入 GRAM。 讀取/寫入數(shù)據(jù)的過(guò)程ILI9325 內(nèi)部具有一個(gè) 16 位的索引寄存器(IR),一個(gè) 18 位的寫數(shù)據(jù)寄存器(WDR)和一個(gè) 18 位讀數(shù)據(jù)寄存器(RDR)。當(dāng)通過(guò)這個(gè)寄存器更新顯示數(shù)據(jù)時(shí),地址計(jì)數(shù)器(AC)自動(dòng)增加或減少。當(dāng)從內(nèi)部 GRAM 讀取數(shù)據(jù)時(shí),AC 不自動(dòng)更新。除了 IR 寄存器,與讀寫訪問(wèn)有關(guān)的寄存器如圖 52 所示:第五章 軟件設(shè)計(jì)18圖 53 與讀寫有關(guān)的寄存器表 51 說(shuō)明了每個(gè)寄存器的具體用途:表 51 與讀寫有關(guān)的寄存器說(shuō)明R20h,R21h(GRAM 水平 /垂直地址設(shè)置寄存器)此寄存器用來(lái)設(shè)置地址計(jì)數(shù)器(AC)的初始值。具體程序流程圖如下:開始串口初始化完成UART_Configuration()設(shè)置串口波特率、中斷類型,初始化串口 void WiFiSetNetPara() SendDataToWiFi()發(fā)送命令給 WiFi 模塊,設(shè)置 WiFi 圖 52 串口初始化流程圖 TFTLCD 底層驅(qū)動(dòng)設(shè)計(jì) 與讀取/寫入相關(guān)的寄存器由 ILI9325 數(shù)據(jù)手冊(cè)可知,索引寄存器(Index Register)存儲(chǔ)指令或顯示數(shù)據(jù)即將被寫入的寄存器的地址,寄存器選擇信號(hào)(RS)、讀/寫信號(hào)和數(shù)據(jù)總線用來(lái)讀/寫 ILI9325 內(nèi)部的指令或數(shù)據(jù)。 //具體的參數(shù)內(nèi)容}在配置到 WiFi 的相關(guān)參數(shù)后,調(diào)用 WiFi_Para_set_auto()使 WiFi 處在自動(dòng)模式并聯(lián)網(wǎng),這就可以通過(guò) AP 連上網(wǎng)了。 //參數(shù)名稱 unsigned char cLength。第五章 軟件設(shè)計(jì)16第 五 章 軟 件 設(shè) 計(jì) 系 統(tǒng) 軟 件 設(shè) 計(jì) 框 圖 應(yīng)用程序:WiFi 熱點(diǎn)接入管理界面WiFi 模塊TCP/IP協(xié)議UC/OSⅡ?qū)?
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1