3509|6

84

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

如何初始化串口 [复制链接]

如题,

最新回复

去网上找一个VC版的串口程序.注意一下个别参数的设定.看MSDN就够了  详情 回复 发表于 2007-3-7 09:29
点赞 关注

回复
举报

66

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
开始置位
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
baud rate, parity
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

4
 
        if (!SetupComm (hCommDevice, COMM_PORT_BUFSIZE, COMM_PORT_BUFSIZE))
    {
                AfxMessageBox(L"SetupComm Failed!");  
        return FALSE;
    }
    //set comm port information
    m_dcb.DCBlength = sizeof(DCB);
   
    GetCommState (hCommDevice, &m_dcb);
    m_dcb.BaudRate = 19200;
    m_dcb.ByteSize = 8;
    m_dcb.StopBits = ONESTOPBIT;
    m_dcb.Parity   = NOPARITY;
    m_dcb.fBinary  = TRUE;
   
    m_dcb.fOutxDsrFlow  = FALSE;
    m_dcb.fDtrControl   = DTR_CONTROL_ENABLE;
   
    m_dcb.fRtsControl   = (m_use_flow_ctrl) ? RTS_CONTROL_HANDSHAKE : RTS_CONTROL_ENABLE;
    m_dcb.fOutxCtsFlow  = m_use_flow_ctrl;
   
    m_dcb.fOutX         = FALSE;
    m_dcb.fInX          = FALSE;
    m_dcb.fAbortOnError = TRUE;
   
    m_dcb.XonLim    = COMM_PORT_BUFSIZE * 2 / 3;
    m_dcb.XoffLim   = COMM_PORT_BUFSIZE / 3;
   
    if (!SetCommState (hCommDevice, &m_dcb))
    {         
                DWORD dwerror = GetLastError();
                CString str;
                str.Format(L"%d",dwerror);
                MessageBox(str);
                AfxMessageBox(L"SetCommState Failed!");
        return FALSE;
    }
    //set comm port event
    if (!SetCommMask (hCommDevice, (DWORD)(EV_RXCHAR | EV_CTS | EV_DSR | EV_RING | EV_RLSD)))
    {   
                AfxMessageBox(L"SetCommMask  Failed!");
        return FALSE;
    }
   
        //set comm port read/write timeout
    COMMTIMEOUTS cto;
    memset (&cto, 0, sizeof (COMMTIMEOUTS));
    cto.ReadIntervalTimeout = MAXDWORD;
   
    if(!SetCommTimeouts (hCommDevice, &cto))
    {
                AfxMessageBox(L"SetCommTimeouts Failed!");  
                return FALSE;   
    }

return TRUE;
供参考,有些参数可能会不一样。
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

5
 
如果有系统支持,可以查阅文档找到相关的API

如果是像单片机这种简单的小东西,细看一下数据手册...
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

6
 
用.net也可以这样写吗?
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

7
 
去网上找一个VC版的串口程序.注意一下个别参数的设定.看MSDN就够了
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表