Proteus和Keil联合仿真在单片机教学中的应用
2017-11-15刘祎佘勃张金花
刘祎 佘勃 张金花
【摘 要】本文分析了单片机教学现状,提出基于proteus 和keil联合仿真的单片机课程教学。Proteus的引入能很好地提高单片机教学效果,实现理论实践教学高度结合,实现“教学做”一体化,促进单片机教学改革。
【关键词】proteus;keil;教学做一体化
中图分类号: TP391.9 文献标识码: A 文章编号: 2095-2457(2017)20-0063-002
Application of Proteus and Keil Co - simulation in Single Chip Microcomputer Teaching
LIU Yi SHE Bo ZHANG Jin-hua
(School of Mechanical and Electrical Engineering,Suqian University,Suqian Jiangsu 223800,China)
【Abstract】This paper analyzes the status quo of single-chip teaching, proposed based on proteus and keil joint simulation of SCM teaching.The introduction of Proteus can improve the teaching effect of SCM,realize the combination of theory and practice teaching, realize the integration of "teaching" and promote the reform of SCM.
【Key words】Proteus;Keil;Teaching to do integration
單片机原理及应用课程是电子、自动化、机电、通信等专业的重要专业基础课,具有很强的理论性和实践性,且与后续专业课程、课程设计和毕业设计的联系非常紧密,应用领域广,实用性强。但是教学中学生普遍感到难学,主要表现在课程内容抽象、逻辑性强,教学过程极易陷入难教、难学的境地并形成恶性循环。基于诸多原因,大学单片机教学的效果并不理想,该课程的教学目标很难实现。
1 目前教学现状
1.1 理论教学内容抽象
单片机原理及应用课程的教学目标是使学生掌握单片机的结构、工作原理、寻址方式、指令系统,能进行硬件接口和应用程序的设计及对常用的单片机设备进行调试,并能设计实际应用产品。在理论教学过程中有许多知识点较抽象难以用语言解释清楚,例如学生搞不懂单片机是怎么工作的,指令是怎么运行的,定时计数器怎么才能工作等等。虽然借助PPT这样的教学手段增加了信息量,可对于学生来说,对这门抽象性的课程依旧听的云里雾里的。
1.2 实验多为验证性实验
实验教学大多只是利用现有的实验箱做一些验证性实验,实验箱的硬件电路已经固化,学生只是按指导书上的说明通过导线进行硬件电路连接,然后编写程序做一些验证性的实验,实际上对整个实验过程理解并不透彻,做完实验有时仍不知所云。
1.3 理论与实践分离
传统单片机教学采用“理论+实验”的教学模式,先理论后实验,理论以单片机硬件结构为主线展开,内容抽象,不易理解。实验先做软件编程实验再做硬件编程实验,这样下来,学生普遍感到难学,难以激发学生学习单片机的兴趣和自主性。
2 proteus和keil软件的引入
Proteus软件是英国Labcenter公司开发的一款仿真平台软件,可以对多款2单片机及相关接口芯片提供支持,支持keil等第三方编译开发软件,是一个全开发性的仿真实验平台。
Keil是单片机集成开发系统平台,支持51单片机的所有兼容机,提供包括C编译器、宏汇编、连接器及仿真调试器的完整开发方案,这软件不需要连接硬件可直接进行纯软件仿真,能生成烧录到芯片所需的.hex文件。
proteus、keil[1][2]软件的系统软硬件联合仿真实现了理论知识、实践教学的高度结合,优化了教学过程。
3 proteus、keil联调仿真在教学上的应用
通过proteus和keil的设计仿真平台,学生既能学习单片机应用系统原理接线又能学习软件调试方法。
3.1 proteus仿真在理论教学中的应用
3.1.1 进行基于proteus仿真的现场教学
单片机课程涉及软硬件学习,内容抽象不易理解,教师在进入课堂之前可以针对这些难懂的内容设计模型,在单片机课堂教学中使用proteus和keil的仿真设计平台,可以在讲授理论知识点后在proteus软件中设计硬件电路,在keil软件中编写程序调试生成.hex文件,再进行联合仿真,观察仿真结果。学生通过投影仪可以直观的看到整个系统的设计和仿真效果,这样增强了单片机教学的直观性。
proteus软件对硬件设备要求不高,不仅可方便在教室多媒体上安装,学生也可以在自己的电脑上便捷安装。在课堂教学过程中学生可以自带电脑跟随教师一起做仿真,学生可以在keil软件中可以观察执行过程中寄存器、存储器中内容的变化和程序的运行过程,这样将抽象的内容形象化了,学生也感受到了单片机的神奇,激发学生学习的兴趣和主动性,实现了“教学做”[3]一体化。
3.1.2 建设基于实例的仿真模型
基于proteus仿真平台的单片机运用让学生有机会从运用中学习,从而帮助并提高了学生运用单片机的信心和能力。另外采用proteus仿真可以节约实物成本和制作实物的时间。例如实例“初识单片机IO口”的仿真过程可以让学生更加直观的生动的理解单片机的IO口。endprint
{1}进行软件设计
在keil u-vision3集成环境中进行程序的编写,命名为led.c,并保存。
#include
sbit L1=P2^0;
void delay02s(void)
{ unsigned char i,j,k;
for(i=20;i>0;i--)
for(j=20;j>0;j--)
for(k=248;k>0;k--);
}
void main(void)
{while(1)
{L1=0;
delay02s();
L1=1;
delay02s();
}
}
由于keil在默认状态下不生成HEX文件,要在源程序编译后产生HEX文件,需要在”Project”下拉菜单中选择“Option for Target”对话框,在对话框中选中“Out put”的“Create Hex File”选项。这样编译程序后就会生成led.hex文件了[4]。
{2}进行硬件设计,装载程序进行联调
点击proteus软件启动界面的“P”按键,打开“Pick Device”对话框,从原件库中选取所需的元器件,点击OK按钮完成元器件的添加,接着在proteus中完成各器件的连接。双击AT89C51元件,将led.hex装载加载到单片机中,点击运行控制按钮,观察结果。其仿真图如图1所示。从仿真图中可以看到LED灯在不停的闪烁,由于单片机IO口电平发生变化引起了LED灯亮灭。通过这个实例让学生直观理解IO口。
3.2 proteus仿真在实践中的应用[5]
proteus仿真引入到实验教学中,学生可以自主搭建实验电路,跳出了实验箱固有电路的束缚,避免了由于实验箱的损坏而错失实验的机会。自主搭建电路做仿真更有利于学生掌握单片机系统设计原理。
proteus仿真引入到实验教学中,能让平时一些开展起来效果不好的實验项目顺利的开展起来。例如在实验箱中做的验证性实验“点亮数码管”实验中,在实验箱中使用了数码管驱动芯片ZLG7289,而这一部分程序进行了集成封装,使得学生做这个实验时总是弄得似懂非懂的。有了proteus仿真平台,学生就可以自己去进行硬件设计进行仿真,让学生对单片机控制数码管理解的透彻些。
4 结束语
Proteus软件作为教学手段应用到单片机教改中,可以增强学生对理论知识的理解,激发学生学习的兴趣,提高学生单片机系统设计能力,应用实践能力,培养单片机应用型人才。
【参考文献】
[1]杜树春.基于proteus和keil的单片机设计与仿真[M].北京:电子工业出版社,2012.
[2]汪宁.PROTEUS软件的单片机仿真方法[J].山东轻工业学报,2007,21(1):24-27.
[3]李绍静.基于案例驱动的单片机教学模式研究[J].信息技术,2013(4):59-62.
[4]宋剑英,石从刚.基于proteus的“学教做合一”高职教材建设——以单片机应用建设为例[J].青岛职业技术学院学报,2014(2):58-61.
[5]刘光平,陈红仙,钟平.proteus在单片机实验教学中的应用[J].计算机教育,2015(17):103-106.