基于MFC的飞思卡尔智能车上位机设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于MFC的飞思卡尔智能车上位机设计

众所周知,上位机在智能车调试中起着重要作用,尤其是通过无线串口,实现数据实时发送接收,极大方便了智能车调试。

作者以VC6.0为平台使用微软MFC,简单介绍串口上位机设计,抛砖引玉。

STEP1.新建MFC工程

STEP2.加入串口类

VC6.0进行串口开发主要有两种方式,一种是利用微软控件MScomm,一种是利用开源类CSerialPort。但是前者编译生成的程序在其他电脑上运行还要注册控件,略显麻烦。而后者属于对windows API封装,使用方便,兼容性强。本文重点介绍CSerialPort的使用。

在/serialport.html下载最新CSerialPort类,工程中添加.h 和.cpp文件,如下图。

在serialDlg.cpp和serialDlg.h中包含Cserialport头文件

同时在serialDlg.h中定义对象CSerialPort m_SerialPort; //CSerailPort类对象

STEP3. Cserialport必备函数

STEP4.窗口布局

设置成员变量(Ctrl+W ),四个编辑框对应四个UNIT成员变量

STEP5.串口初始化

OK,所有前期工作准备完成,开始串口操作

按钮“打开串口”,双击,创建消息函数void CSerialDlg::OnOpenserial() 实现串口初始化,代码如下

按钮“关闭串口”,双击,创建消息函数void CSerialDlg::OnCloseserial() 函数功能为进行串口初始化,代码如下

STEP6.串口数据发送

按钮“发送”,双击,创建消息函数,代码如下

STEP7.串口数据接收

手工建立WM_COMM_RXCHAR的消息映射处理函数OnComm() 首先在serialDlg.h中添加响应函数声明

在serialDlg.cpp中添加消息响应

At last,VC串口通讯程序基本功能,打开串口,关闭串口,接收数据,发送数据均以完成。在此基础上,你可以添加复选框,选择串口号,选择波特率,可以添加图片框,显示图像,可以利用mfc绘图功能绘制速度曲线,pwm曲线。Vc6.0虽然已经被更先进的工具取代,但是作为一代经典,其功能还是非常强大的。掌握了vc6.0 ,无论c#还是QT,上手还是很快的。

当然,如果你没有兴趣或者没有时间去为智能车做一个上位机,那么访问作者淘宝店,我已经做好了成品,经过几个版本的修正,基本成熟,欢迎访问/

相关文档
最新文档