WINCE 串口通信编程

平台486;
我想用mfc写一个基于对话框的串口通信程序;
用来采集单片机输出数据,该如何实现?
大狭们帮帮忙吧!!指点一下(给个例程也好);谢谢先!
---------------------------------------------------------------
   
1.打开串口:
hSer = CreateFile (TEXT ("COM1:"), GENERIC_READ | GENERIC_WRITE,
                   0, NULL, OPEN_EXISTING, 0, NULL);
2.从串口读数:
INT rc;
DWORD cBytes;
BYTE ch;
   
rc = ReadFile(hSer, &ch, 1, &cBytes, NULL);

3.写数到串口:
INT rc;
DWORD cBytes;
BYTE ch;
   
ch = TEXT ('a');
rc = WriteFile(hSer, &ch, 1, &cBytes, NULL);

4.通过串口事件来引发读操作
DWORD dwMask;
// Set mask and wait.
SetCommMask (hComPort, EV_RXCHAR | EV_ERR);
if (WaitCommEvent (hComPort, &dwMask, 0) {
   
    // Use the flags returned in dwMask to determine the reason
    // for returning.
    Switch (dwMask) {
    case EV_RXCHAR:
        //Read character.
        break;
    case EV_ERR:
        // Process error.
        break;
    }
}
有了这些,写个自己的串口程式就不难了.


  
   
http://community.csdn.net/Expert/topic/3849/3849602.xml?temp=1.021975E-02

  
 
   
大哥,我想用mfc编,怎么办?

  
   
MFC本身没有串口通讯类
我记得CSDN里有一个别人封装好了的MFC串口类,
我下了班帮你找一下,我现在要去上班了.
你也可以通过GOOGLE找一下.
或在这个版块里找一下以前的串口贴子.
会有收获的.快迟到了....

   
串口通讯类,于由代码较长,就给你贴个链接吧

http://www.msale.net/Forum/viewtopic.php?t=2875

  
    
谢谢jiess大哥一直以来的帮忙,还要工作挺辛苦的,不过明年就轮到我啦!
还想请大哥帮下忙,我已经把串口的类添加到我的工程文件中来了,
但我想把他从单片机读进来的数据绘图在另外一个对话框中,
该如何建立他们之间的联系啊?
谢谢!!

  
 
   
1.你可以建一个全局的缓冲区(数组或其它形式的内存块(比如堆)),将这个数组做为一个队列来用.
2.串口每收到一个绘图数据就将它放进缓冲区中.
3.对一个定时器或线程,将缓冲区的数据显示到窗体上.


   
大哥我先把分给你吧!小弟我真怕把你问烦,还望不要取笑!
我也是这样想的,也试了,不过一般是在读数据的时候定义一个数组,
这个应该不是全局的吧?在绘图对话框中用时,报错说没有定义,
说白了,我就是不知道怎么定义一个全局的数组?
如果大哥不介意的话给个email我把程序发过去,有时间帮小弟分析一下.
Anyhow,thank you very much!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值