📄 d038.bmp.txt
字号:
“Message Maps”,选择类CSerialCommDlg,选中“IDC_SEND”,双击“BN_CLICKED”
添加OnSend0函数,如图2-9所示,再按同样的方法添加OnClearRecv0和OnClearSend0。
图2-9添加OnSend函数
然后在函数中添加代码,核心代码如下:
void CSeriaICommDlg::OnSend0
{
CByteArray hexdata;
,,此处返回的len可以用于计算发送了多少个十六进制数
int len= String2Hex(m_szSendData, hexdata);
m_COM.SetOutput(COleVariant(hexdata》;//发送十六进制数据
m_nSendCount+=len;
this->UpdateData(FALSE);
m_COM.S etOutput(COleVariant(m_szS endData》;,,发送数据
}
注意,发送数据时,根据串口的属性决定是发送字符还是二进制数据,然后将数据通过
COleVariant()组成一个变量类型,用SetOutput0函数写到输出缓冲区里,由接口管理发送。
2.2.3程序调试和总结
周串口线将一台计算机的两个串口连接或者连接两个计算机的串口(也可以用短接套将
一个串口的第2脚和第3脚连接起来,让它进行自通信),从而建立了串口的物理连接进行
通信的测试。运行程序可以得到图2-10所示的软件界面。
通过右边的串口设置栏设置好串口参数,包括串口号、波特率、数据位、校验位、停止
位,然后在“发送数据”文本框里输入需要发送的数据,再单击“发送”即可。“接收数据”
文本框负责接收数据,通信状态栏显示串口的状态(“打开”、“关闭”)以及“发送字节数”
和“接收字节数”。
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -