串口操作API 详解

串口操作API 详解

ID:38647637

大小:124.00 KB

页数:25页

时间:2019-06-17

串口操作API 详解_第1页
串口操作API 详解_第2页
串口操作API 详解_第3页
串口操作API 详解_第4页
串口操作API 详解_第5页
资源描述:

《串口操作API 详解》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、++串口API应用 [嵌入式]发布时间:2008-06-1412:50:15 /***********************************************************************************************          initialSerial功能:串口初始化参数:无返回:无***********************************************************************************************/voidinitialS

2、erial()  //串口初始化{ charszComParams[50]; DCBdcb; char*m_com; char*m_baud; char*m_jiaoyan;   m_com="Com1"; m_baud="1200"; m_jiaoyan="E"; COMMTIMEOUTSCommTimeOuts; m_hIDComDev=NULL; m_hIDComDev=CreateFile(m_com,GENERIC_READ

3、GENERIC_WRITE,0,NULL,         OPEN_EXISTING,FILE_ATTRIBUTE_NOR

4、MAL,NULL); //打开串口 if(m_hIDComDev==INVALID_HANDLE_VALUE) {  AfxMessageBox("打开串口错误0,请检查!");  gotoendd; } if(m_hIDComDev==(HANDLE)-1) {  AfxMessageBox("打开串口错误,请检查!");  gotoendd; } SetCommTimeouts(m_hIDComDev,&CommTimeOuts); //串口超时配置 CommTimeOuts.ReadIntervalTimeout="0xFFFFFFFF"; CommT

5、imeOuts.ReadTotalTimeoutMultiplier=0; CommTimeOuts.ReadTotalTimeoutConstant=5000; CommTimeOuts.WriteTotalTimeoutMultiplier=0; CommTimeOuts.WriteTotalTimeoutConstant=5000; PurgeComm(m_hIDComDev,PURGE_TXABORT

6、PURGE_RXABORT

7、PURGE_TXCLEAR

8、PURGE_RXCLEAR); m_com="Com1:38400,E,8,1"; wspri

9、ntf(szComParams,m_com);  //设置串口参数 dcb.DCBlength=sizeof(DCB); GetCommState(m_hIDComDev,&dcb);// intbaud; baud=atoi(m_baud); dcb.BaudRate=baud;  //设置波特率  dcb.ByteSize=8;//设置校验字节 if((!SetCommState(m_hIDComDev,&dcb))

10、

11、(!SetupComm(m_hIDComDev,10000,10000)))//设置串口和收发缓冲器的大小   {  DWORDdwEr

12、ror=GetLastError();  CloseHandle(m_hIDComDev); } PurgeComm(m_hIDComDev,PURGE_RXCLEAR

13、PURGE_TXCLEAR

14、PURGE_TXABORT

15、PURGE_RXABORT);//清收发缓冲器endd:;}/************************************************************************************************           SendData功能:发送数据给串口参数: buff发送的数据

16、  send_length  长度返回: 成功1 失败 0************************************************************************************************/DWORDSendData(unsignedcharbuff[],intsend_length)   //发送数据{   intt; DWORDdwBytesWritten; if(!WriteFile(m_hIDComDev,buff,send_length,&dwBytesWritten,NULL)) { 

17、 return0; } for(t=0;t

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。