经典串口调试助手源程序及串口通信设置dvhe.docx

上传人:you****now 文档编号:48119965 上传时间:2022-10-05 格式:DOCX 页数:28 大小:73.37KB
返回 下载 相关 举报
经典串口调试助手源程序及串口通信设置dvhe.docx_第1页
第1页 / 共28页
经典串口调试助手源程序及串口通信设置dvhe.docx_第2页
第2页 / 共28页
点击查看更多>>
资源描述

《经典串口调试助手源程序及串口通信设置dvhe.docx》由会员分享,可在线阅读,更多相关《经典串口调试助手源程序及串口通信设置dvhe.docx(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、串口调试试助手源源程序及编程详详细过程程作者:龚龚建伟 20001.6.220可以任意意转载,但但必须注注明作者者和说明明来自hhttpp:/m,不得得作为商商用目次:1.建立立项目2.在项项目中插插入MSSCommm控件件3.利用用ClaassWWizaard定定义CMMSCoomm类类控制变变量4.在对对话框中中添加控控件5.添加加串口事事件消息息处理函函数OnnCommm()6.打开开和设置置串口参参数7.发送送数据如果你还还没有下下载源程程序,又又对本文文有兴趣趣,请立立即下载载在在众多网网友的支支持下,串串口调试试助手从从20001年55月211日发布布至今,短短短一个个月,在在全国

2、各各地累计计下载量量近50000人人次,在在近2000多个个电子邮邮件中,220多人人提供了了使用测测试意见见,更有有50多多位朋友友提出要要串口调调试助手手的源代代码,为为了答谢谢谢朋友友们的支支持,公公开推出出我最初初用VCC控件MMSCoomm编编写串口口通信程程序的源源代码,并并写出详详细的编编程过程程,姑且且叫串口口调试助助手源程程序V11.0或或VC串串口通讯讯源程序序吧,我我相信,如如果你用用VC编编程,那那么有了了这个代代码,就就可以轻轻而易举举地完成成串口编编程任务务了。(也也许本文文过于详详细,高高手就不不用看)开始吧:1.建立立项目:打开VVC6.00,建立立一个基基于对

3、话话框的MMFC应应用程序序SCoommTTestt(与我我源代码码一致,等等会你会会方便一一点);2.在项项目中插插入MSSCommm控件件选择择Proojecct菜单单下Addd TTo PProjjectt子菜单单中的 Commponnentts aand Conntrools选项,在在弹出的的对话框框中双击击Reggisttereed AActiiveXX Coontrrolss项(稍稍等一会会,这个个过程较较慢),则则所有注注册过的的ActtiveeX控件件出现在在列表框框中。 选择MMicrrosooft Commmunnicaatioons Conntrool, verrsioo

4、n 66.0,单单击Innserrt按钮钮将它插插入到我我们的PProjjectt中来,接接受缺省省的选项项。(如如果你在在控件列列表中看看不到MMicrrosooft Commmunnicaatioons Conntrool, verrsioon 66.0,那那可能是是你在安安装VCC6时没没有把AActiiveXX一项选选上,重重新安装装VC66,选上上ActtiveeX就可可以了),这时在CClasssViiew视视窗中就就可以看看到CMMSCoomm类类了,(注注意:此此类在CClasssWiizarrd中看看不到,重重构cllw文件件也一样样),并并且在控控件工具具栏Coontrro

5、lss中出现现了电话话图标(如如图1所所示),现现在要做做的是用用鼠标将将此图标标拖到对对话框中中,程序序运行后后,这个个图标是是看不到到的。3.利用用ClaassWWizaard定定义CMMSCoomm类类控制对对象打开CllasssWizzarddMMembber Viaariaablees选项项卡,选选择CSSCommmTeestDDlg类类,为IIDC_MSCCOMMM1添加加控制变变量:mm_cttrlCCommm,这时时你可以以看一看看,在对对话框头头文件中中自动加加入了/AFXX_INNCLUUDESS() #iinclludee mmscoomm.h /AAFX_INCCLUD

6、DES (这时时运行程程序,如如果有错错,那就就再从头头开始)。4.在对对话框中中添加控控件向主对对话框中中添加两两个编辑辑框,一一个用于于接收显显示数据据ID为为IDCC_EDDIT_RXDDATAA,另一一个用于于输入发发送数据据,IDD为IDDC_EEDITT_TXXDATTA,再再添加一一个按钮钮,功能能是按一一次就把把发送编编辑框中中的内容容发送一一次,将将其IDD设为IIDC_BUTTTONN_MAANUAALSEEND。别别忘记了了将接收收编辑框框的PrropeertiiesSttylees中把把Milltillinee和Veertiicall Sccrolll属性性选上,发发送

7、编辑辑框若你你想输入入多行文文字,也也可选上上Milltillinee。再打开CClasssWiizarrdMemmberr Viiariiablles选选项卡,选选择CSSCommmTeestDDlg类类, 为为IDCC_EDDIT_RXDDATAA添加CCStrringg变量mm_sttrRXXDatta, 为IDCC_EDDIT_TXDDATAA添加CCStrringg变量mm_sttrTXXDatta。说说明: m_sstrRRXDaata和和m_sstrTTXDaata分分别用来来放入接接收和发发送的字字符数据据。5.添添加串口口事件消消息处理理函数OOnCoomm()打开开Claa

8、ssWWizaardMeessaage Mapps,选选择类CCSCoommTTesttDlgg,选择择IDCC_MSSCOMMM1,双双击消息息OnCCommm,将弹弹出的对对话框中中将函数数名改为为OnCCommm,(好好记而已已)OKK。这个函函数是用用来处理理串口消消息事件件的,如如每当串串口接收收到数据据,就会会产生一一个串口口接收数数据缓冲冲区中有有字符的的消息事事件,我我们刚才才添加的的函数就就会执行行,我们们在OnnCommm()函数加加入相应应的处理理代码就就能实现现自已想想要的功功能了。请请你在函函数中加加入如下下代码:voidd CSSCommmTeestDDlg:Onn

9、Commm() / TOODO: Addd yyourr coontrrol nottifiicattionn haandller codde hheree VAARIAANT varriannt_iinp; COOleSSafeeArrray saffearrrayy_innp; LONNG llen,k; BYTTE rrxdaata20448; /设置BBYTEE数组 An 8-bbit inttegeerthhat is nott siigneed. CSttrinng sstrttempp; iif(mm_cttrlCCommm.GeetCoommEEvennt()=22) /事件件

10、值为22表示接接收缓冲冲区内有有字符 /以下下你可以以根据自自己的通通信协议议加入处处理代码码 vvariiantt_innp=mm_cttrlCCommm.GeetInnputt(); /读缓冲冲区 saffearrrayy_innp=vvariiantt_innp; /VVARIIANTT型变量量转换为为ColleSaafeAArraay型变变量 lenn=saafeaarraay_iinp.GettOneeDimmSizze(); /得到到有效数数据长度度 ffor(k=00;klenn;k+) ssafeearrray_inpp.GeetEllemeent(&k,rxddataa+k)

11、;/转换为为BYTTE型数数组 forr(k=0;kkMMesssagee Maaps,选选择类CCSCoommTTesttDlgg,选择择IDCC_BUUTTOON_MMANUUALSSENDD,双击击BN_CLIICKEED添加加OnBButttonMManuualssendd()函函数,并并在函数数中添加加如下代代码:voidd CSSCommmTeestDDlg:OnnButttonnMannuallsennd()/ TODDO: Addd yoour conntrool nnotiificcatiion hanndleer ccodee heereUUpdaateDDataa(TRR

12、UE); /读取取编辑框框内容mm_cttrlCCommm.SeetOuutpuut(CCOleeVarriannt(mm_sttrTXXDatta);/发送数数据运行程序序,在发发送编辑辑框中随随意输入入点什么么,单击击发送按按钮,啊啊!看看看,在另另一端的的串口调调试助手手(或别别的调试试工具)接接收框里里出现了了什么。如果你真真是初次次涉猎串串口编程程,又一一次成功功,那该该说声谢谢谢我了了,因为为我第一一次做串串口程序序时可费费劲了,那那时网上上的资料料也不好好找。开开开玩笑笑,谢谢谢你的支支持,有有什么好好东西别别忘了给给我寄一一份。最后说明明一下,由由于用到到VC控控件,在在没有安

13、安装VCC的计算算机上运运行时要要从VCC中把mmscoomm332.oocx、mmsvccrt.dlll、mffc422.dlll拷到到Winndowws目录录下的SSysttem子子目录中中(wiin20000为为Sysstemm32)龚建伟 20001.66.200什么是VVARIIANTT数据类类型?如如何使用用VARRIANNT数据据类型? 怎么么以十六六进制或或二进制制发送和和接收?如果还还想再深深入了解解,请看看:串口调试试助手源源程序及及编程详详细过程程(二)2001.8.26这是是更新后后适合本本文的源源程序(2001.8.25制作),如果还没有下载源程序,又对本文有兴趣,请

14、 立即下载(当然,你看完本文也可以自己做出来,这个程序是接着上一个做的,如果你没下载前面程序,则没必要再下载了,本程序全部包含)。8.发送送十六进进制字符符 在主对对话框中中加入一一个复选选接钮,IID为IIDC_CHEECK_HEXXSENND CCapttionn: 十十六进制制发送,再再利用CClasssWiizarrd为其其添加控控制变量量:m_ctrrlHeexSeend; 在CllasssVieew中为为SCoommTTesttDlgg类添加加以下两两个PUUBLIIC成员员函数,并并输入相相应代码码;/由于于这个转转换函数数的格式式限制,在在发送框框中的十十六制字字符应该该每两个

15、个字符之之间插入入一个空空隔/如:AA1 223 445 00B 000 229/CByyteAArraay是一一个动态态字节数数组,可可参看MMSDNN帮助iint CSCCommmTesstDllg:Strringg2Heex(CCStrringg sttr, CByyteAArraay &sennddaata)intt heexdaata,lowwhexxdatta;iint hexxdattaleen=00;innt llen=strr.GeetLeengtth();seendddataa.SeetSiize(lenn/2);foor(iint i=00;i=leen)bbreaak;

16、llstrr=sttrii;hhexddataa=CoonveertHHexCCharr(hsstr);loowheexdaata=ConnverrtHeexChhar(lsttr);if(heexdaata=166)|(loowheexdaata=166)bbreaak;eelseehexxdatta=hhexddataa*166+loowheexdaata;i+;seendddataaheexdaatallen=(ccharr)heexdaata;hexxdattaleen+;sennddaata.SettSizze(hhexddataalenn);rretuurn hexxdattale

17、en;/这这是一个个将字符符转换为为相应的的十六进进制值的的函数/好多多C语言言书上都都可以找找到/功能:若是在在0-FF之间的的字符,则则转换为为相应的的十六进进制字符符,否则则返回-1chhar CSCCommmTesstDllg:ConnverrtHeexChhar(chaar cch)if(chh=0)&(ch=AA)&(cch=a)&(ch=ff)retturnn chh-aa+110;eelsee reeturrn (-1);再将CCSCoommTTesttDlgg:OOnBuuttoonMaanuaalseend()修改改成以下下形式:voidd CSSCommmTeestDDl

18、g:OnnButttonnMannuallsennd()/ TODDO: Addd yoour conntrool nnotiificcatiion hanndleer ccodee heereUUpdaateDDataa(TRRUE); /读取取编辑框框内容iif(mm_cttrlHHexSSendd.GeetChheckk()CByyteAArraay hhexddataa;innt llen=Strringg2Heex(mm_sttrTXXDatta,hhexddataa); /此此处返回回的leen可以以用于计计算发送送了多少少个十六六进制数数m_cctrllCommm.SSetOOu

19、tpput(COlleVaariaant(hexxdatta); /发送送十六进进制数据据elssem_cctrllCommm.SSetOOutpput(COlleVaariaant(m_sstrTTXDaata);/发送送ASCCII字字符数据据现在,你你先将串串口线接接好并打打开串口口调试助助手V22.1,选选上以十十六制显显示,设设置好相相应串口口,然后后运行我我们这个个程序,在在发送框框中输入入00 01 02 03 A1 CC等等十六进进制字符符,并选选上以十十六进制制发送,单单击手动动发送,在在串口调调试助手手的接收收框中应应该可以以看到000 001 002 003 AA1 CC

20、C了。9.在接接收框中中以十六六进制显显示 这就容容易多了了:在主对对话框中中加入一一个复选选接钮,IIDC_CHEECK_HEXXDISSPLAAY CCapttionn: 十十六进制制显示,再再利用CClasssWiizarrd为其其添加控控制变量量:m_ctrrlHeexDiiapllay。 然后修修改CSSCommmTeestDDlg:OnnCommm()函数:voidd CSSCommmTeestDDlg:OnnCommm()/ TODDO: Addd yoour conntrool nnotiificcatiion hanndleer ccodee heereVVARIIANTT

21、vaariaant_inpp;COOleSSafeeArrray saffearrrayy_innp;LLONGG leen,kk;BYYTE rxddataa20048; /设置置BYTTE数组组 Ann 8-bitt innteggertthatt iss noot ssignned.CSttrinng sstrttempp;iff(m_ctrrlCoomm.GettCommmEvventt()=2) /事件值值为2表表示接收收缓冲区区内有字字符varriannt_iinp=m_cctrllCommm.GGetIInpuut(); /读缓缓冲区ssafeearrray_inpp=vaari

22、aant_inpp; /VAARIAANT型型变量转转换为CColeeSaffeArrrayy型变量量lenn=saafeaarraay_iinp.GettOneeDimmSizze(); /得到到有效数数据长度度forr(k=0;kkleen;kk+)saffearrrayy_innp.GGetEElemmentt(&kk,rxxdatta+kk);/转换换为BYYTE型型数组ffor(k=00;klenn;k+) /将将数组转转换为CCstrringg型变量量BYTTE bbt=*(chhar*)(rrxdaata+k); /字符型型if(m_cctrllHexxDissplaay.GGe

23、tCChecck()sttrteemp.Forrmatt(%02XX ,bt); /将字字符以十十六进制制方式送送入临时时变量sstrttempp存放,注注意这里里加入一一个空隔隔elssestrrtemmp.FFormmat(%cc,bbt); /将字符符送入临临时变量量strrtemmp存放放m_sstrRRXDaata+=sttrteemp; /加入接接收编辑辑框对应应字符串串UpddateeDatta(FFALSSE); /更新编编辑框内内容测试:在在串口调调试助手手发送框框中输入入00 01 02 03 A1 CC等等十六进进制字符符,并选选上以十十六进制制发送,单单击手动动发送,在

24、在本程序序运行后后选上以以十六进进制显示示,在串串口调试试助手中中单击手手动发送送或自动动发送,则则在本程程序的接接收框中中应该可可以看到到00 01 02 03 A1 CC了了。10.如如何设置置自动发发送最简单单的设定定自动发发送周期期是用SSetTTimeer()函数,这这在数据据采集中中很有用用,在控控制中指指令的传传送也可可能用到到定时发发送。 方法是是:在CClasssWiizarrd中选选上MeessaageMMap卡卡,然后后在Obbjeccts IDss选中CCSCoommTTesttDlgg类,再再在Meessaagess框中选选上WMM_TIIMERR消息,单单击ADDD

25、_FFUNCCTIOON加入入voiid CCSCoommTTesttDlgg:OOnTiimerr(UIINT nIDDEveent) 函数数,这个个函数是是放入“时间到到”后要处处理的代代码:voidd CSSCommmTeestDDlg:OnnTimmer(UINNT nnIDEEvennt)/ TODDO: Addd yoour messsagge hhanddlerr coode herre aand/or calll ddefaaulttOnBButttonMManuualssendd();CDiialoog:OnTTimeer(nnIDEEvennt);再在在主主对话框框中加入入

26、一个复复选接钮钮,IDD为IDDC_CCHECCK_AAUTOOSENND CCapttionn: 自自动发送送(周期期1秒),再再利用CClasssWiizarrd为其其添加BBN_CCLICCK消息息处理函函数vooid CSCCommmTesstDllg:OnCChecckAuutossendd():voidd CSSCommmTeestDDlg:OnnCheeckAAutoosennd()/ TODDO: Addd yoour conntrool nnotiificcatiion hanndleer ccodee heeremm_bAAutooSennd=!m_bbAuttoSeend

27、;if(m_bbAuttoSeend)SettTimmer(1,110000,NUULL);/时间为为10000毫秒秒elsseKilllTiimerr(1); /取消定定时其中:mm_bAAutooSennd为BBOOLL型变量量,在CCLASSSVIIEW中中为CSSCommmTeestDDlg类类加入,并并在构造造函数中中初始化化: mm_bAAutooSenn=FAALSEE;现在在可以运运行程序序测试了了。11.什什么是VVARIIANTT数据类类型?如如何使用用VARRIANNT数据据类型? 不知知如何使使用VAARIAANT数数据类型型, 有有不少朋朋友对VVARIIANTT这个

28、新新的数据据类型大大感头疼疼。SeetOuutpuut()函数中中 需要要的VAARIAANT参参数还可可以使用用COlleVaariaant类类的构造造函数简简单生成成,现在在GettInpput()函数数的返回回值也成成了VAARIAANT类类型,那那么如何何从返回回的值中中提取有有用的内内容。 VARRIANNT及由由之而派派生出的的COlleVaariaant类类主要用用于在OOLE自自动化中中传递数数据。实实际上VVARIIANTT也只不不过是一一个新定定义的结结构罢了了,它的的主要成成员包括括一个联联合体及及一个变变量。该该联合体体由各种种类型的的数据成成员构成成, 而而该变量量则

29、用来来指明联联合体中中目前起起作用的的数据类类型。我我们所关关心的接接收到的的数据就就存储在在该联合合体的某某个数据据成员中中。该联联合体中中包含的的数据类类型很多多,从一一些简单单的变量量到非常常复杂的的数组和和指针。由由于通过过串口接接收到的的内容常常常是一一个字节节串,我我们将使使用其中中的某个个数组或或指针来来访问接接收到的的数据。这这里推荐荐给大家家的是指指向一个个SAFFEARRRAYY(COOleSSafeeArrray)类类型变量量。新的的数据类类型SAAFEAARRAAY正如如其名字字一样,是是一个“安全数数组”,它能能根据系系统环境境自动调调整其116位或或32 位的定定义

30、,并并且不会会被OLLE改变变(某些些类型如如BSTTR在116位或或32位位应用程程序间传传递时会会被OLLE翻译译从而破破坏其中中的二进进制数据据)。大大家无须须了解SSAFEEARRRAY的的具体定定义,只只要知道道它是另另外一个个结构,其其中包含含一个 (vooid *)类类型的指指针pvvDatta,其其指向的的内存就就是存放放有用数数据的地地方。 简而言言之,从从GettInpput()函数数返回的的VARRIANNT类型型变量中中,找出出parrrayy 指针针,再从从该指针针指向的的SAFFEARRRAYY变量中中找出ppvDaata指指针,就就可以向向访问数数组一样样取得所所

31、接收到到的数据据了。具具体应用用请参见见voiid CCSCoommTTesttDlgg:OOnCoomm()函数数。 大概我我现在也也说不清清这个问问题,我我自己从从第一次次接触这这个东西西,到现现在还是是给别人人讲不清清。另:二进进制收发发设置请请参考MMSCoomm控控件说明明。MSCoomm控控件使用用详解龚建伟:这篇东东西来不不及好好好整理,因因有朋友友经常提提及,先先放在这这里,如如果有必必要,再再详细理理顺一下下,更为为详细的的信息请请去看MMSDNN。摘要:本本文详细细介绍了了MSCCommm控件在在串口编编程中使使用。目 次MSSCommm控件件两种处处理通讯讯的方式式Com

32、mmPoort属属性RTThreeshoold 属性CTTSHooldiing 属性SSThrreshholdd 属性性CDHHolddingg 属性性DSRRHolldinng 属属性Seettiingss 属性性InpputLLen 属性EOOFEnnablle 属属性Haandsshakke 常常数OnnCommm 常常数InnputtModde 常常数错误误消息 MSSCommm 控控件通过过串行端端口传输输和接收收数据,为为应用程程序提供供串行通通讯功能能。MSSCommm控件件在串口口编程时时非常方方便,程程序员不不必去花花时间去去了解较较为复杂杂的APPI函数数,而且且在VCC、

33、VBB、Deelphhi等语语言中均均可使用用。Miccrossoftt Coommuuniccatiionss Coontrrol(以以下简称称MSCCommm)是MMicrrosooft公公司提供供的简化化Winndowws下串串行通信信编程的的ActtiveeX控件件,它为为应用程程序提供供了通过过串行接接口收发发数据的的简便方方法。具具体的来来说,它它提供了了两种处处理通信信问题的的方法:一是事事件驱动动(Evventtdrriveen)方方法,一一是查询询法。1.MSSCommm控件件两种处处理通讯讯的方式式MSCoomm控控件提供供下列两两种处理理通讯的的方式:事件驱驱动方式式和查

34、询询方式。1.1 事件驱动方式事件驱动动通讯是是处理串串行端口口交互作作用的一一种非常常有效的的方法。在在许多情情况下,在在事件发发生时需需要得到到通知,例例如,在在串口接接收缓冲冲区中有有字符,或或者 CCarrrierr Deetecct (CD) 或 Reqquesst TTo SSendd (RRTS) 线上上一个字字符到达达或一个个变化发发生时。在在这些情情况下,可可以利用用 MSSCommm 控控件的 OnCCommm 事件件捕获并并处理这这些通讯讯事件。OOnCoomm 事件还还可以检检查和处处理通讯讯错误。所所有通讯讯事件和和通讯错错误的列列表,参参阅 CCommmEveent

35、 属性。在在编程过过程中,就就可以在在OnCCommm事件处处理函数数中加入入自己的的处理代代码。这这种方法法的优点点是程序序响应及及时,可可靠性高高。每个个MSCCommm 控件件对应着着一个串串行端口口。如果果应用程程序需要要访问多多个串行行端口,必必须使用用多个 MSCCommm 控件件。1.2 查询方方式查询方式式实质上上还是事事件驱动动,但在在有些情情况下,这这种方式式显得更更为便捷捷。在程程序的每每个关键键功能之之后,可可以通过过检查 CommmEvventt 属性性的值来来查询事事件和错错误。如如果应用用程序较较小,并并且是自自保持的的,这种种方法可可能是更更可取的的。例如如,如

36、果果写一个个简单的的电话拨拨号程序序,则没没有必要要对每接接收一个个字符都都产生事事件,因因为唯一一等待接接收的字字符是调调制解调调器的“确确定”响响应。2.MSSCommm 控控件的常常用属性性MSCCommm 控件件有很多多重要的的属性,但但首先必必须熟悉悉几个属属性。CCommmPorrt 设设置并返返回通讯讯端口号号。SSetttinggs 以以字符串串的形式式设置并并返回波波特率、奇奇偶校验验、数据据位、停停止位。PortOpen 设置并返回通讯端口的状态。也可以打开和关闭端口。Input 从接收缓冲区返回和删除字符。Output 向传输缓冲区写一个字符串。下面分别描述:CommPo

37、rt属性设置并返回通讯端口号。语法 object.CommPortvalue (value 一整型值,说明端口号。)说明 在设计时,value 可以设置成从 1 到 16 的任何数(缺省值为 1)。但是如果用 PortOpen 属性打开一个并不存在的端口时,MSComm 控件会产生错误 68(设备无效)。注意:必须在打开端口之前设置 CommPort 属性。RThreshold 属性:在 MSComm 控件设置 CommEvent 属性为 comEvReceive 并产生 OnComm 之前,设置并返回的要接收的字符数。语法 object.Rthreshold = value (value 整

38、型表达式,说明在产生 OnComm 事件之前要接收的字符数。 )说明 当接收字符后,若 Rthreshold 属性设置为 0(缺省值)则不产生 OnComm 事件。例如,设置 Rthreshold 为 1,接收缓冲区收到每一个字符都会使 MSComm 控件产生 OnComm 事件。CTSHolding 属性:确定是否可通过查询 Clear To Send (CTS) 线的状态发送数据。Clear To Send 是调制解调器发送到相联计算机的信号,指示传输可以进行。该属性在设计时无效,在运行时为只读。语法: object.CTSHolding(Boolean)Mscomm 控件的 CTSHol

39、ding 属性设置值:True Clear To Send 线为高电平。False Clear To Send 线为低电平。说明:如果 Clear To Send 线为低电平 (CTSHolding = False) 并且超时时,MSComm 控件设置 CommEvent 属性为 comEventCTSTO (Clear To Send Timeout) 并产生 OnComm 事件。Clear To Send 线用于 RTS/CTS (Request To Send/Clear To Send) 硬件握手。如果需要确定 Clear To Send 线的状态,CTSHolding 属性给出一种手

40、工查询的方法。详细信息 有关握手协议,请参阅 Handshaking 属性。SThreshold 属性: MSComm 控件设置 CommEvent 属性为 comEvSend 并产生 OnComm 事件之前,设置并返回传输缓冲区中允许的最小字符数。语法 object.SThreshold = value value 整形表达式,代表在 OnComm 事件产生之前在传输缓冲区中的最小字符数。说明:若设置 Sthreshold 属性为 0(缺省值),数据传输事件不会产生 OnComm 事件。若设置 Sthreshold 属性为 1,当传输缓冲区完全空时,MSComm 控件产生 OnComm 事件。如果在传输缓冲区中的字符数小于 value,CommEvent 属性设置为 comEvSend,并产生 OnComm 事件。comEvSend 事件仅当字符数与 Sthreshold 交叉时被激活一次。例如,如果 Sthreshold 等于 5,仅当在输出队列中字符数从 5 降到 4 时,comEvSend 才发

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文献 > 管理制度

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁