欢迎来到专业的尚善文档网平台! 工作总结 工作计划 读后感 发言稿 心得体会 申请书大全 思想汇报 述职报告
当前位置:尚善文档网>作文大全 > 基于Proteus和Keil软件的单片机仿真教学

基于Proteus和Keil软件的单片机仿真教学

时间:2022-03-25 08:07:35 浏览量:

zoޛ)j)>-z
z)׮ivi(-=饨ky体会一个单片机系统的软硬件设计细节[1]。另外,采用单片机实验箱或实验板加硬件仿真器的方式,不仅需采购多款实验仪器设备,而且也大大增加设备的维护工作量[2]。Proteus和Keil软件的出现,解决了这些问题,为单片机课程的仿真教学提供了很好的平台。

一、Proteus和Keil介绍及联调

(一)软件简介

Proteus仿真软件是由英国LabCenter Electronics公司开发的一款仿真工具,由ISIS和ARES两个软件组成,其中ISIS是原理图编辑与仿真软件,ARES是布线编辑软件[3]。与其它单片机仿真软件不同的是,Proteus不仅能仿真单片机CPU的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。利用该软件,可以将单片机项目实例进行形象化地演示。

Keil是德国开发的一个51单片机开发软件平台,支持汇编语言和C语言等高级语言。现在常用的KeiluVision2不但可以进行纯粹的软件仿真(仿真软件程序,不接硬件电路),也可以利用硬件仿真器,搭接上单片机硬件系统,在仿真器中载入项目程序后进行实时仿真。还可以使用uVision2的内嵌模块Keil Monitor-51在不需要额外硬件仿真器的条件下,搭接单片机硬件系统对项目程序进行实时仿真[4]。

(二)联调方法

Proteus与Keil软件的联调即建立软硬件联合仿真调试的过程。软硬件联合仿真系统由一个硬件执行环境和一个软件执行环境组成,通常软件环境和硬件环境都有自己的纠错和控制界面,而Proteus与Keil软件可以实现软硬件系统的联合调试[4]。在该系统中,Proteus作为硬件仿真界面,Keil作为软件调试界面,如图1所示。具体步骤如下:

(1)在Windows中安装Proteus和KeiluVision2。

(2)安装Keil驱动程序,将VDM51.dll文件安装到Keil目录下的\C51\BIN中。

(3)运行Proteus的ISIS程序后,进入该仿真软件的主界面。在Proteus的原理图设计窗口中,放置单片机及所需的外围元件,设置各元件参数,连接元器件。在Proteus的Debug菜单中选中Use Remote Debug Monitor。

(4)每次新建Keil工程后,进入Project菜单下Option for Target‘Target 1’。在Debug选项卡右栏下拉菜单选中Proteus VSM Simulators。再进入Setting,如果同一台机则IP名为12 7.0.0.1, 如不是同一台机则填另一台的IP地址,端口号一定为8000。

(5)在Keil中编写单片机源程序并进行调试,同时在Proteus中查看运行的结果。

(6)若源程序调试正确,可在Keil中编译生成后缀名为“.hex”的可执行文件。将该文件加载到Proteus的单片机芯片中,即可通过Proteus的相关工具进行系统总体执行效果的调试。

图1Proteus与Keil软件联调框图

二、单片机项目分解

在单片机的教学过程中,所涉及到的内容主要包括了四方面,即系统资源、硬件接口、软件程序、综合应用。因此项目分解时,应该充分考虑课程的特点并作合理的模块划分。

(1)系统资源

任何一种单片机均提供了一定的系统资源。对于51系列单片机来讲,其所提供的资源是以寄存器和存储器的方式体现出来的。查看寄存器内容,可以采用各种模拟仿真51单片机的软件来实现。在Proteus 软件中,可以执行debug菜单下registers菜单项命令打开相应的窗口。对于系统内部存储器的查看,同样是执行debug 菜单下的 internal memory 菜单项命令打开相应的窗口。

(2)硬件接口

单片机的接口电路所涉及到的知识涵盖了电子电路设计的相关领域,也涉及到单片机应用系统具体的工作需要。Proteus实现了单片机仿真和SPICE电路仿真相结合,具有各种仿真仪器仪表工具,如示波器、逻辑分析仪等[5]。利用Proteus 软件仿真电路时,可以根据具体的项目要求,让学生设计硬件电路并编写相应的程序。

(3)软件程序

在软件程序的教学中所涉及到的内容主要包括对语言中具体语句的执行效果验证、算法的具体实现、程序中语法错误的检查和逻辑错误的验证等内容。采用项目教学时,教师可以针对具体单片机项目内容,结合Keil软件演示讲解以达到预期的教学目的。

(4)综合应用

软件和硬件的结合,就是一个单片机的应用系统了。这一步在介绍完相关知识点后以项目的方式提出来,并且可以将其分解成不同的子任务分次完成,使学生易于接受。在这一阶段,硬件电路的设计已经不是最为关键的了,而软件系统的设计、调试和运行才是主要内容。因此教师可以引导学生按目标设计出具体的硬件电路,由学生进行软件的设计和调试。

结合单片机课程的教学任务和学生的具体情况,实际教学时我们将内容分解成单片机系统及软件的认识、霹雳灯的设计、输入电路的设计、键盘的设计、码表的设计以及LED点阵显示的设计等项目。将单片机的每个知识点穿插在具体的项目中,引导学生在实践中学习并掌握单片机的应用。

三、项目仿真教学实例

现以一个简易99秒码表的设计为例来说明单片机项目仿真教学过程。

该项目设计目标要求INT0所接的按钮开关具有启动码表及停止码表的功能,按一下INT0按钮开关,即可开始定时,7段LED数码管上每秒增加1;再按一下INT0按钮开关,即可停止定时。INT1所接的按钮开关的功能是将码表归零,按一下INT1按钮开关,则不管有没有定时,7段LED数码管都将从00开始。

运行Proteus软件,选择系统需要的元器件,如单片机、LED数码管、7447译码器、电阻、按钮等,在工作界面中绘制码表的硬件电路。在Keil软件中按照电路需要实现的功能要求编写汇编源程序。

对Proteus中的电路和Keil中的程序进行编译并联合调试,直至运行结果显示正确,如图2所示。

图2基于Proteus和Keil设计的电路仿真结果

四、结束语

采用Proteus和软件进行单片机仿真教学,具有比较明显的优势。比如克服了传统单片机教学过程中理论的枯燥性和实验的局限性,学生可以带着问题在软件中仿真实现项目目标,并掌握相关知识点,很好地扩展了学生的思路,提高了学生的学习兴趣。与传统的试验箱相比,这种软件仿真教学硬件投入少、实验过程中损耗小、基本没有元器件的损耗问题,既节约资源也省时省力确保了很好的教学效果。

参考文献

[1] 胡敬朋,王聪.单片机项目教学研究及实践[J].电气电子教学学报,2009,31(5):82-84

[2] 袁锋伟,赵立宏,朱慧玲,张莹. 基于Proteus的单片机课程教学与实验改革[J].实验室研究与探索,2007,26(12):75-78

[3] 刘燎原,孙秋波. Proteus软件在单片机项目教学中的应用[J].徐州建筑职业技术学院学报,2009,9(2):63-65

[4] 孙凌燕,黄允千. Proteus与Keil软件的整合在单片机实验开发中的应用[J].实验室研究与探索,2008,27(4):59-61

[5] 张靖武.单片机原理、应用与PROTEUS仿真[ M].北京:电子工业出版社,2008.

推荐访问: 单片机 仿真 教学 软件 Proteus