小女子不才,第一次使用VC,但是现在需要实现对串口的控制,主要就是要能获得串口上显示的字符,判断为指定字符时,进行下一步操作,因为没有用过VC,所以程序部分全部是拿纯C编写的,但是VC里面不支持C中的对串口的控制函数"bioscom()" ,所以只有到这里向各位大虾求救了!!
不知道能不能得到具体完整的实现代码??谢谢先了!!!
(波特率9600,无校验,1位停止位,8位数据位)
在线等回答哈.................
不知道能不能得到具体完整的实现代码??谢谢先了!!!
(波特率9600,无校验,1位停止位,8位数据位)
在线等回答哈.................
m_hComFile = CreateFile("COM1", GENERIC_READ|GENERIC_WRITE,
0,
NULL,
OPEN_EXISTING,
0,
NULL);
if(m_hComFile == INVALID_HANDLE_VALUE)
{
AfxMessageBox("´ò¿ªCOM1 ´íÎó!");
return 1;
}
if(0 == GetCommState(m_hComFile, &m_tDCB))
{
AfxMessageBox("²Ù×÷com²ÎÊýʧ°Ü");
m_dwLastError = GetLastError();
return 1;
} ///1λÆðʼλÈçºÎÉèÖã¿£¿£¿
m_tDCB.BaudRate=CBR_2400;
m_tDCB.Parity=1;
m_tDCB.ByteSize=8;
m_tDCB.StopBits=1;
m_tDCB.fBinary=1;
m_tDCB.fAbortOnError = 1;
if(0 == SetCommState(m_hComFile,&m_tDCB))
{
AfxMessageBox("²Ù×÷com²ÎÊýʧ°Ü");
m_dwLastError = GetLastError();
return 1;
} PurgeComm(m_hComFile, PURGE_TXCLEAR);
PurgeComm(m_hComFile, PURGE_RXCLEAR);
http://dev.csdn.net/develop/article/17/17787.shtm
既然C里面实现了,基本可以拿来就用。串口读写和文件读写是一样的,openfile,writefile,readfile好了。
里面有几个重要的函数是
CreateFile 打开串口
GetCommState 获取串口的状态
SetCommState 设置串口的状态。
还有
ReadFile 从串口都数据
WriteFile 向串口写数据
CloseFile 关闭串口Good Lucky!