论文部分内容阅读
摘要: Proteus是一款功能强大的EDA软件,它所配备的仿真元件库使其在电子设备的动态仿真方面具有其他仿真软件不可比拟的优越性。它在软件使用方面,简单易学,尤其是在单片机教学中的应用,可在不需要任何硬件投入的前提下,使得单片机教学变得形象生动,并在教学中取得了良好的效果。本文通过展示Proteus在单片机教学中的应用实例,就其优点和实用性进行了一定的探究。
关键词: Proteus 单片机 教学 仿真
1.引言
随着计算机技术的日新月异,虚拟现实技术得到了飞速发展,对高校电子技术教学改革也起到了巨大的推动作用。虚拟现实技术在电子技术教学中的应用主要是电子工作平台EDA软件,常见的EDA软件主要有:Protel、Multisim、Pspice、OrCAD等,这些软件之间的功能差别不大,可是它们都有个共同的缺点:对凡是涉及单片机的电路设计就无法进行仿真。本文介绍的Proteus软件就是一个可以模拟仿真单片机和外围器件电路设计的利器。
在传统的单片机教学环境中,师生只能写软件程序而无法展示实验过程、实验结果。而通过以Proteus为辅助工具,就可以在不需要任何硬件投入的前提下,使得单片机教学变得形象生动并具有可操作性,这样就可以解决长期以来困扰单片机教学的软硬件结合的难题。
2.Proteus软件介绍
Proteus是由英国Labcenter公司开发的EDA工具软件。作为一款EDA仿真软件,Proteus比同类软件更易操作,功能更强大。Proteus不仅可以仿真多系列几十种单片机,而且还有着数量庞大的元件库。它具有以下主要特点:
(1)可以仿真、分析各种模拟器件和集成电路。
(2)提供了虚拟示波器、逻辑分析仪、信号发生器、计数器、电表、Virtual Terminal(使用电脑的键盘和显示器通过串口与外部的单片机系统通讯)等虚拟仪器仪表供选择用。
(3)能够进行SCH(原理图)与PCB(印制板)的设计。
(4)能和Keil、Matlab等软件整合使用,以求达到更好的仿真效果。
3.Proteus在单片机教学中的应用
Proteus可以仿真很多常用的微处理器。具体来讲,它支持PIC、8051、AVR、ARM7/LPC2000等系列多种型号的微处理器、微控制器,仿真时只需在设定元件属性时指定下载程序的路径即可进行实时动态仿真。下面举例具体介绍Proteus在单片机仿真中的应用。
3.1设计要求
设计一个温度检测系统检测环境温度。DS18B20是美国DALLAS半导体公司继DS1820之后推出的一种改进型智能温度传感器。该传感器采用“一线总线”结构,具有简洁且经济的特点,可使用户轻松地组建传感器网络,从而为测温系统的构建引入全新概念。DS18B20的测温范围为-55℃~+125℃,最大分辨率可达0.0625℃,在-10℃~+85℃范围内,精度为±0.5℃,现场温度可直接通过“一线总线”以数字方式传输,大大提高了系统的抗干扰性。
3.2系统电路图绘制
Proteus既可以仿真单片机的工作情况,也能仿真单片机外围电路或没有单片机参与的其他电路的工作情况。因此在仿真时,可以直接看程序运行和电路工作的过程和结果。
首先运行Proteus软件,建立一个新文件,从右上角pick devices窗口中选择电路所需的元件。该系统用到的元器件主要有:1个AT89C51单片机;1个四位七段译码显示器;1个DS18B20温度计;1个74LS244芯片;1个12MHz晶振;1个复位开关;若干电阻和电容。
然后在Proteus中绘制硬件原理图,如图1所示。
3.3系统软件程序设计
系统程序主要包括主程序、读出温度子程序、温度转换子程序等。
主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量温度值,温度测量每1秒进行一次。
读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写。
温度转换子程序主要是发温度转换开始命令,当采用12位分辨率时转换时间约为750ms。首先发DS18B20复位命令,然后发跳过ROM命令,最后发温度转换开始命令,这样就完成了温度转换命令子程序。
除了以上3个程序段外,系统还应具有计算温度子程序、显示数据子程序、按键调节子程序等。
3.4仿真结果
首先把源文件在WAVE编译环境下生成可执行文件(*.hex格式),路径指定给原理图中的芯片,就可以观察程序的运行。另外,值得一提的是,实时仿真运行的过程中,每个管脚的旁边会出现一个小正方形的指示,红色代表高电平,蓝色带表低电平,从这个小正方形可以不用虚拟工具的测量很直观地看到每个管脚的电平变化,对程序的运行做出最基本的判断,对于简单的分析可以节省很多的时间。经过调节DS18B20的“↑”或“↓”键,设定环境温度为127.7℃,然后观察四位数码管的显示,发现两者数值一致,这就说明能够达到预先设计的要求。
4.用Proteus进行单片机教学的优点
4.1所需硬件少,成本经济。
4.2学习、使用方便,容易产生兴趣。
4.3用Proteus进行仿真,与工程实际最为接近,使学生可以了解实际问题的解决过程。
5.用Proteus进行单片机教学的缺点和不足
5.1由于Proteus是英国开发的软件,在国内常用的一些芯片,器件库中有的没有,在实际设计仿真中,经常需要用近似产品来替代,造成了开发设计当中的不便。
5.2器件库中有的模型,缺少仿真文件,不能进行仿真,经常造成调试错误。如:常用的ADC0809在模型中就缺少仿真文件,实际使用时,只能用ADC0808。
5.3实时性比较差,这是仿真软件的通病。
6.结语
总之,采用Proteus进行单片机教学是利大于弊,有利于促成课程和教学改革,更有利于人才的培养,从经济性、可移植性和可推广度来讲是非常有意义的。
采用Proteus仿真软件构成的单片机教学系统,既可以进行软件实验,如指令系统实验、数值转换、查表等实验,又能通过简单的虚拟外部电路实现定时计数、中断、串行通信等初学者较难理解的实验。另外,可通过按钮、发光二极管和数码管进行基本的输入、输出接口实验。减少了实验设备的硬件维护工作量,实验环境又与实际工程非常接近,拉近了单片机学习与就业的距离。这种虚拟实验的教学方法在试验教学中已经取得了良好的教学效果。
参考文献:
[1]许文斌.Proteus软件在单片机系统仿真实验教学中的应用[J].长沙航空职业技术学院:商业经济,2006,(3).
[2]沈红卫.单片机应用系统设计实例与分析[M].北京:北京航空航天大学出版社,2003.
[3]李学礼,林海峰.基于Proteus软件的单片机实验室建设[J].单片机与嵌入式系统的应用,2005,(9).
[4]李学礼,林海蜂.基于Proteus软件的单片机实验室建设.北京职业信息技术学院,Microcontrollers & Embedded Systems,2005.9.
关键词: Proteus 单片机 教学 仿真
1.引言
随着计算机技术的日新月异,虚拟现实技术得到了飞速发展,对高校电子技术教学改革也起到了巨大的推动作用。虚拟现实技术在电子技术教学中的应用主要是电子工作平台EDA软件,常见的EDA软件主要有:Protel、Multisim、Pspice、OrCAD等,这些软件之间的功能差别不大,可是它们都有个共同的缺点:对凡是涉及单片机的电路设计就无法进行仿真。本文介绍的Proteus软件就是一个可以模拟仿真单片机和外围器件电路设计的利器。
在传统的单片机教学环境中,师生只能写软件程序而无法展示实验过程、实验结果。而通过以Proteus为辅助工具,就可以在不需要任何硬件投入的前提下,使得单片机教学变得形象生动并具有可操作性,这样就可以解决长期以来困扰单片机教学的软硬件结合的难题。
2.Proteus软件介绍
Proteus是由英国Labcenter公司开发的EDA工具软件。作为一款EDA仿真软件,Proteus比同类软件更易操作,功能更强大。Proteus不仅可以仿真多系列几十种单片机,而且还有着数量庞大的元件库。它具有以下主要特点:
(1)可以仿真、分析各种模拟器件和集成电路。
(2)提供了虚拟示波器、逻辑分析仪、信号发生器、计数器、电表、Virtual Terminal(使用电脑的键盘和显示器通过串口与外部的单片机系统通讯)等虚拟仪器仪表供选择用。
(3)能够进行SCH(原理图)与PCB(印制板)的设计。
(4)能和Keil、Matlab等软件整合使用,以求达到更好的仿真效果。
3.Proteus在单片机教学中的应用
Proteus可以仿真很多常用的微处理器。具体来讲,它支持PIC、8051、AVR、ARM7/LPC2000等系列多种型号的微处理器、微控制器,仿真时只需在设定元件属性时指定下载程序的路径即可进行实时动态仿真。下面举例具体介绍Proteus在单片机仿真中的应用。
3.1设计要求
设计一个温度检测系统检测环境温度。DS18B20是美国DALLAS半导体公司继DS1820之后推出的一种改进型智能温度传感器。该传感器采用“一线总线”结构,具有简洁且经济的特点,可使用户轻松地组建传感器网络,从而为测温系统的构建引入全新概念。DS18B20的测温范围为-55℃~+125℃,最大分辨率可达0.0625℃,在-10℃~+85℃范围内,精度为±0.5℃,现场温度可直接通过“一线总线”以数字方式传输,大大提高了系统的抗干扰性。
3.2系统电路图绘制
Proteus既可以仿真单片机的工作情况,也能仿真单片机外围电路或没有单片机参与的其他电路的工作情况。因此在仿真时,可以直接看程序运行和电路工作的过程和结果。
首先运行Proteus软件,建立一个新文件,从右上角pick devices窗口中选择电路所需的元件。该系统用到的元器件主要有:1个AT89C51单片机;1个四位七段译码显示器;1个DS18B20温度计;1个74LS244芯片;1个12MHz晶振;1个复位开关;若干电阻和电容。
然后在Proteus中绘制硬件原理图,如图1所示。
3.3系统软件程序设计
系统程序主要包括主程序、读出温度子程序、温度转换子程序等。
主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量温度值,温度测量每1秒进行一次。
读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写。
温度转换子程序主要是发温度转换开始命令,当采用12位分辨率时转换时间约为750ms。首先发DS18B20复位命令,然后发跳过ROM命令,最后发温度转换开始命令,这样就完成了温度转换命令子程序。
除了以上3个程序段外,系统还应具有计算温度子程序、显示数据子程序、按键调节子程序等。
3.4仿真结果
首先把源文件在WAVE编译环境下生成可执行文件(*.hex格式),路径指定给原理图中的芯片,就可以观察程序的运行。另外,值得一提的是,实时仿真运行的过程中,每个管脚的旁边会出现一个小正方形的指示,红色代表高电平,蓝色带表低电平,从这个小正方形可以不用虚拟工具的测量很直观地看到每个管脚的电平变化,对程序的运行做出最基本的判断,对于简单的分析可以节省很多的时间。经过调节DS18B20的“↑”或“↓”键,设定环境温度为127.7℃,然后观察四位数码管的显示,发现两者数值一致,这就说明能够达到预先设计的要求。
4.用Proteus进行单片机教学的优点
4.1所需硬件少,成本经济。
4.2学习、使用方便,容易产生兴趣。
4.3用Proteus进行仿真,与工程实际最为接近,使学生可以了解实际问题的解决过程。
5.用Proteus进行单片机教学的缺点和不足
5.1由于Proteus是英国开发的软件,在国内常用的一些芯片,器件库中有的没有,在实际设计仿真中,经常需要用近似产品来替代,造成了开发设计当中的不便。
5.2器件库中有的模型,缺少仿真文件,不能进行仿真,经常造成调试错误。如:常用的ADC0809在模型中就缺少仿真文件,实际使用时,只能用ADC0808。
5.3实时性比较差,这是仿真软件的通病。
6.结语
总之,采用Proteus进行单片机教学是利大于弊,有利于促成课程和教学改革,更有利于人才的培养,从经济性、可移植性和可推广度来讲是非常有意义的。
采用Proteus仿真软件构成的单片机教学系统,既可以进行软件实验,如指令系统实验、数值转换、查表等实验,又能通过简单的虚拟外部电路实现定时计数、中断、串行通信等初学者较难理解的实验。另外,可通过按钮、发光二极管和数码管进行基本的输入、输出接口实验。减少了实验设备的硬件维护工作量,实验环境又与实际工程非常接近,拉近了单片机学习与就业的距离。这种虚拟实验的教学方法在试验教学中已经取得了良好的教学效果。
参考文献:
[1]许文斌.Proteus软件在单片机系统仿真实验教学中的应用[J].长沙航空职业技术学院:商业经济,2006,(3).
[2]沈红卫.单片机应用系统设计实例与分析[M].北京:北京航空航天大学出版社,2003.
[3]李学礼,林海峰.基于Proteus软件的单片机实验室建设[J].单片机与嵌入式系统的应用,2005,(9).
[4]李学礼,林海蜂.基于Proteus软件的单片机实验室建设.北京职业信息技术学院,Microcontrollers & Embedded Systems,2005.9.