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

正文內容

畢業(yè)論文-基于can總線的溫度測控系統(tǒng)的設計-資料下載頁

2025-11-22 22:40本頁面

【導讀】內,以滿足所需要求的調控設備。傳統(tǒng)的多點溫控系統(tǒng)雖然相較于單點溫控系統(tǒng),誤。且節(jié)點越多、通信效率越低。另外,隨著計算機和微處理器的飛速發(fā)展,人們對溫度。位或16位單片機的容量、效率、速度已經(jīng)不能滿足高質量控制溫度的要求。CAN總線通訊相關資料,設計了基于CAN總線的溫度控制系統(tǒng)。論文的主要工作如。節(jié)溫度的下位機;第二,利用CAN總線的通信模塊實現(xiàn)了PC機與下位機的傳輸;

  

【正文】 AD0AD7 與單片機的輸入輸出管腳 P00P07 連接,片選信號 /CS 接地,低電壓允許訪問, RST、 INT、 WR、 WD、 ALE 管腳分別跟單片機的相應管腳連接,控制器的收煙臺南山學院 畢業(yè)設計 (論文 ) 第 22 頁 發(fā)端 RX0、 TX0 分別接收發(fā)器的 RXD、 TXD 引腳,由于 SJA1000 的模式可以有 INTEL和 Motorloa 兩種,本設計中采用的是 INTEL 模式,即把控制器的 Vdd Vdd Vdd3連同 MODE 引腳接 5V電壓,控制器的 Vss Vss Vss3 與收發(fā)器的 Rs 引腳接地。 上位機的硬件設計 上位機 是指可以直接發(fā)出操控命令的計算機,屏幕上顯示各種信號變化(液壓,水位,溫度等) 。本文指的 是 PC,屏幕上顯示溫度的變化 。 串口通信 在工控領域,很多情況下會存在 PC 機和單片機系統(tǒng)通信,由于 PC 機和單片機都有串口,因此可以通過串口實現(xiàn)兩者之間的通信。串口的作用就是處理器跟串行設 備之間進行編碼轉換的,微處理器發(fā)送字節(jié)數(shù)據(jù)到串口后變成串行的位數(shù)據(jù),在接收過程中正好相反,把位數(shù)據(jù)轉換成字節(jié)數(shù) 據(jù)。計算機的串口一般為 RS232 口,有 9針和 25 針兩種,通常都是九針的 COM1,那么在進行通信時就需要在 PC 端設計相應的串口程序,而 PC 上一般是應用 Windows 系統(tǒng),因此就需要在 Windows 環(huán)境下編寫串口通信程序 [8]。串口圖(九針)如圖 所示: 圖 串口圖 其中 3 腳分別為發(fā)送( TXD)和接收 (RXD)管腳, 5 腳為信號地,一般這三個腳就可以完成收發(fā)功能了。表 為具體管腳定義: 煙臺南山學院 畢業(yè)設計 (論文 ) 第 23 頁 表 串行口管腳定義表 序號 引腳定義 信號名稱 功能 1 DCD 載波檢測 表示 DCE收 到遠程載波 2 TXD 發(fā)送數(shù)據(jù) 發(fā)送串行數(shù)據(jù) 3 RXD 接收數(shù)據(jù) 接收串行數(shù)據(jù) 4 DTR 數(shù)據(jù)終端就緒 請求 DCE將線路切換到發(fā)送方式 5 GND 信號地 公共信號地 6 DSR 數(shù)據(jù)設備就緒 通知 DTE線路進接通可以發(fā)送數(shù)據(jù) 7 RTS 請求發(fā)送 DCE準備好 8 CTS 允許發(fā)送 DTE準備好 9 RI 接通指示 表示 DCE與線路接通 Windows 里串口是系統(tǒng)資源的一部分,應用程序要使用串口進行通信首先要打開串口(申請資源),通信完畢后要關閉串口(釋放資源),在系統(tǒng)函數(shù)中均包含 支持通信中斷的功能。而且系統(tǒng)還為串口通信提供了輸入和輸出的緩沖區(qū),應用程序只能對輸入輸出緩沖區(qū)進行操作,數(shù)據(jù)進出串口都是由系統(tǒng)后臺操作的。 小結 在本章中,主要給出了上位機和下位機的連接設置,即硬件的連接設計 ,為系統(tǒng)的軟件設計打下了基礎。 煙臺南山學院 畢業(yè)設計 (論文 ) 第 24 頁 5 系統(tǒng)軟件設計 下位機的軟件設計 CAN 接口的軟件設計 由于本系統(tǒng)用到 ARM 處理器 [9],所以用 Keil uVision4 編譯器進行軟件的編譯設計,它里面集成 C 編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調試器,通過一個集成開發(fā) 環(huán)境 (uVision)將這些部分組合在一起。軟件語言應用 C 語言 [10],與其他語言相比,它有著語言簡潔、運算符豐富、可以直接對硬件操作、可移植性好的特點,在 Keil 中生成 .hex 文件也就是程序通過編譯后生成的 16 進制代碼文件,再用 Jlink 下載線通過 STCISP V391 軟件下載到 ARM 里運行。 軟件設計主要包括 CAN 初始化、報文的發(fā)送、報文的接收。 CAN 初始化最重要的是設置 CAN 的波特率,要根據(jù)具體的實際情況而定,通常情況下 1Mbps 可以最遠傳送 40 米的距離 ,一般波特率的設置會用到 PCK1 時鐘,它可以 通過測 CANTX 引腳上面的波形得出。 圖 CAN 初始化流程圖 CAN 初始化 煙臺南山學院 畢業(yè)設計 (論文 ) 第 25 頁 初始化程序包括對系統(tǒng)時鐘( RCC)配置、中斷向量控制器 (NVIC)配置、輸入輸出 (GPIO)設置、同步異步收發(fā)端 (USART)配置和 CAN配置,其中最重要的是對 CAN的設置, CAN_Configuration()函數(shù)主要就是用來對 CAN 寄存器、內核、工作模式、濾波器進行設置,具體流程圖如圖 所示。 CAN 發(fā)送函數(shù) CAN 發(fā)送函數(shù)主要包括選擇一個空的郵箱、設置 ID、 DLC 所要傳送的消息幀長度設置、請求發(fā)送。部分代 碼如下,其流程圖如圖 所示 : 圖 CAN 發(fā)送函數(shù)流程圖 圖 CAN 接收函數(shù)流程圖 CAN 接收函數(shù) CAN 的接收函數(shù)跟發(fā)送函數(shù)正好相反,主要是在參數(shù)檢查完后進行獲取 ID、得到 DLC 和 FMI、解析數(shù)據(jù)幀、最后釋放 FIFO,其流程圖如圖 所示。 轉換器的軟件設計 由于 CAN 總線和 RS232 工作在兩個不同的網(wǎng)絡,且 CAN 總線是基于數(shù)據(jù)塊編址的,以報文為單位來發(fā)送數(shù)據(jù)的,報文都有唯一的標識符 ID,每一幀最多容納 8個字節(jié), RS232 是以位數(shù)據(jù)的形式 進行傳輸?shù)模且环N串行物理接口標準,因此要實現(xiàn)兩者的通信必須進行協(xié)議的轉換,轉換程序主要包括:協(xié)議轉換, CAN 函數(shù)、 RS232函數(shù),其中協(xié)議轉換可以使 RS232 到 CAN, CAN 到 RS232 的數(shù)據(jù)轉化。 CAN 函數(shù)主要實現(xiàn)的是 SJA1000 的初始化,發(fā)送和接收數(shù)據(jù),其中韌始化主要包括設置工作煙臺南山學院 畢業(yè)設計 (論文 ) 第 26 頁 方式、接收濾波方式、接收屏蔽寄存器,接收代碼寄存器、波特率設置和中斷允許寄存器,發(fā)送函數(shù)將數(shù)據(jù)存儲區(qū)的數(shù)據(jù)取出后封裝成報文格式送入緩沖區(qū)內,接收函數(shù)在緩沖區(qū)里讀數(shù)據(jù)并將其存入數(shù)據(jù)存儲區(qū)里。 RS232 函數(shù)實現(xiàn)了串口初始化、接收 發(fā)送函數(shù)及中斷函數(shù),串口工作在查詢模式, CAN 總線有數(shù)據(jù)時,微處理器將其發(fā)送串口,當串口有數(shù)據(jù)時,將其發(fā)送到 CAN 總線。主程序流程圖如圖 所示: 圖 協(xié)議轉換器主程序流程圖 要使轉接卡可以正常工作,就要對 CAN 控制器 SJA1000 初始化,主要的 CAN控制器寄存器的控制字見附錄。 在波特率的設置上,在不進行傳輸數(shù)據(jù)壓縮的前提下,它的值就是每秒所傳送的數(shù)據(jù)位數(shù),所以要保證本轉換器的設置跟下位機所有節(jié)點的設置是一樣的,如果偏差很大則不能進行通信, SJA1000 初始化流程圖如圖 所示: 煙臺南山學院 畢業(yè)設計 (論文 ) 第 27 頁 圖 CAN 控制器 SJA1000 初始化流程圖 圖 串口部分程序流程圖 在進入復位模式后選擇 CAN 的 BasicCAN 模式,設置代碼寄存器和屏蔽寄存器,波特率,輸出模式和時鐘分頻,最后退出復位。 在接收串口數(shù)據(jù)時,把由上位機 PC 發(fā)來的數(shù)據(jù)進行處理,數(shù)據(jù)是 ASCII 碼形式的,需將其轉化為字節(jié)的形式, gethex(1)是將 2 個 ASCII 碼轉為一個字節(jié), S 位是進行 CAN 節(jié)點 ID 和速度設置的。其流程圖如圖 所示。 上位機的軟件設計 串口通信 Windows 提供 串口通信有三種方法: 使用串口通信控件。針對串口通信, Microsoft 公司提供了 MSComm 控件,使用控件串口通信是非常方便的,設計人員不需要了解繁瑣的 API 函數(shù)到底是怎么運作的,通過簡單的修改控件的屬性就可以實現(xiàn)串口的配置,完成串口接收和發(fā)送功能。 應用 Windows 的 API 應用程序接口。 Windows 中串口是以文件的形式被打開和訪問的,串口和串口通信驅動需要用到設備控制塊( Device Control Block,DCB)進行配置。應用程序使用 API 函數(shù)打開 CreateFile 打開串口, ReadFile 讀取串口,CreateEvent 建立事件對象和 CloseHandle 關閉串口。 煙臺南山學院 畢業(yè)設計 (論文 ) 第 28 頁 使用動態(tài)鏈接庫 DLL。動態(tài)鏈接庫是一些函數(shù)的集合,開發(fā)人員編制端口驅動程序或使用第三方提供的 DLL 例程。在函數(shù)工作是會鏈接到應用程序,而不是在編譯期間靜態(tài)的連接可執(zhí)行文件。 Windows 應用程序大量使用 DLL,其中包括系統(tǒng)應用程序的大量過程。 在本論文中考慮到溫度傳輸?shù)臄?shù)據(jù)量小,串口通信不是很復雜,且開發(fā)方便,節(jié)省時間故而采用第一種方法 MSComm 控件。 MSComm 控件作用就是用 ActiveX 控件簡化 Windows 下串口編程,可以提供標準通信接口,方便用戶通過串口接口到其他設備中, MSComm 控件串口編程的基本流程如圖 所示 : 圖 MSComm 控件開發(fā)串口流程圖 MSComm 提供兩種處理通信問題的方法 [11]: 事件驅動法: MSComm 中的 OnComm 事件可以處理緩沖區(qū)里有字符的情況,還可以檢查處理錯誤,程序編寫時可以在事件處理函數(shù)中添加自己的程序,好處就是響應迅速,穩(wěn)定性好。 查詢方式:它實際上也屬于事件驅動,根據(jù) CommEvent 屬性值來查詢事件、錯誤,這在某種時候會比較簡捷。 本文在溫控 系統(tǒng)的 PC 機上研究串口通信,并應用 MFC 開發(fā)可視化界面,用于溫度的實時控制及其結果的呈現(xiàn)。在串口通信方面,采用 Microsoft 公司提供的煙臺南山學院 畢業(yè)設計 (論文 ) 第 29 頁 ActiveX 控件 MSComm 來實現(xiàn)編程 。在整個軟件設計過程中,作為 MSComm 控件所嵌入的對話框,動態(tài)溫度曲線是采用窗口的 View 類實現(xiàn)的,在這里創(chuàng)建 MFC 應用程序 [12]來實現(xiàn)溫度曲線的顯示。對話框上的圖標不可以加載到視圖 (View)中,但是MSComm 控件能夠加載到單文檔的 ABOUT 中(在本文的界面里沒有顯示),這樣就可以完成實現(xiàn),具體步驟如圖 所示: 圖 本系統(tǒng) MSComm 控件加載圖 MFC 開發(fā)流程圖 界面通信軟件實現(xiàn) 該軟件主要包括串口的初始化,讀取串口數(shù)據(jù)并顯示,繪制曲線并保存,溫度實時監(jiān)控和坐標軸的移動幾部分,具體流程圖如圖 所示。 初始化串口。 利用 ClassWizard 為 CTemCurve 類添加消息處理函數(shù) WM_CREATE,利用該函數(shù)來實現(xiàn)串口的初始化。 在串口初始化中,選擇 PC 上面的端口 COM1,設置波特率為 9600,無校驗, 8 個數(shù)據(jù)位, 1 個停止位,另外通過實際的需要來設定輸入、輸出緩沖區(qū) 大?。ū疚闹卸疾捎?1024),最后調用 SetTimer 時會生成一個定時器,來完成對溫度數(shù)據(jù)的實時監(jiān)控。 讀取保存串口發(fā)送過來的數(shù)據(jù)并進行數(shù)據(jù)形式轉化。 本論文采用的是事件驅動法實現(xiàn)串口通信的,就是有事件產(chǎn)生時執(zhí)行 OnComm里定義的函數(shù),如接收事件,發(fā)送事件等,特點是對程序的響應及時,可靠性高。 代碼見附錄,主要用于接收保存串口的數(shù)據(jù),由于 PC 機從單片機中接收到的是 16 進制的數(shù)據(jù),而在 VC++中沒有直接將 16 進制轉變 10 進制的函數(shù),所以自定義并調用煙臺南山學院 畢業(yè)設計 (論文 ) 第 30 頁 TransDec()函數(shù)來完成數(shù)據(jù)的轉換。 在 OnPaint()函數(shù)中實現(xiàn)坐標軸的繪制及溫度動態(tài)曲線圖的保存。 為了便于操作人員觀察溫度跟時間的關系,在坐標區(qū)域內繪制了平行于坐標軸的等距線,它主要由 Draw()函數(shù)實現(xiàn)的,該函數(shù)包括的幾個子函數(shù)具有基本框架設計、坐標軸繪制、曲線繪制等功能,其具體函數(shù)由于實現(xiàn)代碼很多,顧不在此詳述。 實現(xiàn)溫度的實時監(jiān)控和坐標軸的移動。 為了更好的顯示溫度曲線,要不間斷的對它進行數(shù)據(jù)采集。在程序中,通常是定義一個定時器來完成此操作。定時器代碼見附錄,最后運行后的程序曲線會隨時間一秒一秒的向左移動。 PC 界面 PC 的 界面設計上應用 MFC 庫.它作為 c++類的一個集合和應用程序框架,主要用于創(chuàng)建 Microsoft Windows 應用程序。這個類的集合將 c++語言擴展為包括創(chuàng)建基于 Windows 的應用程序所需的大部分基本結構單元,一些重要的 MFC 類包括:應用程序體系結構類、用戶界面類、數(shù)據(jù)庫類、 Inter 類 [13]等。它的優(yōu)勢在于可以減少開發(fā)周期,使代碼更加簡結,在保證了編程的隨意性和方便性的情況下,在用戶界面的設計上提供了大量的技術,主要優(yōu)點是: 應用程序的開發(fā)平臺,在上面建立自己需要的應用程序; 兼容了以前 版本的 MFC 和新的 c++類; 兼容性很好的 c++源代碼庫; 與 Visual c++集成。 本論文就是基于 VC++的 MFC 編制可視化界面來進行通信顯示的 [14]。其中, 系統(tǒng)總界面的功能設置為三個大部分:系統(tǒng)設置、選擇智能節(jié)點、控制方法,右邊的View 框里主要顯示溫度的動態(tài)曲線。詳細設計如下: 系統(tǒng)設置一欄包括開始顯示、停止顯示和報警
點擊復制文檔內容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1