基于FLASH和串行通讯技术模拟训练器的设计与实现.docVIP

基于FLASH和串行通讯技术模拟训练器的设计与实现.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于FLASH和串行通讯技术模拟训练器的设计与实现.doc

基于FLASH和串行通讯技术模拟训练器的设计与实现   摘 要 介绍一种基于FLASH和串口通讯技术模拟训练器的实现方案,为开发模拟训练器提供了另一种新方法。   关键词 Flash技术;串口通讯;模拟训练器   中图分类号:TP273 文献标识码:A 文章编号:1671-7597(2014)09-0193-01   在现实工作中,开发模拟训练器,是实践教学的一个创新,在缺少真实设备的情况下,不仅可以节省大量的资源,还可以提高学生的学习热情,但如果采用常规开发方法,其实现难度较大。为此,我们采取了一种基于FLASH技术与串口通讯技术的新开发方法,再通过串口数据驱动技术设计完成了模拟训练器。实践表明,,该方法的可操作性较强,,设备的制造成本可大幅降低,模拟器的仿真程度逼真。   1 模拟训练器的硬件设计   1.1 串口数据通信   总线通信部分采用RS-485总线方式,完成数据采集部分与PC机通信。多块MCU与PC通信可以完成多个串口进行数据通信。   1.2 硬件操纵   对于模拟器的硬件操纵部分,我们以实际设备为标准从外观上进行了1:1的仿制,仿制设备(模拟训练器)的各电门、按钮、油门、手柄在不同位置将输出不同的通讯信号。各设备我们从生产厂定购实物再进行安装。   1.3 显示部分   显示部分包括各种仪表、电门、指示灯的显示。计算机(PC)机实时接受RS-485总线传输的数据,并对数据进行分析、鉴别、筛选和组合,根据各种数据的逻辑关系控制相应的计算机多功能显示器按实际工作情况进行显示。为了解决计算机屏幕尺寸不足的缺点,我们采取了对计算机显示屏进行拼接的技术方法。其显示画面与实际仪器的设备布局完全相同,整体画面我们用3DMAX建模后生成整体的JPG文件。   2 模拟训练器的软件设计   2.1 串行通信   MSComm事件驱动通讯是处理串行端口交互作用的一种非常有效的方法。在许多情况下,可以利用MSComm控件的OnComm事件捕获并处理这些通讯事件。每个使用的MSComm控件对应着一个串行端口。如果应用程序需要访问多个串行端口,必须使用多个MSComm控件。具体串行通信程序如下:   Private Sub MSComm1_OnComm()   Dim i%, Buf$   Select Case MSComm1.CommEvent    借着取代底下每一个 case 语句来处理每个事件   Case comEvCD CD 线的状态发生变化.   Case comEvCTS CTS 线的状态发生变化.   Case comEvDSR DSR 线的状态发生变化.   Case comEvRing Ring Indicator 变化.   Case comEvReceive 收到 RThreshold # of   Buf =   InByte = MSComm1.Input   For i = LBound(InByte) To UBound(InByte)   Buf = Buf + Hex(InByte(i))   Next i   If Buf Then   Text1.Text = Buf   SS = Buf   End If   Case comEvSend 传输缓冲区有 Sthreshold 个字符   End Select   End Sub …   2.2 数据驱动   利用VB软件中的ShockwaveFlash控件实现对预先做好的Flash动画进行加载。利用VB软件中的Timer控件对Text1.Text进行监听,从而触发各类事件,使模拟训练器主画面进行相应的动作。在此,主要利用FLASH动画加载技术来实现图片替代、图片旋转、声音加载与画面转换。我们将所有的事件放置于统一模块中,从而方便各类事件的调用。主要程序代码   如下:   Private Sub Timer1_Timer()   Select Case Text1.Text   Case 加载初始画面   Form1.Show   Form2.Visible = False   Case 10 按下开机按钮   Form1.Show   Form2.Visible = False   Case 20 按下设备打开按钮,默认为左转   Form1.Show   Form1.ShockwaveFlash1.Movie = App.Path \flash\左电压表旋转.swf   Form1.ShockwaveFlash1.Play   Form2.Text1.Text = 1   Form2.Text4.Tex

文档评论(0)

yingzhiguo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5243141323000000

1亿VIP精品文档

相关文档