ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:1.02MB ,
资源ID:15065954      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/15065954.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于MFC的Flash和单片机的通讯Word文档下载推荐.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于MFC的Flash和单片机的通讯Word文档下载推荐.docx

1、m_FlashPlayer。可再次在Flash控件上点右键,然后选择“属性”,将其ID改为IDC_SHOCKWAVEFLASH。第四步:使用成员函数LoadMovie和Play来导入并播放动画。在MFCFlashDlg.cpp文件中,找到CMFCFlashDlg:OnInitDialog()函数,在“return TRUE”之前添加代码: CString str = _T(E:VSFlashmediatest.swf); m_FlashPlayer.LoadMovie (0, str); m_FlashPlayer. Play ();其中m_FlashPlayer.LoadMovie(0, s

2、tr)用来将动画导入程序中,str为要播放的flash路径,要用绝对路径(注意路径用双斜杠“”隔开); m_FlashPlayer. Play ()开始播放动画。三、实现MFC与Flash的通信1、Flash通过FSCommand消息调用MFC添加消息处理函数。 在Flash控件上点右键,然后选择“添加事件处理程序”,在类列表选择“CMFCFlashDlg”,消息类型选择“FSCommand”,则函数处理程序名称自动为“FSCommandShockwaveflash”。它的形式大概是这样子的:void CMFCFlashDlg:OnFSCommandShockwaveflash(LPCTSTR

3、 command, LPCTSTR args) ;函数有两个参数,就是flash的Action Script中FSCommand语句中的两个参数。其实并不一定两个参数都用到,flash脚本中可以就使用一个参数,这样这边的函数就只要对第一个参数进行处理就行了。编写消息处理代码。在刚添加的FSCommand消息处理函数中,对两个参数进行处理。其实就是做字符串比较的操作,根据是什么字符串来判断用户进行了什么操作。大概就是这样子的:void CPlayFlashDlg:OnFSCommandShockwaveflash1(LPCTSTR command, LPCTSTR args)/ TODO: Ad

4、d your control notification handler code hereif( 0 = strcmp(command,”bt”) )if( 0 = strcmp(args,”enter”) )MessageBox(“欢迎进入系统!”);else if( 0 = strcmp(command,”quit”) )MessageBox(“您选择了退出!CDialog:OnCancel();这只是最简单的处理形式,当然你可以在flash中发送复杂的字符串,在这边就要进行更多的处理了。2、MFC通过CallFunction函数调用FlashFlash中ExternalInterface

5、.addCallback用处理。在FLASH中,要用ExternalInterface.addCallback把能被外部调用的函数注册一下,例如: ExternalInterface.addCallback(setAlt, setAlt);function setAlt (para:String = 3150) alt.text = para; /alt为swf文件中的一个动态文本MFC中使用CallFunction函数传入参数。想让MFC主动往flash传内容并且让flash响应,用控件的CallFunction方法。在MFC中,调用CallFunction方法,传入一个比较复杂的字符串,描

6、述了要调用的函数的名称、参数等等,以XML的形式呈现。详情参考FLASH帮助的“外部 API 的 XML 格式”一文。此处CallFunction传递的参数为XML格式,如下: CString temp = _T( string3500FT/arguments/invoke m_FlashPlayer.CallFunction(temp);第二部分 单片机与MFC的通讯1. 安装好VS2010,网上很多人说使用VC6.0的mscomm32.ocx控件,下载并注册,注册过程看上去还很复杂。我是使用VS2010自带的控件,因此没有这些过程,只需要安装好VS2010就行了。在Flash控件上继续添加

7、如下对话框控件: “打开串口”按钮,添加方法为从右侧“工具箱”拖放一个“Button”到对话框,并在右侧“属性”卡中修改“Caption”为“打开串口”,修改“ID”为“IDC_BUTTON_OPEN”。 “关闭串口”按钮,添加方法为从右侧“工具箱”拖放一个“Button”到对话框,并在右侧“属性”卡中修改“Caption”为“关闭串口”,修改“ID”为“IDC_BUTTON_CLOSE”。 “发送”按钮,添加方法为从右侧“工具箱”拖放一个“Button”到对话框,并在右侧“属性”卡中修改“Caption”为“发送”,修改“ID”为“IDC_BUTTON_SEND”。 “发送编辑框”。 “接受

8、编辑框”2.添加串口通信控件。在对话框上“右键”对话框右下角(默认在左上角)的电话图标就是串口控件。3.给控件添加变量在控件(电话图标)上“右键”命名为m_mscomm,点击完成,工程中会自动添加“mscomm.h”和“mscomm.cpp”两个文件。4.给两个编辑框添加成员变量 5.添加三个按钮的事件直接“双击”三个按钮,在CommTestDlg.cpp文件中会增加如下几个函数:voidCCommTestDlg:OnBnClickedButtonSend() / TODO: 在此添加控件通知处理程序代码 OnBnClickedButtonOpen() OnBnClickedButtonClo

9、se() 消息映射已经自动关联。6.添加串口控件的事件处理程序点击“添加编辑”即可,在CommTestDlg.cpp文件中会增加函数:OnCommMscomm1() 数据接收将在此函数中进行。7.打开串口及串口设置。void CCommTestDlg:if(m_mscomm.get_PortOpen() /如果串口是打开的,则行关闭串口 m_mscomm.put_PortOpen(FALSE);m_mscomm.put_CommPort(1); /选择COM1 m_mscomm.put_InBufferSize(1024); /接收缓冲区m_mscomm.put_OutBufferSize(1

10、024);/发送缓冲区m_mscomm.put_InputLen(0);/设置当前接收区数据长度为0,表示全部读取m_mscomm.put_InputMode(1);/以二进制方式读写数据m_mscomm.put_RThreshold(1);/接收缓冲区有1个及1个以上字符时,将引发接收数据的OnComm事件m_mscomm.put_Settings(_T(9600,n,8,1);/波特率9600无检验位,8个数据位,1个停止位if(!m_mscomm.get_PortOpen()/如果串口没有打开则打开 m_mscomm.put_PortOpen(TRUE);/打开串口 AfxMessage

11、Box(_T(串口1打开成功else m_mscomm.put_OutBufferCount(0);串口1打开失败8. 添加关闭串口按钮的消息响应函数m_mscomm.put_PortOpen(FALSE);/关闭串口AfxMessageBox(_T(串口1已关闭9. 添加发送按钮消息响应函数UpdateData(true); /读取编辑框内容m_mscomm.put_Output(COleVariant(m_EditSend);/发送数据m_EditSend.Empty(); /发送后清空输入框UpdateData(false); /更新编辑框内容10. 接收数据 在此处添加消息处理程序代码static unsig

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1