vc編寫串口程序

vc編寫串口程序

ID:30787760

大小:85.50 KB

頁(yè)數(shù):14頁(yè)

時(shí)間:2019-01-03

vc編寫串口程序_第1頁(yè)
vc編寫串口程序_第2頁(yè)
vc編寫串口程序_第3頁(yè)
vc編寫串口程序_第4頁(yè)
vc編寫串口程序_第5頁(yè)
資源描述:

《vc編寫串口程序》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)

1、VC控件MSComm編寫串口通信程序(轉(zhuǎn))博客分類:?C++VC++編程數(shù)據(jù)結(jié)構(gòu)MFCMicrosoft在眾多網(wǎng)友的支持下,串口調(diào)試助手從2001年5月21H發(fā)布至今,短短一個(gè)月,在全國(guó)各地累計(jì)下載量近5000人次,在近200多個(gè)電子郵件中,20多人提供了使用測(cè)試意見,更有50多位朋友提岀要串口調(diào)試助手的源代碼,為了答謝謝朋友們的支持,公開推出我最初用VC控件MSComm編寫串口通信程序的源代碼,并寫出詳細(xì)的編程過(guò)程,姑且叫串口調(diào)試助手源程序VI.0或VC串口通訊源程序吧,我相信,如果你用VC編程,那么有了這個(gè)代碼,就可以輕而易舉地完成串口編程任

2、務(wù)了。(也許本文過(guò)于詳細(xì),高手就不用看)開始吧:1?建立項(xiàng)目:打開VC++6.0,建立一個(gè)基于對(duì)話框的MFC應(yīng)用程序SCommTest(與我源代碼一致,等會(huì)你會(huì)方便一點(diǎn));2?在項(xiàng)目中插入MSComm控件選擇Project菜單下AddToProject子菜單中的ComponentsandControls??-選項(xiàng),在彈出的對(duì)話框中雙擊RegisteredActiveXControls項(xiàng)(稍等一會(huì),這個(gè)過(guò)程較慢),則所有注冊(cè)過(guò)的ActiveX控件出現(xiàn)在列表框中。選擇MicrosoftCommunicationsControl,version6.0,

3、,單擊Insert按鈕將它插入到我們的Project屮來(lái),接受缺省的選項(xiàng)。(如果你在控件列表中看不到MicrosoftCommunicationsControl,version6.0,那可能是你在安裝VC6時(shí)沒有把ActiveX-項(xiàng)選上,重新安裝VC6,選上ActiveX就可以了),這吋在ClassView視窗中就可以看到CMSComm類了,(注意:此類在ClassWizard屮看不到,重構(gòu)elw文件也一樣),并且在控件工具欄Controls屮出現(xiàn)了電話圖標(biāo)(如圖1所示),現(xiàn)在要做的是用鼠標(biāo)將此圖標(biāo)拖到對(duì)話框中,程序運(yùn)行后,這個(gè)圖標(biāo)是看不到的。C

4、ontrols對(duì)話框中3?利用ClassWizard定義CMSComm類控制對(duì)象打開ClassWizard—>MemberViariables選項(xiàng)卡,選擇CSCominTestDlg類,為IDC_MSCOMM1添加控制變量:m_ctrlComm,這時(shí)你可以看一看,在對(duì)話框頭文件中自動(dòng)加入了//{{AFX」NCIAJDES()ttinclude"mscomm.h〃//}}AFXINCLUDES(這13寸運(yùn)行程序,如果有錯(cuò),那就再?gòu)念^開始)。4.在對(duì)話框中添加控件向主對(duì)話框中添加兩個(gè)編輯框,一個(gè)用于接收顯示數(shù)據(jù)1D為1DC_ED1T_RXDATA,另

5、一個(gè)用于輸入發(fā)送數(shù)據(jù),1D為IDC_EDIT_TXDATA,再添加一個(gè)按鈕,功能是按一次就把發(fā)送編輯框中的內(nèi)容發(fā)送一次,將其ID設(shè)為TDC_BUTTON_MANUALSENDo別忘記了將接收編輯框的Properties—>Styles中把M訂tilineSlVerticalScroll屬性選上,發(fā)送編輯框若你想輸入多行文字,也可選上Miltilineo再打開ClassWizard—>MemberViariables選項(xiàng)卡,選擇CSCominTestDlg類,為IDC_EDIT_RXDATA添加CString變量m_strRXData,為IDC_E

6、DIT_TXDATA添加CString變量mstrTXDatdo說(shuō)明:m_strRXData和mstrTXData分別用來(lái)放入接收和發(fā)送的字符數(shù)據(jù)。休息一會(huì)吧?我們天天與電腦打交道,要注意保重,我現(xiàn)在在單杠上做引體向上可以來(lái)40次,可我都32了,佩服嗎?。。。。。。好了,再接著來(lái),下面是關(guān)鍵了:5?添加串口事件消息處理函數(shù)OnComm()打開ClassWizard—'MessageMaps,選擇類CSCommTestDlg,選擇IDC_MSCOMM1,雙擊消息OnComm,將彈出的對(duì)話框中將函數(shù)名改為OnComm,(好記而已)0K。這個(gè)函數(shù)是用來(lái)

7、處理串口消息事件的,如每當(dāng)串口接收到數(shù)據(jù),就會(huì)產(chǎn)生一個(gè)串口接收數(shù)據(jù)緩沖區(qū)中有字符的消息事件,我們剛才添加的函數(shù)就會(huì)執(zhí)行,我們?cè)贠nCommO函數(shù)加入相應(yīng)的處理代碼就能實(shí)現(xiàn)自已想要的功能了。請(qǐng)你在函數(shù)中加入如下代碼:voidCSCommTcstDlg::OnCommO{//TODO:AddyourcontrolnotificationhandlercodehereVARIANTvariant_inp;COleSafeArraysafearray_inp;LONGlen,k;BYTErxdata[2048];//設(shè)置BYTE數(shù)組An8~bitintc

8、gcrthatisnotsigned.CStringstrtemp;if(m_ctriComm.GetCommEvent()==2)//

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。