根据资料整理的串口通信库,封装成为了动态库,使用者只需要调用接口即可
使用实例如下:
//接受数据
void CSerialPortCommonLibDemoDlg::OnReceive()
{
char * str = NULL;
str = new char[256];
_port.readAllData(str); CString str1((char*)str);
}void CSerialPortCommonLibDemoDlg::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码
//获取所有串口
list<string> portsList = CSerialPortInfo::availablePorts();
{
_port.setPortName(portsList.front().c_str());
_port.setDebugModel(true);
_port.setDataBits(DataBits8);//数据位
_port.setBaudRate(BaudRate9600);//波特率
_port.setParity(itas109::Parity::ParityNone);//校验位
_port.setStopBits(StopOne);
_port.setReadBufferSize(1024);
}
_port.close();
_port.open();
if (_port.isOpened())
{
}
string str = "AT\r\n";
_port.writeData(str.c_str(), str.length());
_port.readReady.connect(this, &CSerialPortCommonLibDemoDlg::OnReceive);
}
测试的时候可以使用vspd工具