加载中 ...
首页 > 新闻资讯 > 软件开发 正文

基于KEIL

2019-03-23 08:39:33 来源:沈阳软件公司 作者:沈阳软件开发

软件开发论文栏目提醒】:以下是网学会员为您推荐的软件开发论文-基于KEIL-AGSI接口的单片机虚拟实验室构建之软件开发论文论文,希望本篇文章对您学习有所资助。

  摘要:文章软件开发论文提出了一种基于uVisionKEIL的AGSI接口,使用VC++编写动态链接库,模拟单片机外围装备,以实现单片机虚拟实验室的建设方案,从而实验、实训课题在虚拟平台中实现,有用解决了资金和装备维护问题,并增强了学生自主学习单片机的便利性和时效性。
  要害词:AGSI;仿真实验室;单片机;动态链接库
  1.论文弁言
  现在,单片机因其功效强且可自界说,价钱低,可靠性高,抗滋扰能力强,使用利便天真,通用性强,在工控、智能仪表、通讯系统、信号处置惩罚、智能家电等领域都获得了普遍的应用,学习者逐年增添。作者使用盘算机软件的仿真手艺,在KEIL的AGSI接口基础上,开发DLL库,构建单片机虚拟实验室,针对高职院校单片机教学,乐成的解决了资金的限制,单片机装备更新快,学生自主学习时硬件缺乏等许多现实的问题和难题。
  2.解决方案
  为相识决传统单片机实验室存在的问题,并为学生自主学习提供更大的便利。基于AGSI接口使用VC++自行开发动态链接库,接纳纯软件的要领仿真按钮、LED、数码管、LCD、信号发生器以及其他自界说外设,无缝链接至uVision,实现利便的外设软件仿真和直观的界面问题。
  2.1仿真库的开发。下面将以学生学习时常用的赛马灯实训问题为例,开发直观的虚拟外设,先容怎样使用AGSI接口开发动态链接库。
  (1)汇海MSVisualC++,使用MFCAppWERP系统<a href=http://www.hvihi.com target=_blank class=infotextkey>沈阳<a href=http://www.hvihi.com target=_blank class=infotextkey>软件开发</a></a>,<a href=http://www.hvihi.com target=_blank class=infotextkey>沈阳<a href=http://www.hvihi.com target=_blank class=infotextkey>软件公司</a></a>izard(dll)新建Experiment工程。注重使用MFC的静态链接,否则无法正常事情。
  (2)在Experiment工程中添加头文件AGSI.h,增添AGSI的接口函数原型,在Experiment.h中添加SFR(特殊功效寄存器)、VTR(虚拟寄存器)的界说和接口函数原型。
  (3)在Experiment.cpp文件中添加外设初始化代码,包罗AGSI的建设(GetFunctionPointers),外设菜单入口及其对应对话框的声明(DefineAllMenuEntries),和SFR(DefineAllSFR),VTR(DefineAllVTREG),监视器(DefineAllWatches)和中止(DefineAllInterrupts)的声明。编写外设复位代码(ResetPripheral),上述的所有函数都通过AgsiEntry()函数挪用,该函数需要在DLL中导出,界说如下:extern"C"DWORDAGSIEXPORTAgsiEntry(DWORD,void*)。
  (4)在工程中添加一个非模态对话框,在对话框界说时发生的源文件中添加PeriDisp、PeriUpdate、PeriKill三个函数,划分用来显示对话框,更新显示内容和关闭对话框。同时添加两个宏用于菜单界说AGSIMENU和对话框属性界说AGSIDLGD。
  (5)在对话框类中添加Update()函数,用于更新显示,该函数在外设状态改变时被自动挪用便于实时反映外设状态。
  (6)在Update()函数,编写人机界面,使用Agsi.ReadSFR()函数读取P1口的状态,绘制8个LED灯,用于仿真P1口状态。
  (7)添加4个按钮,用于仿真P3.4~P3.7四个管脚的按键行动。编写按钮的处置惩罚函数如下:使用Agsi.WriteSFR(P3,0x00,0x10)对P3.4口举行清“0”操作,然后挪用AGSI的CreateTimer函数将回调函数BtnP34与时间举行关联 Timer4=Agsi.CreateTimer(BtnP34),最后使用SetTimer函数准时100ms,Agsi.SetTimer(Timer4,1000),这样回调函数BtnP34将在1S以后被挪用,在BtnP34函数中挪用WriterSFR对P3.4口举行置“1”操作,模拟按键P3.4的行动。其他P3.5等三个管脚的行动模仿P3.4管脚实现,P3.4按键行动时序与VC++程序间关系如图1所示。
  (8)编译链接天生动态链接库Experiment.dll。
  图1P3.4仿真按键时序的实现要领
  2.2仿真库的使用
  (1)将编译天生的Experiment.dll文件拷贝到KEIL程序所在的目录C51BIN文件夹中。
  (2)在uVision3的OptionsforTarget的Debug选项页中,选择UseSimulator,在DialogDLL一栏的Parameter项中写入-dExperimen,为后续举行仿真单片机程序做准备。
  (3)编写一个赛马灯的单片机测试程序,P1.0~P1.7所接8个LED灯,循环点亮,距离周期为1S,按键P3.4控制赛马灯的

沈阳软件制作<a href=http://www.hvihi.com target=_blank class=infotextkey>沈阳<a href=http://www.hvihi.com target=_blank class=infotextkey>软件开发</a></a>,<a href=http://www.hvihi.com target=_blank class=infotextkey>沈阳<a href=http://www.hvihi.com target=_blank class=infotextkey>软件公司</a></a>沈阳软件公司

“沈阳软件公司”的新闻页面文章、图片、音频、视频等稿件均为自媒体人、第三方机构发布或转载。如稿件涉及版权等问题,请与

我们联系删除或处理,客服QQ:55506560,稿件内容仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同

其观点或证实其内容的真实性。

推荐阅读