串口控件做的串口通信,最开始都可以收发并且可以显示,突然接收编辑框里不能显示接收到的数据了,什么也没有改动就突然这样了

halswls 2015-06-01 03:34:56
如题,VC++6.0一开始用串口控件做的串口收发程序都没有问题,可以收发并且显示在编辑框里,突然不知道怎么了接收数据就无法在接收编辑框里显示了,没有改动什么东西啊,很奇怪,求大神帮帮忙!看到网上有说没有添加映射BEGIN_EVENTSINK_MAP(CCharTerminalDlg, CDialog)
ON_EVENT(CCharTerminalDlg, ID_COMMCTRL, 1, OnCommMscomm, VTS_NONE)
END_EVENTSINK_MAP的,我看了看程序里都有哪些映射啊
...全文
203 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiqiang01234 2015-06-02
  • 打赏
  • 举报
回复
引用 4 楼 halswls 的回复:
谢谢大家,最后发现问题是端口驱动的问题,把驱动卸载了重装就可以了,但是很奇怪的是为什么之前我用程序收发没接收,但是用串口调试助手却可以接收。难道和串口助手是用API做的有关系?不太明白
用的是usb转串口的驱动?
halswls 2015-06-02
  • 打赏
  • 举报
回复
谢谢大家,最后发现问题是端口驱动的问题,把驱动卸载了重装就可以了,但是很奇怪的是为什么之前我用程序收发没接收,但是用串口调试助手却可以接收。难道和串口助手是用API做的有关系?不太明白
halswls 2015-06-02
  • 打赏
  • 举报
回复
引用 3 楼 tajon1226 的回复:
楼主可以看下win32的串口编程。 感觉串口编程一开始挺难理解的。
你指的是win32 API串口编程吗? 现在碰到了一个问题是,假如我写了一个函数,在这个函数里,先发送数据,如果串口接收的数据不是空的就进行别的操作,比如说: func { send(); if(m_strRxData!="") {......} ....} 但是运行完函数发现函数并不会执行if后面的语句,好像if判断的时候串口消息响应函数还没有进行完。想问一下有什么好的建议吗?谢谢
halswls 2015-06-02
  • 打赏
  • 举报
回复
引用 5 楼 jiqiang01234 的回复:
[quote=引用 4 楼 halswls 的回复:] 谢谢大家,最后发现问题是端口驱动的问题,把驱动卸载了重装就可以了,但是很奇怪的是为什么之前我用程序收发没接收,但是用串口调试助手却可以接收。难道和串口助手是用API做的有关系?不太明白
用的是usb转串口的驱动?[/quote] 是的
走好每一步 2015-06-01
  • 打赏
  • 举报
回复
楼主可以看下win32的串口编程。 感觉串口编程一开始挺难理解的。
jiqiang01234 2015-06-01
  • 打赏
  • 举报
回复
增加TRACE宏,在调试状态下看看有没有数据接收到
失散糖 2015-06-01
  • 打赏
  • 举报
回复
1°用现成的串口调试助手看看能不能收发成 2°用printf之类的东西把串口数据输出到控制台窗口,看能不能成

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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