如何仿真单片机的外围设备

[09-12 17:11:32]   来源:http://www.88dzw.com  单片机学习   阅读:8297

文章摘要:另一方面,与单片机配合使用的接口芯片比较固定,接法相对也比较固定,由用户自主开发DLL,模块可以共享,使仿真外围芯片和器件的DLL不断丰富。利用VC++的强大功能以及面向对象,窗口等技术,可以扩展外围设备的仿真功能,实现灵活、通用的面板功能,解决界面不直观的问题。图3 仿真实现3 实例分析下面以传送带控制系统为例,介绍如何编写DLL实时仿真单片机的外围设备,其方法具有普遍意义。3.1 传送带控制系统的组成原理图1表示了传送带控制系统的示意图。(漏头中是小球。)①料箱随传送带按运动方向向前移动。②当料箱移动到漏斗下方进,传感器B反应,传送带停止运行,漏头落料门打开,单片机对落下的小球计数(通过传

如何仿真单片机的外围设备,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com

另一方面,与单片机配合使用的接口芯片比较固定,接法相对也比较固定,由用户自主开发DLL,模块可以共享,使仿真外围芯片和器件的DLL不断丰富。利用VC++的强大功能以及面向对象,窗口等技术,可以扩展外围设备的仿真功能,实现灵活、通用的面板功能,解决界面不直观的问题。

图3 仿真实现

3 实例分析

下面以传送带控制系统为例,介绍如何编写DLL实时仿真单片机的外围设备,其方法具有普遍意义。

3.1 传送带控制系统的组成原理

图1表示了传送带控制系统的示意图。(漏头中是小球。)

①料箱随传送带按运动方向向前移动。

②当料箱移动到漏斗下方进,传感器B反应,传送带停止运行,漏头落料门打开,单片机对落下的小球计数(通过传感器A计数)。

③当落下的小球数等于装箱数目时,关闭漏斗门,传送带移动。

图4 Debug页

    3.2 仿真的具体实现

图2是单片机的硬件电路图。此例中需要仿真的外围设备有:键盘(外供用户输入装箱的小球数目)、传感器(判断料箱是否移动到漏斗下方以及计数)和其它(如传送带)。

具体实现如下:

首先是在调试函数中设置断点,以便查看存储器内容以及控制目标文件与DLL库的执行顺序。其次是DLL的编写:

①加入AGSI.h(其中定义了外部仿真的接口及函数的原型)。

②写初始代码。包括创建AGSI,定义菜单及对话框,定义SFR、VTR,定义中断复位。

③建立用户界面。加入按钮(代表键盘)、指示灯图片(代表传感器)等。

④编写仿真代码,如图3所示。

⑤接口。

*VC中打开菜单Project->Setting,选取Custom Builder页,将编制好的DLL文件拷贝到Keil公司指定的安装路径..下,然后配置环境。

*keil中打开菜单project->Options for Target,选取Debug页,按图4输入。

    ⑥仿真结果。启动dScope,将自动载入8051仿真动态链接库S8051.DLL及自行设计的外部设备的仿真动态链接库KEY.DLL。用户输入程序,编译成功后进入调试状态,打开菜单Peripheral,会多出一个Interface。通过这个界面可以完成该软件的设计,而不需要外围设备。最终界面如图5所示。

4 小结

本文介绍了利用DLL仿真单片机外围设备的方法,其设计思想具一定的普遍性。软件仿真在硬件诊断、实时仿真等方面存在不足;但在教学研究中或没有硬件情况下,应用前景广泛,对于单片机教学以及程序开发具有一定的指导意义。


上一页  [1] [2] 


Tag:单片机学习单片机开发,单片机原理,单片机教程单片机学习

《如何仿真单片机的外围设备》相关文章

分类导航
最新更新
热门排行