【摘要】本文分析了传统的单片机教学中存在的问题,介绍PROTEUS软件的功能及特点,为充分说明其优点及实用性,通过结合实例,模拟单片机时钟的软件仿真,得到了良好的效果,实践证明Proteus是一款功能强大的EDA仿真软件。
【关键词】单片机;Proteus;仿真
单片机是电气信息类专业一门重要的专业课,实践性非常强,又非常抽象,学生普遍反映比较难学。通常,要做一次课堂演示实验要准备计算机、仿真器或编程器、电源和实验电路板等设备。如果用仿真器做实验,稍有不慎,仿真头就可能从实验电路板中脱落而造成错误,甚至损坏设备。如果用编程器写芯片的方法来验证实验结果,那么就得多次在实验板与编程器之间拔、插芯片,很麻烦,效率低。即使勉强做,由于实验电路板上的器件较小,学生很难看清现象,教学效果不佳。伴随着计算机软件技术的飞速发展,出现了大量的软件仿真工具,本文介绍的Proteus软件可以在计算机上进行单片机及其外围器件的模拟仿真。
一、Proteus简介
Proteus是英国Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路。它是目前最好的仿真单片机及外围器件的工具。该软件的特点是:
1.实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。
2.支持主流单片机系统的仿真。目前支持的单片机类型有:ARM7(LPC21xx)、8051/52系列、AVR系列、PIC10/12/16/18系列、HC11系列以及多种外围芯片。
3.提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2、MPLAB等软件。
4.具有强大的原理图绘制功能。
二、Proteus仿真使用
下面以AT89S51为控制芯片的4位时钟为例,介绍怎样利用PROTEUS软件实现电路的硬件设计、软件调试与系统仿真、实现单片机电路的功能要求,完成对控制方案的验证。在单片机教学中利用以上过程可以让学生方便地进行电路与程序调试,发现程序和电路设计中遇到的问题,引起学生的思考,进而掌握解决这些问题的思路和方法,克服了老师反复讲解和演示弊端,实现了单片机的一体化教学。
1.电路原理图设计。运行Proteus软件进入其编辑环境,主界面如图1所示。
点击对象选择区的P命令即弹出元器件选择(Pick Devices)对话框,调入所需元件仿真库。将电路中的所用到的元件从元器件库中调出来,放到绘图区并编辑其属性,接着进行合理的布局后,就可以进行连接了。与用Protel软件绘制原理图类似,Proteus软件也具有自动捕捉节点和自动布线的功能,连线时当标的指针靠近一个对象的引脚时,跟着鼠标的指针就会出现一个红色小框,点击鼠标左键就可画线了,需要拐弯时点击一下即可,在终点再点击确认一下就画出了一段导线,所有导线画完后,再点击工具栏的按钮,即可出现可用的终端。在对象选择器中的对象列表中,单击POWER,在预览窗口出现电源符号,在需要放置电源的地方单击,即可放置电源符号。放置接地符号(地线)的方法与放置电源类似,在对象选择列表中单击GROUND,然后在需要接地符号的地方单击,就可以了。添加完必要的电源和接地符号,原理图的绘制就完成了,4位时钟电路原理图如图2所示。
2.软件编程。程序的流程如图3所示,具体完成程序及生成代码的方法如下:
通过菜单点击“源代码→添加/删除源文件”,弹出对话框,如图3所示。
在“代码生成工具”的下拉菜单中选择代码生成工具ASEM51,然后点击“新建”按钮,弹出选择文件对话框,输入4位时钟程序的文件名保存并打开文件即可在PROTEUS提供的文体编程器中编辑源程序。
程序编好后保存,再通过菜单“源代码→全部编译”编译汇编源程序,生成目标代码文件。若编译失败,可对程序进行修改调试直至编译汇编成功,生成:4位时钟.Hex文件。
3.系统仿真
运行Proteus软件,打开之前所画电路图“4dpy.dsn”文件。双击AT89S51芯片,将生成的“4位时钟.hex”文件打开,按确定后返回Proteus软件界面。
单步执行程序,其仿真效果如图5所示。按开始按钮,4位时钟开始计时,程序运行符合要求。
三、结束语
通过以上实例的仿真过程,可以看出利用PROTEUS虚拟实验环境,克服了硬件平台的束缚,很好的解决学生理论与实践脱节的矛盾。在模拟实验中做实验,可以将大量教学信息直接地表现出来,调动了学生的学习积极性和主动性,极大地提高了单片机实验的教学效果。
【摘要】本文分析了传统的单片机教学中存在的问题,介绍PROTEUS软件的功能及特点,为充分说明其优点及实用性,通过结合实例,模拟单片机时钟的软件仿真,得到了良好的效果,实践证明Proteus是一款功能强大的EDA仿真软件。
【关键词】单片机;Proteus;仿真
单片机是电气信息类专业一门重要的专业课,实践性非常强,又非常抽象,学生普遍反映比较难学。通常,要做一次课堂演示实验要准备计算机、仿真器或编程器、电源和实验电路板等设备。如果用仿真器做实验,稍有不慎,仿真头就可能从实验电路板中脱落而造成错误,甚至损坏设备。如果用编程器写芯片的方法来验证实验结果,那么就得多次在实验板与编程器之间拔、插芯片,很麻烦,效率低。即使勉强做,由于实验电路板上的器件较小,学生很难看清现象,教学效果不佳。伴随着计算机软件技术的飞速发展,出现了大量的软件仿真工具,本文介绍的Proteus软件可以在计算机上进行单片机及其外围器件的模拟仿真。
一、Proteus简介
Proteus是英国Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路。它是目前最好的仿真单片机及外围器件的工具。该软件的特点是:
1.实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。
2.支持主流单片机系统的仿真。目前支持的单片机类型有:ARM7(LPC21xx)、8051/52系列、AVR系列、PIC10/12/16/18系列、HC11系列以及多种外围芯片。
3.提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2、MPLAB等软件。
4.具有强大的原理图绘制功能。
二、Proteus仿真使用
下面以AT89S51为控制芯片的4位时钟为例,介绍怎样利用PROTEUS软件实现电路的硬件设计、软件调试与系统仿真、实现单片机电路的功能要求,完成对控制方案的验证。在单片机教学中利用以上过程可以让学生方便地进行电路与程序调试,发现程序和电路设计中遇到的问题,引起学生的思考,进而掌握解决这些问题的思路和方法,克服了老师反复讲解和演示弊端,实现了单片机的一体化教学。
1.电路原理图设计。运行Proteus软件进入其编辑环境,主界面如图1所示。
点击对象选择区的P命令即弹出元器件选择(Pick Devices)对话框,调入所需元件仿真库。将电路中的所用到的元件从元器件库中调出来,放到绘图区并编辑其属性,接着进行合理的布局后,就可以进行连接了。与用Protel软件绘制原理图类似,Proteus软件也具有自动捕捉节点和自动布线的功能,连线时当标的指针靠近一个对象的引脚时,跟着鼠标的指针就会出现一个红色小框,点击鼠标左键就可画线了,需要拐弯时点击一下即可,在终点再点击确认一下就画出了一段导线,所有导线画完后,再点击工具栏的按钮,即可出现可用的终端。在对象选择器中的对象列表中,单击POWER,在预览窗口出现电源符号,在需要放置电源的地方单击,即可放置电源符号。放置接地符号(地线)的方法与放置电源类似,在对象选择列表中单击GROUND,然后在需要接地符号的地方单击,就可以了。添加完必要的电源和接地符号,原理图的绘制就完成了,4位时钟电路原理图如图2所示。
2.软件编程。程序的流程如图3所示,具体完成程序及生成代码的方法如下:
通过菜单点击“源代码→添加/删除源文件”,弹出对话框,如图3所示。
在“代码生成工具”的下拉菜单中选择代码生成工具ASEM51,然后点击“新建”按钮,弹出选择文件对话框,输入4位时钟程序的文件名保存并打开文件即可在PROTEUS提供的文体编程器中编辑源程序。
程序编好后保存,再通过菜单“源代码→全部编译”编译汇编源程序,生成目标代码文件。若编译失败,可对程序进行修改调试直至编译汇编成功,生成:4位时钟.Hex文件。
3.系统仿真
运行Proteus软件,打开之前所画电路图“4dpy.dsn”文件。双击AT89S51芯片,将生成的“4位时钟.hex”文件打开,按确定后返回Proteus软件界面。
单步执行程序,其仿真效果如图5所示。按开始按钮,4位时钟开始计时,程序运行符合要求。
三、结束语
通过以上实例的仿真过程,可以看出利用PROTEUS虚拟实验环境,克服了硬件平台的束缚,很好的解决学生理论与实践脱节的矛盾。在模拟实验中做实验,可以将大量教学信息直接地表现出来,调动了学生的学习积极性和主动性,极大地提高了单片机实验的教学效果。