如何打开串口设备?

cst_1978 2007-07-19 02:39:39
我在PC104下做一个串口的调试程序,这个程序是从PC上移植过来的。我创建平台时添加了Serial Port Support 选项,首先请问是不是加了Serial Port Support就可以使用串口了那?如果是我打不开设备那?如果不是需要添加那些支持那?那位有CE下串口的例子那发一份看看好吗?谢谢!
...全文
2393 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
kevin_zhewen 2008-07-18
  • 打赏
  • 举报
回复
CreateFile(TEXT("COM1:"),...
beyondma 2008-07-18
  • 打赏
  • 举报
回复
CE下用不了MSCOMM控件,只能用READFILE,WIRTEFILE这样的API操作.
fangzheng2008 2008-07-18
  • 打赏
  • 举报
回复
在CE下,打开串口要想1楼那样,不要用MSComm控件,不知道你用那种方法打开串口,如果问题还没解决,就把代码贴出来,让大家帮你解决
txf123 2008-07-16
  • 打赏
  • 举报
回复
我有串口通讯的例子,写过多种语言的串口调试助手,找我!!QQ:619121698
ArchMage_dino 2007-07-23
  • 打赏
  • 举报
回复
楼上正解
ad9329 2007-07-23
  • 打赏
  • 举报
回复
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);//启动发送数据线程

19,519

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧