| |
---|---|
(点击题目可以在互联网中搜索该题目的相关内容) 日期:2006-4-16 15:43:59 来源:本文摘自《PLC&FA》 作者: 点击: | |
1 引言
2 方案概述
3 上位机(PC)控制程序编程 上位机的控制程序的编写按照如下步骤进行: (1) 建立基于对话框的MFC应用程序; (2) 在对话框中插入MSComm控件; (3) 利用ClassWizard定义CMSComm类控制对象; (4) 在对话框中添加MSComm控件,并赋予变量; (5) 打开串口、设置参数:需要完成的任务是选择、打开串口,规定波特率,校验类型,数据位、停止位等一些控制信息; if(m_ctrlComm.GetPortOpen()) m_ctrlComm.SetPortOpen(FALSE); m_ctrlComm.SetCommPort(1); //选择com1 if( !m_ctrlComm.GetPortOpen()) m_ctrlComm.SetPortOpen(TRUE); //打开串口 else AfxMessageBox("cannot open serial port"); m_ctrlComm.SetSettings("9600,n,8,1"); //波特率9600,无校验,8个数据位,1个停止位 //在该处的设置要同下位机的通讯参数相匹配,一般根据下位机的具体情况设定 m_ctrlComm.SetInputMode(1); //1:表示以二进制方式检取数据 m_ctrlComm.SetRThreshold(1); //SetRThreshold(1); //参数1表示当串口接收缓冲区中有大于等于1个字符时将引发接收数据的OnComm事件 m_ctrlComm.SetInputLen(0); //设置当前接收区数据长度为0 m_ctrlComm.GetInput(); //先预读缓冲区以清除残留数据 (6) 添加串口事件消息处理函数OnComm。 这个函数是用来处理串口消息事件的,即每当串口接收到数据,就会产生一个串口接收数据缓冲区中有字符的消息事件,就会执行刚才添加的函数,在OnComm()函数中加入相应的处理代码就能实现自己想要的功能。
对控制数据进行存储操作,编程时给控制量赋初值即默认值,每次运行上位机控制程序时将控制数据读出并送给相应的控制单元,即使是第一次运行该程序,点击“运行”也能将控制数据从文件中取出并同步下达到下位机;以后每次更改控制数据时就将该控制数据进行保存,作为新的默认控制数据,以备以后启动设备时使用。 | |
上一篇: 轻负荷Ethernet最大延时的计算方法 下一篇: 通过滑触线进行ProfiBus通讯的系统设计 |