问题描述如下: MFC基于Dialog,编写MSComm串口程序。 主对话框 A 有一个按钮,点击该按钮时弹出另一个对 5

问题描述如下:MFC基于Dialog,编写MSComm串口程序。主对话框A有一个按钮,点击该按钮时弹出另一个对话框B,在B对话框中处理串口收发数据,发送数据没问题,但无法... 问题描述如下:

MFC基于Dialog,编写MSComm串口程序。
主对话框 A 有一个按钮,点击该按钮时弹出另一个对话框B,在B对话框中处理串口收发数据,发送数据没问题,但无法接收数据,不是语法的错,我不知道,是不是只能在主对话框中添加OnCommMSmComm()函数才能接收数据?

我试过在主对话框添加串口程序,在B对话框中调用A中的串口程序收发数据,但无法实现,我只好把串口程序移到B对话框中,但出现只能发送数据不能接收数据。

串口接收到的数据只能传递到主对话框还是需要做其他的改动???

请教高手帮帮忙,谢谢了。

在线等。
展开
 我来答
lokily2010
2011-04-11 · TA获得超过284个赞
知道小有建树答主
回答量:776
采纳率:100%
帮助的人:578万
展开全部
2个办法
1,在b窗体上进行打开串口,发送数据、接收显示等一系列动作,a就是个启动界面,跟任何业务逻辑没有关系。
2.如果目前是a负责打开串口,发送,接收,但要在b上显示,那a接收到数据后,通过a向b发送自定义消息,b来显示,或者a调用b的某个函数,把值传过去显示。
因为如果a窗体用控件对串口进行了打开,那么就是a负责相应消息循环,跟b没有关系了。建议你用一个窗体负责打开,发送/接收 ,关闭等一系列动作,否则,还得检查窗体状态,更新显示,发送消息等等,浪费功夫,如果是学习,另当别论。
追问
您好,感谢您的回答。 我对程序做了一些改动,在a对话框中加入了串口控件com_a负责a对话框收发数据;通过a的一个按钮弹出b,在b对话框中再创建控件com_b负责b对话框的收发数(com_a和com_b不同时使用);使用结果为,a中的com_a,收发数据都没问题,但在b中能发送数据不能接收数据,串口收到数据后没触发com_b的OnCommCMSComm()消息响应函数,请问对com_b的响应函数该怎么写?写在b对话框函数的什么地方?感谢您帮忙,谢谢。
追答
你b窗体的com_b的RThresHold默认设置是0吗?至少是1
萍水e相逢
2011-04-11 · TA获得超过3万个赞
知道大有可为答主
回答量:5.9万
采纳率:46%
帮助的人:1.4亿
展开全部
推荐 看书 吧
Visual C++_Turbo C串口通信编程实践

循序渐进 由浅入深
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式