用Proteus仿真软件完成流水灯的教学设计
2018-10-20闫红蕾
闫红蕾
目前单片机在教学过程中,面临实验室经费紧张、课时有限的困难。为了让学生增加就业机会,在教学中必须尽可能地为学生提供更多更好的单片机实践机会。本文借助Proteus强大的仿真能力以及丰富的资源库,可以有效地替代硬件仿真器进行先期的软硬件调试,使开发过程变得高效。我们在教学中,选取非常容易理解的程序,从实际入手,引人入胜。
1 教学设计背景
目前企业对单片机应用人才的需求量仍然很大,同时,对技术水平的要求也越来越高,所以单片机教学一方面要面临实验室经费紧张、课时有限的困难,另一方面为了增大学生的的就业机会,我们的教学必须尽可能地为学生提供更多更好的单片机实践机会。借助Proteus的对CPU和外围电路强大的仿真能力以及丰富的资源库,可以有效地替代硬件仿真器进行先期的软硬件调试,等到仿真结果基本理想时再进行实际的硬件调试,这样的开发过程不仅高效,而且可以尽可能地减少损失。对于刚接触单片机的学生来说,拥有一台计算机和一套Proteus软件,就可以很好地开展单片机的入门学习,还可以积累一些实用的硬件开发经验。本文讲解如何仿真生活中很常见的流水灯。
2 学习目标
掌握Proteus仿真软件的使用方法和流水灯的硬件及软件设计。能够在Proteus仿真软件中实现流水灯的仿真。
3 教学设计过程
3.1分析从左到右流水灯的设计要求
8只LED灯接在P1端口,LED阳极连接P1,阴极通过限流电阻接地,P1端口相应引脚输出1时,才会使相应的LED点亮,为产生单个LED循环滚动效果,P1端口初值设为01H(00000001B),这会使第1只LED点亮,然后把送给P1端口的数据循环左移,依次为00000010B,00000100B,00001000B,……直到变为10000000B后,第1次循环结束,然后继续送第1只LED高电平,即可使8只LED从左向右形成循环走马灯效果。
3.2硬件设计
在Proteus中进行电路设计,打开ISIS 7 Professional窗口。选择所需要的元器件,放置好元件,布好线。左键双击各元件,设置相应元件参数,完成电路图的设计,如图1所示。
3.3软件设计
ORG 0000H
START: MOV A,#01H
LP: MOV P1,A
MOV R1,#10
DEL1: MOV R2,#200
DEL2: MOV R3,#126
DEL3: DJNZ R3,DEL3
DJNZ R2,DEL2
DJNZ R1,DEL1
RL A
LJMP LP
END
3.4调试与仿真
在Proteus中进行调试,打开ISIS 7 Professional窗口,打开设计好的硬件电路图,左键双击AT89C51单片机,在弹出的对话框中进行设置, “Program File”项中,必须选择在Keil中生成的十六进制HEX文件------led2.hex。然后执行“Debug”菜单中的“Start/Restart Debuging”开始调试并仿真,仿真结果如图2所示。这样就实现了从左到右流水灯的控制效果。
4 课堂评价
1)在课堂上,用Proteus仿真软件向学生讲授并演示单片机的工作过程及工作效果,让学生能够有直观的感受,提高学生的学习兴趣和学习积极性,学生们展现出了极大的热情,因为他们动手参与了画图设计和软件设计,并能够看到自己的成果演示,很有成就感。
2)对课堂的内容进行一定的延伸,合理的布置作业,让学生利用Proteus来验证作业结果,这不仅可以让学生思维得到扩展,还可以让学生的动手能力得到一定的提高。
5 教学反思
目前,Proteus仿真教学的软件编程语言使用的汇编语言,这种语言比较簡单,易于上手,但功能有限,可以在后续的教学中加入C语言的编写设计,以适应企业的要求,培养出更加合格的高技能人才。
(作者单位:江苏省扬州技师学院)