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

正文內(nèi)容

工業(yè)控制器實(shí)訓(xùn)報(bào)告碩士論文開題報(bào)告-資料下載頁

2024-10-08 11:50本頁面
  

【正文】 AppTaskAnalyze任務(wù)和 AppTaskMBTx任務(wù)。 AppTaskCollect 任務(wù)主要負(fù)責(zé)采集特定 I/O口的狀態(tài),程序流程圖如 圖 411所示: 進(jìn) 入AppTaskCollect任 務(wù)采 集 特 定 IO口 狀 態(tài)對(duì) 狀 態(tài) 進(jìn) 行 存 儲(chǔ) 圖 411 AppTaskCollect 任務(wù)流程圖 AppTaskAnalyze 任務(wù)主要負(fù)責(zé)對(duì)從串口接收的數(shù)據(jù)幀進(jìn)行解析 ,其程序流程圖如圖412 所示: 進(jìn) 入 A p p T a s k A n a l y z e 任 務(wù)C R C 是 否 正 確A d d r = 2 ?功 能 碼 = 2 錯(cuò) 誤 標(biāo) 志 位 復(fù) 位錯(cuò) 誤 標(biāo) 志 位 置 位YYNYNN 圖 412 AppTaskAnalyze 任務(wù)程 序流程圖 AppTaskMBTx 任務(wù)主要是根據(jù) AppTaskAnalyze 任務(wù)返回的狀態(tài)來確定,是否發(fā)送正確地響應(yīng)幀。其程序流程圖 與 圖 49類似。 通信協(xié)議 本系統(tǒng)設(shè)計(jì)中控制器通訊 采 用 Modbus 主從 協(xié)議 , 標(biāo)準(zhǔn) Modbus 端口是使用一個(gè)RS485 的串行接口,定義了連接器,接線電纜,信號(hào)等級(jí),傳輸波特率,和奇偶校驗(yàn),控制器可直接或通過調(diào)制解調(diào)器 (以后簡稱 Modems)接入總線 (網(wǎng)絡(luò) )。 在本系統(tǒng)中, CPU 模塊(主機(jī)) 能起動(dòng)數(shù)據(jù)傳輸, 對(duì)各從機(jī)尋址,發(fā)出廣播信息,而其它設(shè)備如 ADC 模塊、 LCD 顯示模塊 或 I/O 模塊 (從機(jī) )從機(jī)返回信息作為對(duì)查詢的響應(yīng)。從機(jī)對(duì)于主機(jī)的廣播查詢,無響應(yīng)返回 Modbus 協(xié)議報(bào)據(jù)設(shè)備地址,請(qǐng)求功能代碼, 24 發(fā)送數(shù)據(jù),錯(cuò)誤校驗(yàn)碼,建立了主機(jī)查詢格式,從機(jī)的響應(yīng)信息也用 Modbus 協(xié)議組織,它包括確認(rèn)動(dòng)作的代碼,返回?cái)?shù)據(jù)和錯(cuò)誤校驗(yàn)碼。若在接收信息時(shí)出現(xiàn)一個(gè)錯(cuò)誤或從機(jī)不能執(zhí)行要求的動(dòng)作時(shí),從機(jī)會(huì)組織一個(gè)錯(cuò)誤信息,并向主機(jī)發(fā)送作為響應(yīng)。 主從查詢響應(yīng)周期如 圖 413所示: 功 能 代 碼8 位數(shù) 據(jù) 字 節(jié)錯(cuò) 誤 校 驗(yàn)設(shè) 備 地 址功 能 代 碼8 位數(shù) 據(jù) 字 節(jié)錯(cuò) 誤 校 驗(yàn)設(shè) 備 地 址主 機(jī) 查 詢 信 息從 機(jī) 響 應(yīng) 信 息 圖 413 主從查詢響應(yīng)周期圖 從流程圖中可以看出, CPU 模塊在 上電之后就會(huì)發(fā)送輪詢命令,先詢問 Addr1 設(shè)備( AD 模塊), Addr1 設(shè)備響應(yīng)命令,將采集到的數(shù)據(jù)發(fā)送給 CPU 模塊, CPU 輪詢 Addr1設(shè)備的命令幀格式如 圖 414 所示: 地 址 碼= 0 x 0 1功 能 碼= 0 x 0 3查 詢 地址 H o查 詢 地址 L i數(shù) 據(jù) 個(gè)數(shù) H o數(shù) 據(jù) 個(gè)數(shù) L i數(shù) 據(jù) C R C H i C R C L o 圖 414 CPU 輪詢 Addr1 設(shè)備的命令幀格式 當(dāng) CPU 模塊接收到 Addr2 設(shè)備的響應(yīng)之后就會(huì)輪詢 Addr2 設(shè)備( I/O 模塊),幀格式如圖 415所示: 地 址 碼= 0 x 0 2功 能 碼= 0 x 0 2起 始 地址終 止 地址輸 入 點(diǎn)數(shù) 量 H i輸 入 點(diǎn)數(shù) 量 L o數(shù) 據(jù) C R C H i C R C L o 圖 415 CPU 輪詢 Addr2 設(shè)備的命令幀格式 當(dāng) CPU 模塊接 收到 Addr3 設(shè)備的響應(yīng)之后就會(huì)輪詢 Addr3 設(shè)備( LCD 模塊),幀格式如 圖 416 所示: 地 址 碼= 0 x 0 3功 能 碼= 0 x 1 0起 始 地址終 止 地址字 節(jié) 數(shù) 數(shù) 據(jù) C R C H i C R C L o 圖 416 CPU 輪詢 Addr3 設(shè)備的命令幀格式 AD模塊響應(yīng)輪詢命令的幀格式如 圖 417 所 示: 地 址 碼= 0 x 0 1功 能 碼= 0 x 0 3字 節(jié) 數(shù) 數(shù) 據(jù) C R C H i C R C L o 25 圖 417 AD 模塊響應(yīng)輪詢命令的幀格式 I/O 模塊的響應(yīng)幀格式如 圖 418所示: 地 址 碼= 0 x 0 2功 能 碼= 0 x 0 2字 節(jié) 數(shù) 數(shù) 據(jù) C R C H i C R C L o 圖 418 I/O 模塊的響應(yīng)幀格式 LCD 模塊的響應(yīng)幀格式 如 圖 419所示: 地 址 碼= 0 x 0 2功 能 碼= 0 x 0 2字 節(jié) 數(shù) 數(shù) 據(jù) C R C H i C R C L o 圖 419 LCD 模塊的響應(yīng)幀格式 LCD 模塊 LCD 模塊主要在 LCD(液晶顯示屏)上顯示從現(xiàn)場檢測到的數(shù)據(jù)。當(dāng) AD 模塊或者是I/O 模塊從現(xiàn)場采集到所要檢測的數(shù)據(jù)信息后,傳輸給 CPU 主機(jī)進(jìn)行一些數(shù)據(jù)處理,之后主機(jī)將發(fā)送指令把處理好的數(shù)據(jù)信息量發(fā)送到 LCD 進(jìn)行顯示。 LCD 模塊的初始化程序流程圖如 圖 420 所示: 開 始系 統(tǒng) 時(shí) 鐘初 始 化I O 口 初 始 化中 斷 控 制 器初 始 化定 時(shí) 器初 始 化串 口初 始 化進(jìn) 入操 作 系 統(tǒng)S P I初 始 化 圖 320 LCD 模塊的初始化程序流程圖 根據(jù) LCD 模 塊的功能將其劃分為三個(gè)任務(wù): AppTaskMB 任務(wù)、 AppTaskDisplay任務(wù)和 AppTaskTouch 任務(wù)。 AppTaskMB 任務(wù)負(fù)責(zé) 幀的解析和傳送。其程序流程圖如 圖 421所示: 26 進(jìn) 入 A p p T a s k A n a l y z e 任 務(wù)C R C 是 否 正 確A d d r = 3 ?功 能 碼 = 1 6 發(fā) 送 正 確 的 響 應(yīng) 幀發(fā) 送 錯(cuò) 誤 的 響 應(yīng) 幀YYNYNN 圖 422 AppTaskMB 任務(wù)程序流程圖 AppTaskDisplay任務(wù)主要負(fù)責(zé)驅(qū)動(dòng) LCD 顯示屏,并將相關(guān)數(shù)據(jù)顯示出來。 LCD 顯示任務(wù)使用了 uC/GUI。 其 程序流程圖如 圖 423 所示: 進(jìn) 入AppTaskDispla任 務(wù)使 用 uCGUI繪 制顯 示 窗 口根 據(jù) 鍵 值 顯 示 相 應(yīng)的 數(shù) 據(jù) 圖 423 AppTaskDisplay 任務(wù)程序流程圖 最后一個(gè)是 AppTaskTouch 任務(wù),因?yàn)楸鞠到y(tǒng)采用觸摸屏技術(shù),所以該任務(wù)主要負(fù)責(zé)采集觸摸屏信號(hào)。其程序流程圖如 圖 424所示: 進(jìn) 入AppTaskTouch任 務(wù)采 集 觸 摸 屏 信 號(hào)判 斷 消 息 類 型 并 做相 應(yīng) 處 理延 時(shí) 10ms 圖 424 AppTaskTouch 任務(wù)程序流程圖 27 LCD顯示 屏驅(qū)動(dòng) 設(shè)計(jì) 在該實(shí)訓(xùn)的 LCD 模塊的軟件設(shè)計(jì)中, 在 MDK 環(huán)境下 我們首先是在裸機(jī)的狀態(tài)下去完成數(shù)據(jù)的顯示,首先是添加了 LCD_drive file,在此文件中創(chuàng)建支持 ILI9320 的驅(qū)動(dòng)IC 控制程序 ,使用 16 位并行傳輸。在 文件中對(duì) LCD 進(jìn)行各種必要配置, (GPI/O 配置和 LCD 所要進(jìn)行的背景顏色、漢字顯示、圖片顯示等的寫函數(shù) )。在 中主要是定義驅(qū)動(dòng) IC 是 ILI9320 并且聲明與硬件相關(guān)的子函數(shù),以及作了 Lcd 初始化: void Lcd_Initialize(void)。 及其低級(jí)控制函數(shù): void Lcd_Initialize(void)。 void LCD_WR_REG(u16 Index,u16 CongfigTemp); void Lcd_WR_Start(void); Lcd 高級(jí)控制函數(shù): void Lcd_SetCursor(u8 x,u16 y); void Lcd_Clear(u16 Color); 的聲明定 義。在 中 調(diào)用各種數(shù)字、漢字和圖片的顯示函數(shù),以完成顯示功能。程序流程圖如 圖 425 所示 : 開 始配 置 并 調(diào) 用 R C C 、G P I O 、 N V I C 、 U S A R T調(diào) 用 L c d 配 置 和初 始 化 函 數(shù)L C D 清 屏調(diào) 用 畫 線 、漢 字 、 圖 片 顯 示 函 數(shù)延 遲 5 sG P I O 讀 入 數(shù) 據(jù)YN 圖 425 裸機(jī)狀態(tài)下 LCD 顯示程序流程圖 28 其中 設(shè)置 一個(gè)像素和獲取一個(gè)像素的顏色 兩個(gè)函數(shù)很重要,因?yàn)樵谙率龅囊浦瞮C/GUI 操作系統(tǒng)時(shí), UC/GUI 和 編寫好的 TFT 驅(qū)動(dòng)關(guān)聯(lián)起來 時(shí) 需要這兩個(gè)函數(shù)為前提 。void LCD_SetPixel(unsigned short x, unsigned short y, unsigned short color) { ??} 。 unsigned short LCD_GetPixel(unsigned short x, unsigned short y) {?? } 。 然后進(jìn)行測試。在顯示成功后,則將 μC/OS II和 uC/GUI 嵌入式操作系統(tǒng)移植于 TFT底層 驅(qū)動(dòng) 程序。 uC/GUI 的 移植步驟 : 第一步:首先, 上述的 TFT 底層 驅(qū)動(dòng) 寫好,既在裸機(jī)下,可以正常顯示。 第二步:加入 uC/GUI 程序 包。 第三步:配置 、 、 第四步:最關(guān)鍵的一步 , 那就是讓 GUI 能夠找到 LCD 驅(qū)動(dòng)。接下來需要修改 TFT與 UCGUI 關(guān)聯(lián)的函數(shù) , int LCD_L0_Init(void) { TFT_Init()。 return 0。 } 這個(gè)函數(shù),是 GC_GUI 初始化 TFT 需要調(diào)用的,里面的函數(shù)就是你 TFT 底層驅(qū)動(dòng)的初始化函數(shù)。 void LCD_L0_SetPixelIndex(int x, int y, int PixelIndex) { LCD_SetPixel(x,y,PixelIndex)。 } unsigned int LCD_L0_GetPixelIndex(int x, int y) { return LCD_GetPixel(x,y)。 } 上面兩個(gè)函數(shù)是其他函數(shù)的最基本元素,其他 函數(shù)比如畫線、點(diǎn)、圓都需要調(diào)用改函數(shù)。里面的 LCD_SetPixel(x,y,PixelIndex)、 LCD_GetPixel(x,y); 就是 TFT 底層驅(qū)動(dòng)設(shè)置像素和獲取像素的兩個(gè)函數(shù)。緊接著把該 文件下其他函數(shù)修改一下(凡是遇到設(shè)置像素和獲取像素的地方用以上兩個(gè)函數(shù)代替。) 接著,修改另一個(gè) C 文件( )這里修改很簡單,僅僅也是將設(shè)置像素和獲取像素的函數(shù) 29 替換掉自己定義的即可 。 最后 連接 GC_GUI 的各種文件和庫函數(shù)的路徑。在移植檢測成功后,編寫 文件 的程序。 LCD 顯示模塊程序流程圖如 圖 426所示 : 開 始配 置 并 調(diào) 用 R C C 、 G P I O 、N V I C 、 T I M E R 、 U S A R T創(chuàng) 建 中 斷 向 量 表調(diào) 用 O S I n i t ( )函 數(shù)設(shè) 置 信 號(hào) 量創(chuàng) 建 發(fā) 送 、 觸 摸 、 顯 示 任 務(wù)調(diào) 用 O S S t a r t ( )函 數(shù) 圖 426 操作系統(tǒng)下的 LCD 程序流程圖 在 文件中首先設(shè)置觸摸屏的所有控件,獲得所有控件的窗口句柄并且將其初始化,尋找控件的 ID,然后以此語句 NCode=pMsg;來通知代碼。接下來在 main函數(shù)中完成個(gè)任務(wù)的創(chuàng)建和實(shí)現(xiàn),如上圖 411,此實(shí)訓(xùn)設(shè)計(jì)在 LCD 顯示模塊中首先創(chuàng)建了一個(gè)主任務(wù),在此任務(wù)中嵌套了 3個(gè)主要功能任務(wù),主要是 AppTaskMB 發(fā)送任務(wù)、AppTaskDisplay 顯示任務(wù)和 AppTaskTouch 觸摸任務(wù)。 AppTaskDisplay 任務(wù)主要負(fù)責(zé)驅(qū)動(dòng) LCD 顯示屏,在顯示任務(wù)中調(diào)用 LCD_Display();以此來完成各種背景顏色、漢字顏色、漢字內(nèi)容等的功能任務(wù);在 AppTaskMB 發(fā)送任務(wù)中和 ADC 模塊的從機(jī)接受主機(jī)指令類似 ,如下圖 412 調(diào)用了 Frame_Analyze()函數(shù)和TransmitFrame()函數(shù)來完成幀解析和請(qǐng)求幀發(fā)送等任務(wù),進(jìn)而將 AD 的值和 I/O 的值完成在 LCD 屏的整個(gè)顯示。 30 第 五 章 .總結(jié) 在本次實(shí)訓(xùn)中 ,我們小組針對(duì)自己的 學(xué)習(xí)特點(diǎn)分配了任務(wù),通過幾個(gè)小的環(huán)節(jié)來完成實(shí)訓(xùn)的設(shè)計(jì)。大家經(jīng)常一起討論,把自己在實(shí)訓(xùn)過程中遇到的問題說出來,大家一起想辦法去解決,并時(shí)常交流自己的心得體會(huì)。通過這種溝通方式我們都得到了很多 知識(shí),這種知識(shí)不同于看書本的知識(shí) 。通過實(shí)訓(xùn),我們得到的更多的是 一種實(shí)踐的能力。在實(shí)踐中去檢驗(yàn)平時(shí)學(xué)到的知識(shí), 驗(yàn)證 它的正確與否。在平時(shí)的學(xué)習(xí)中, 總是在修改別人的程序,看書本上的例程,感覺很容易就看懂了, 自己 很少 動(dòng)手去驗(yàn)證它。這樣做的后果就是印象不
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1