5452|6

123

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

如何打开串口设备? [复制链接]

我在PC104下做一个串口的调试程序,这个程序是从PC上移植过来的。我创建平台时添加了Serial Port Support 选项,首先请问是不是加了Serial Port Support就可以使用串口了那?如果是我打不开设备那?如果不是需要添加那些支持那?那位有CE下串口的例子那发一份看看好吗?谢谢!

最新回复

CreateFile(TEXT("COM1:"),...  详情 回复 发表于 2008-7-18 09:30
点赞 关注

回复
举报

74

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
BOOL CSincoSecond::OpenComm(const TCHAR* pPort)
{
        DCB dcb;                // 串口控制块
        COMMTIMEOUTS timeouts = {        // 串口超时控制参数
                100,                                        // 读字符间隔超时时间: 100 ms
                1,                                        // 读操作时每字符的时间: 1 ms (n个字符总共为n ms)
                500,                                // 基本的(额外的)读超时时间: 500 ms
                1,                                        // 写操作时每字符的时间: 1 ms (n个字符总共为n ms)
                100
        };                                // 基本的(额外的)写超时时间: 100 ms
               
        hComm = CreateFile(pPort,        // 串口名称或设备路径
                GENERIC_READ | GENERIC_WRITE,        // 读写方式
                0,                                // 共享方式:独占
                NULL,                        // 默认的安全描述符
                OPEN_EXISTING,        // 创建方式
                0,                                // 不需设置文件属性
                NULL);                        // 不需参照模板文件
               
        if(hComm == INVALID_HANDLE_VALUE) return FALSE;                // 打开串口失败
               
        GetCommState(hComm, &dcb);                // 取DCB
               
        dcb.BaudRate = 115200;
        dcb.ByteSize = 8;
        dcb.Parity = NOPARITY;
        dcb.StopBits = ONESTOPBIT;
               
        SetCommState(hComm, &dcb);                // 设置DCB
               
        SetupComm(hComm, 4096, 4096);        // 设置输入输出缓冲区大小
               
        SetCommTimeouts(hComm, &timeouts);        // 设置超时

        ::AfxBeginThread(GetCommData, NULL);//启动串口读线程
        ::AfxBeginThread(SendDataThrd, NULL);//启动发送数据线程
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
楼上正解
 
 
 

回复

55

帖子

0

TA的资源

一粒金砂(初级)

4
 
我有串口通讯的例子,写过多种语言的串口调试助手,找我!!QQ:619121698
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

5
 
在CE下,打开串口要想1楼那样,不要用MSComm控件,不知道你用那种方法打开串口,如果问题还没解决,就把代码贴出来,让大家帮你解决
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

6
 
CE下用不了MSCOMM控件,只能用READFILE,WIRTEFILE这样的API操作.
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

7
 
CreateFile(TEXT("COM1:"),...
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

 
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
快速回复 返回顶部 返回列表