全球旧事资料 分类
串口调试助手源程序及编程详细过程(二)
作者:龚建伟2001825可以任意转载,但必须注明作者和说明来自httproari
gwi
dbest163com,不得作为商用
目次:1建立项目2在项目中插入MSComm控件3利用ClassWizard定义CMSComm类控制变量4在对话框中添加控件5添加串口事件消息处理函数O
Comm6打开和设置串口参数7发送数据8发送十六进制字符9在接收框中以十六进制显示10如何设置自动发送11什么是VARIANT数据类型?如何使用VARIANT数据类型?
这是串口调试助手源程序及编程详细过程(一)的续篇,首先谢谢朋友们的支持与鼓励。这是更新后适合本文的源程序(2001825制作),如果还没有下载源程序,又对本文有兴趣,请立即下载(当然,你看完本文也可以自己做出来,这个程序是接着上一个做的,如果你没下载前面程序,则没必要再下载了,本程序全部包含)。
8发送十六进制字符在主对话框中加入一个复选接钮,ID为IDC_CHECK_HEXSENDCaptio
十六进制发送,再利用ClassWizard为其添加控制变量:m_ctrlHexSe
d;在ClassView中为SCommTestDlg类添加以下两个PUBLIC成员函数,并输入相应代码
由于这个转换函数的格式限制,在发送框中的十六制字符应该每两个字符之间插入一个空隔
f如:A123450B0029CByteArray是一个动态字节数组,可参看MSDN帮助i
tCSCommTestDlgStri
g2HexCStri
gstrCByteArrayse
ddatai
thexdatalowhexdatai
thexdatale
0i
tle
strGetLe
gthse
ddataSetSizele
2fori
ti0ile
charlstrhstrstriifhstrico
ti
ueiifile
breaklstrstrihexdataCo
vertHexCharhstrlowhexdataCo
vertHexCharlstrifhexdata16lowhexdata16breakelsehexdatahexdata16lowhexdataise
ddatahexdatale
charhexdatahexdatale
se
ddataSetSizehexdatale
retur
hexdatale
这是一个将字符转换为相应的十六进制值的函数好多C语言书上都可以找到功能:若是在0F之间的字符,则转换为相应的十六进制字符,否则返回1charCSCommTestDlgCo
vertHexCharcharchifch0ch9retur
ch0x30elseifchAchF
fretur
chA10elseifchachfretur
cha10elseretur
1
再将CSCommTestDlgO
Butto
Ma
ualse
d修改成以下形式:voidCSCommTestDlgO
Butto
Ma
ualse
dTODOAddyourco
trol
otificatio
ha
dlercodehereUpdateDataTRUE读取编辑框内容ifm_ctrlHexSe
dGetCheckCByteArrayhexdatai
tle
Stri
g2Hexm_strTXDatahexdata此处返回的le
可以用于计算发送了多少个十六进制数m_ctrlCommSetOutputCOleVaria
thexdata发送十六进制数据elsem_ctrlCommSetOutputCOleVaria
tm_strTXData发r
好听全球资料 返回顶部