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

正文內(nèi)容

串口通信c課程設計--基于串口通信的高級語言控制程序的設計-其他專業(yè)(參考版)

2025-01-23 00:20本頁面
  

【正文】 參 考文獻 [1]李強 ,賈 云霞編著 .VisualC++項目開發(fā)實踐 .北京 :中國鐵道出版社, 2021 [2] 張筠莉,劉書智編著 .visualc++實踐與提高 串口通信與工程應用篇 . 北京 :中國鐵道出版社, 2021 [3] 淑慧 VC++ 環(huán)境下 GPS 接收機串口通信的實現(xiàn) [期刊論文 ]測繪信息與工程 2021(5) [4]王華 ,岳麗全 ,岳志高 . MSComm 控件在 VC + + 6. 0 串口通信中的應用 . 長春工程學院學報 :自然科學版 ,2021 ,10 (1) [5]王莉 ,陽春華 .基于 VC++的串口通信設計及其應用 [J].控制工程 ,2021,11 (S1) :89292. 。 本次課程設計 ,利用 VC++下的 MSComm 控件編程方法,通過 MSComm 控件 可以十分便捷地寫出靈活性高,移植性強的串口通信程序,避免了去了解一些復雜的 windowsAPI函數(shù)。 同時,本串口通信程序能避免在串口未打開時發(fā)送接收數(shù)據(jù),避免十六進制發(fā)送或顯示時,發(fā)送或顯示其他字符 。 //使設置按鈕生效 } 7 系統(tǒng)測試 測試 首先,直接雙擊 MSComm 文件夾下的 debug 子文件夾下的 運行文件; 其次,按以下步驟進行 測試: (1)參數(shù)設置: 圖 參數(shù)設置 ( 2)打開串口 : 13 圖 打開串口 (3) 發(fā)送十六進制 : 圖 ( a) 十六進制發(fā)送 14 圖 ( b) 串口調(diào)試助手十六進制顯示 (4)接收數(shù)據(jù) : 圖 ( a)串口調(diào)試助手發(fā)送數(shù)據(jù) 15 圖 ( b)接收數(shù)據(jù) (5)自動發(fā)送 圖 ( a)自動發(fā)送 16 圖 ( b)串口調(diào)試助手數(shù)據(jù)顯示 ( 6) 清空接收區(qū) 圖 清空接收區(qū) ( 7)清空發(fā)送區(qū) 17 圖 清空發(fā)送區(qū) ( 8)清空發(fā)送區(qū) 圖 關閉串口 18 總結(jié) 通過上述測試,本系統(tǒng)實現(xiàn)了參數(shù)設置與顯示、打開關閉串口、接收和發(fā)送數(shù)據(jù)、自動發(fā)送、十六進制發(fā)送與顯示、清空數(shù)據(jù)接收區(qū)和發(fā)送區(qū)內(nèi)容的功能, 同時, 能避免在串口未打開時發(fā)送接收數(shù)據(jù),避免十六進制發(fā)送或顯示時,發(fā)送其他字符 。 //使打開串口按鈕生效 (false)。 //關閉串口 AfxMessageBox(_T(串口關閉成功! ))。 12 AfxMessageBox(_T(清空發(fā)送區(qū)成功! ))。 } 發(fā)送區(qū) 模塊 單擊主界面中的【清空發(fā)送區(qū)】按鈕, 將清空發(fā)送區(qū)內(nèi)容,提示“清空發(fā)送區(qū)內(nèi)容!” 如圖 所示,該命令的代碼如下: void CMSCommDlg::OnBnClickedClearsend() { // TODO: 在此添加控件通知處理程序代碼 m_send=。 UpdateData(FALSE)。 default: break。 UpdateData(false)。\039。 //將字符以十六進制方式送入臨時變量 tmp存放,注意這里加入一個空隔 m_recv+=tmp。 i++) ///將數(shù)組轉(zhuǎn)換為 Cstring型變量 { BYTE bt=*(char*)(rxdata+i)。//轉(zhuǎn)換為 BYTE型數(shù)組 for (i = 0。i, amp。 i len。 len = ()。 switch (()) { case 2: //表示接收緩沖區(qū)內(nèi)有字符 { variant_inp = ()。 char rxdata[2048]。 long i = 0。 VARIANT variant_inp。//時間為毫秒 } else { KillTimer(1)。 } void CMSCommDlg::OnBnClickedCheckAutosend() { // TODO: 在此添加控件通知處理程序代碼 m_bAutoSend=!m_bAutoSend。 } } 10 自動發(fā)送模塊 當 【 自動發(fā)送 】 選中時,系統(tǒng)將自動每隔 2s 發(fā)送一次數(shù)據(jù) , 如圖 (a)(b)所示, 程序代碼如下: void CMSCommDlg::OnTimer(UINT_PTR nIDEvent) { // TODO: 在此添加消息處理程序代碼和 /或調(diào)用默認值 OnBnClickedSendbutton()。 i++) { (i, (i))。 for(int i =0。 wLength = ()。 //發(fā)送十六進制數(shù)據(jù) } else { CByteArray sendArr。 int len=String2Hex(m_send,hexdata)。 } 單擊主界面中的 【 發(fā)送 】 按鈕,將把發(fā)送區(qū)的內(nèi)容發(fā)送到串口調(diào)試助手的接收區(qū),如果 【 十六進制發(fā)送 】 選中,則只能發(fā)送 0~F,如圖 (a)(b)所示,該命令的代碼如下: void CMSCommDlg::OnBnClickedSendbutton() { // TODO: 在此添加控件通知處理程序代碼 UpdateData(true)。 (false)。 //使打開串口按鈕無效 (true)。 //onm事件門限值 (1)。 //設置數(shù)據(jù)獲取方式 (0)。 //指定接收緩沖 區(qū)大小 (0)。 (strPara)。 strPara+=myStop。 strPara+=myData。 strPara+=myParity。 //指定串口號 my strPara=myBaudRate。 } } 單擊主界面中的 【 打開串口 】 按鈕,如果參數(shù)已設置好,將 打開指定的串口, 提示“串口打開成功!”,如圖 所示,該命令的代碼如下: void CMSCommDlg::OnBnClickedOpen() { // TODO: 在此添加控件通知處理程序代碼 CString strPara。 m_Para=strStatus。 strStatus+=, 。 strStatus+=, 。 strStatus+=bit/s, 。 strStatus+=, 。 (_T(%d),myCom)。 myStop=strStatus。
點擊復制文檔內(nèi)容
試題試卷相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1