人体生理参数监测平台的开发之一:串口编程
首先需要注明的是本帖是“人体生理参数监测平台的开发”(链接:https://bbs.bccn.net/thread-366881-1-1.html)这个帖子的分帖之一。从“人体生理参数监测平台的开发”这篇帖子的总览可知,该监测平台与下位机的通信是通过串口实现的。关于串口的资料网上已经满天飞,已不再是什么难题,故而这里神略掉那些陈词难调的东西,直接贴出了串口主要的程序。
程序代码:
m_MsComm.SetCommPort(((CComboBox*)GetDlgItem(IDC_COMMPORT))->GetCurSel()+1);//设置串口号,COM1,COM3,COM3等等 m_MsComm.SetInBufferSize(1024);//设置接收缓冲区大小 m_MsComm.SetOutBufferSize(1024); //设置发送缓冲区大小 CString tmpStr,itemStr; int index=((CComboBox*)GetDlgItem(IDC_BAUD))->GetCurSel(); ((CComboBox*)GetDlgItem(IDC_BAUD))->GetLBText(index,tmpStr); switch(((CComboBox*)GetDlgItem(IDC_CHECKBIT))->GetCurSel()) { case 0:tmpStr=tmpStr+","+"n";break; case 1:tmpStr=tmpStr+","+"o";break; case 2:tmpStr=tmpStr+","+"e";break; default:tmpStr=tmpStr+","+"n";break; } index=((CComboBox*)GetDlgItem(IDC_DATABIT))->GetCurSel(); ((CComboBox*)GetDlgItem(IDC_DATABIT))->GetLBText(index,itemStr); tmpStr=tmpStr+","+itemStr; index=((CComboBox*)GetDlgItem(IDC_STOPBIT))->GetCurSel(); ((CComboBox*)GetDlgItem(IDC_STOPBIT))->GetLBText(index,itemStr); tmpStr=tmpStr+","+itemStr; m_MsComm.SetSettings(tmpStr);//设置串口参数,如波特率,停止位,数据位宽等 m_MsComm.SetPortOpen(TRUE);//打开串口
我的监测平台软件除了一个监测主平台之外,自己还开发了一个用于仿真下位机的软件,该软件模拟下位机给监测平台发送生理数据。该仿真软件也使用了串口,这里先看看界面:
再上源码,有需要的下载。
SimTest.rar
(67.22 KB)