电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > 单片机 > 详细信息
单片机:单片机虚拟实验室的建立
来源:   时间: 2007-4-16 16:56:16    
    摘要:单片机应用技术所涉及到的实验实践环节比较多,而且硬件投入比较大。在具体的工程实践中,如果因为方案有误而进行相应的开发设计,会浪费较多的时间和经费。本文以学校单片机课程的实验教学为背景,较为全面地阐述采用仿真实验的方法。

    关键词:proteus软件 单片机 仿真 虚拟实验室

    引 言

  单片机课程是机电、自动化等专业的一门重要课程,可以充分体现学生利用已学知识解决实际工程问题的能力。由于该学科是多基础、多理论的实践性学科,在教学过程中必须软件硬件结合,因此有学生感到难学,教师感到难教这样的尴尬。

  现代科技的发展,促进了计算机技术在软件和硬件上的飞速发展,利用计算机软件的仿真技术,可以充分地仿真诸如电路的工作等实际的工程问题。作者无意中找到一款软件Proteus,解决了许多的问题,而单片机虚拟实验室也是以该软件为核心建立起来的。

1 Proteus介绍

  Proteus与其它单片机仿真软件不同的是,它不仅能仿真单片机CPU的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验,从某种意义上讲,是弥补了实验和工程应用间脱节的矛盾和现象。

(1)proteus的工作过程

  运行proteus的ISIS程序后,进入该仿真软件的主界面。在工作前,要设置view菜单下的捕捉对齐和system下的颜色、图形界面大小等项目。通过工具栏中的p(从库中选择元件命令)命令,在pick devices窗口中选择电路所需的元件,放置元件并调整其相对位置,元件参数设置,元器件间连线,编写程序;在source菜单的Define code generation tools菜单命令下,选择程序编译的工具、路径、扩展名等项目;在source菜单的Add/remove source files命令下,加入单片机硬件电路的对应程序;通过debug菜单的相应命令仿真程序和电路的运行情况。

(2)Proteus软件所提供的元件资源

  Proteus 软件所提供了30多个元件库,数千种元件。元件涉及到数字和模拟、交流和直流等,具体情况如表1所列。



按此在新窗口浏览图片

 (3)Proteus软件所提供的仪表资源

  对于一个仿真软件或实验室,测试的仪器仪表的数量、类型和质量,是衡量实验室是否合格的一个关键因素。在Proteus软件包中,不存在同类仪表使用数量的问题,其提供的仪表如表2所列。



按此在新窗口浏览图片
 

  除了表2所列的测试仪表外,Proteus还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似但功能更多。图形显示功能如表3所列。



按此在新窗口浏览图片
 


            
            
(4)Proteus软件所提供的调试手段

  Proteus提供了比较丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号,如表4所列。



按此在新窗口浏览图片
 


     
  对于单片机硬件电路和软件的调试,Proteus 提供了两种方法:一种是系统总体执行效果,一种是对软件的分步调试以看具体的执行情况。

  对于总体执行效果的调试方法,只需要执行debug菜单下的execute菜单项或F12快捷键启动执行,用debug菜单下的pause animation菜单项或pause键暂停系统的运行;或用debug菜单下的stop animation 菜单项或shift-break组合键停止系统的运行。其运行方式也可以选择工具栏中的相应工具进行。

  对于软件的分步调试,应先执行debug菜单下的start/restart debugging 菜单项命令,此时可以选择step over 、step into 和 step out命令执行程序(可以用快捷键F10、F11和ctrl+F11),执行的效果是单句执行、进入子程序执行和跳出子程序执行。在执行了start / restart debuging命令后,在debug菜单的下面要出现仿真中所涉及到的软件列表和单片机的系统资源等,可供调试时分析和查看。

2 实验的组织

  在单片机的理论教学和实验中,所涉及到的内容包括了四方面,即单片机系统资源、软件技术、硬件接口电路、软件和硬件结合的应用系统。因此教师在进行教学时,应该充分考虑课程的特点并作合理的模块划分,在每次实验课程前作适当的准备工作,以使教学任务能集中和突出。以下例子中所涉及到的单片机均为51系列。

(1)系统资源的实验教学

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

  在软件技术的实验中所涉及到的内容主要包括对语言中具体语句的执行效果验证、算法的具体实现、程序中语法错误的检查和逻辑错误的验证等内容。对于纯软件的实验教学内容,教师在实验设置时应充分考虑到学生的能力并作好具体的准备工作,以达到预期的教学目的。

  例如,对于两个16位二进制数的乘法运算R4R5×R6R7=R3R4R5R6R7的汇编语言实现。为了较为直观地验证程序执行的正确性,教师在之前应该设计一个硬件电路,能完成数据的输入(带显示)和结果的输出(显示),并设计主程序、bcd码到二进制的转换、二进制码到bcd码的转换、bcd码到显示码的转换、显示等程序的设计,学生只在实验中进行乘法运算的算法设计并作为子程序加入系统中即可。

(3)硬件接口电路

  单片机的接口电路所涉及到的知识涵盖了电子电路设计的相关领域,也涉及到单片机应用系统具体的工作需要。接口电路部分涉及到线路的连接、元器件的选择、工作方式的设置、电路工作的稳定性和可靠性、电路的空间需求等等许多方面的知识和内容;但就学生实验来讲,所涉及到的并不需要这么全面。作为Proteus 仿真软件,其仿真电路时所模拟的元件真实工作情况,和单片机应用系统的实际工作环境还是有一定的差别。因此只能根据教学的需要,让学生自行设计电路并设置其工作方式。其实验可以通过两种方式组织实施,一是根据具体的要求,让学生设计接口电路并编写相应的程序;一是根据程序的要求,设计单片机接口电路。

  例如,对于键盘输入和显示(数码管)接口电路的设计,可以采用比较多的方法来实现。选择何种方法,与键盘中键的数量和数码管的个数以及显示的方式等都有关系。选择一种采用几种方法都能实现的键盘键数(如12个)和显示位数(如4位或4位半),提出具体的诸如必须预留的口地址、成本控制等要求,让学生自行设计接口电路。当然,对于如A/D转换等接口电路的设计,教师应该在事先设计出单片机电路的其它部分,并以模块的方式进行处理,给学生提供电路的接口信号。

(4)软件和硬件结合的应用系统

  软件和硬件的结合,就是一个单片机的应用系统了。这一步的实验可以在课程设计中以课题的方式提出来处理,也可以将其分解成不同的接口部分在接口电路的多次实验中分次完成。在这一阶段,硬件电路的设计已经不是最为关键的了,而软件系统的设计、调试和运行才是实验的主要内容。因此可以以建议性的意见给出具体的硬件电路,并提出该电路所需要完成的具体工作,由学生进行软件的设计和调试。

(5)观摩实验

  学生自行设计的硬件系统和软件,一般存在着某方面的不足,当给出了相应的实验设计任务后,学生就算能顺利的完成,但其中所涉及到的有些方式方法并不能在自己的设计中充分领悟。Protues系统提供了相应的一些范例,比如单片机系统中的计算器示例,当教师讲述了其中涉及到的所有(子)程序的功能并将其合理地组织在一起的时候,结合该系统的硬件,将对学生进行程序的设计和系统硬件的设计方法,产生比较大的影响。
3 用Proteus软件虚拟单片机实验的优点

  采用Proteus 仿真软件进行虚拟单片机实验,具有比较明显的优势,如涉及到的实验实习内容全面、硬件投入少、学生可自行实验、实验过程中损耗小、与工程实践最为接近等。当然其存在的缺点也是有的。

(1)内容全面

  内容全面包括其能实验的内容包括软件部分的汇编、C51等语言的调试过程,也包括硬件接口电路中的大部分类型。对同一类功能的接口电路,可以采用不同的硬件来搭建完成,因此采用Protues仿真软件进行实验教学,克服了用单片机实验教学板教学中硬件电路固定、学生不能更改、实验内容固定等方面的局限性,可以扩展学生的思路和提高学生的学习兴趣。

(2)硬件投入少,经济优势明显

  对于传统的采用单片机实验教学板的教学实验,由于硬件电路的固定,也就将单片机的CPU和具体的接口电路固定了下来。在单片机的实际教学中,如果要涉及到51系列,也要涉及到PIC16系列,那么为了教学必然要投入两种单片机的实验教学板;同时在教学过程中所涉及到的接口电路,也需要有较大的投入和储备,以利于实验的进行和在实验过程中元件损毁后的更换。Protues所提供的元件库中,大部分可以直接用于接口电路的搭建,同时该软件所提供的仪表,不管在质量还是数量上,都是可靠和经济的。如果在实验教学中投入这样的真实的仪器仪表,仅仪表的维护来讲,其工作量也是比较大的。因此采用软件的方式进行教学,其经济优势是比较明显的。

(3)学生可自行实验,锻炼解决实际工程问题的能力

  实验能力和实验设计能力的培养,是工科学生解决实际工程问题能力中较为重要的。传统的实验教学中,忽视了学生实验能力的培养,对于实验设计能力的培养,则很少涉及到。因此学生学习了理论,要想将其应用到实际的工程实践中,其难度是比较大的。还有,学生毕业后想对单片机控制技术或智能仪表等有较深的研究和学习,如果采用传统的实验教学方法,则学生需要购置的设备比较多,增加了他们学习和研究的投入。采用仿真软件后,学习的投入变得比较的小,而实际工程问题的研究,也可以先在软件环境中模拟通过,再进行硬件的投入,这样处理,不仅省时省力,也可以节省因方案不正确所造成的硬件投入的浪费。

(4)实验过程中损耗小,基本没有元器件的损耗问题

  在传统的实验教学过程中,都涉及到因操作不当而造成的元器件和仪器仪表的损毁,也涉及到仪器仪表等工作时所造成的能源消耗。采用Protues仿真软件进行的实验教学,则不存在上述的问题,其在实验的过程中是比较安全的。

(5)与工程实践最为接近,可以了解实际问题的解决过程

  在进行课程设计或进行大实验的时候,可以具体的在Protues中做一个工程项目,并将其最后移植到一个具体的硬件电路中,让学生了解将仿真软件和具体的工程实践如何结合起来,利于学生对工程实践过程的了解和学习。
(6)大量的范例,可供学生参考处理

  在系统的设计时,存在对已有资源的借鉴和引用处理,而该仿真系统所提供的较多的比较完善的系统设计方法和设计范例,可供学生参考和借鉴。同时也可以在原设计上进行修改处理。

(7)协作能力的培养和锻炼

  一个比较大的工程设计项目,是由一个开发小组协作完成的。了解和把握别人的设计意图和思维模式,是团结协作的基础。在Proteus中进行仿真实验时,所涉及到的内容并不全是学生独立设计完成的,因此对于锻炼学生的团结协作意识,是有好处的。

4 一个具体的课程实践

  该实验为对8051单片机外围电路进行写数据仿真的电路。课程要求学生设计电路并提供仿真和验证的方法。

(1)电 路

  为了简化电路,将单片机的时钟电路直接用CLOCK信号处理;对于数据的写入,采用逻辑分析的方法进行,电路如图1所示。



按此在新窗口浏览图片
 


  
(2)验证方法

  逻辑仿真验证程序执行的正确性和电路工作的情况,可通过时序图的方式进行验证,如图2所示。


按此在新窗口浏览图片
 


      
(3)程 序

  对1234H单元写入数据AAH,循环进行。
ORG 0
loop1: MOV DPTR,#1234H
MOV A,#0AAH
MOVX @DPTR,A 
MOVX A,@DPTR
JMP LOOP1
END


 

相关信息
发表评论
打印本页 关闭本页
基于8051单片机的频率测量技术
  引言   随着无线电技术的发展与普及,"频率"已经成为广大群众所熟悉的物理量。而单片机的出现,更是对包括测频在内的各种测量技术带来了许多重大的飞跃,然而,小体积、价廉、功能强等优势也在电子领域占有非常重要的地位。为此.本文给出了一种以单片机为核心的频率测量系统的设计方法。 1 测频系统的硬件结构   测量频率的方法一般分为无源测频法、有源测频法及电子计数法三种...
>>详细内容
关于C8051F021的定位和报警移动终端设计
    C8051F021是美国Cygnal公司生产的单片机。具有双串口、低功耗、高速度等优点。本文以GSM的数据业务,设计一种具有报警和定位的移动终端,并介绍该终端的结构框图、工作原理以及I/O配置和初始化程序。   引言   GSM网是目前移动通信体制中最成熟、最完善、应用最广的一种系统。数据业务作为GSM网络的一种基本业务,已得到越来越多的系统运营商和开发商的重视,基于这种业务的各...
>>详细内容
Silicon Laboratories推出C8051F336系列高整合8位微控制器
    Silicon Laboratories在美国波士顿举行的嵌入式系统研讨会 (Embedded Systems Conference) 发表C8051F336系列高整合8位微控制器,进一步扩大其领先业界的小型微控制器产品阵容。F336系列的接脚与Silicon Laboratories C8051F330系列完全兼容,但程序存储空间增至16kB。F336系列拥有更多闪存、高效能外围和在各种条件下均可发挥最佳效能的操作能力,设计人员很容易通过软件将产品升级...
>>详细内容
采用PIC16C54芯片设计的计数器
    计数器在工业控制中有着广泛的应用。传统的数字计数器都是用中小规模数字集成电路构成的,不但电路复杂,成本高,功能修改也不易。用单片机制作的计数器可以克服传统数字电路计数器的局限,有着广阔的应用前景。   本文介绍的计数器采用Microchip公司的PIC16C54单片机。该型单片机为RISC结构,在4MHz的工作频率下,每一个指令周期为1μs,运行速度大大超过MCS-51系列,适用于对...
>>详细内容
在嵌入FPGA的IP核8051上实现TCP/IP的设计
     0 引言   随着芯片规模的越来越大、资源的越来越丰富, 芯片的设计复杂度也大大增加。事实上, 在芯片设计完成后, 有时还需要根据情况改变一些控制, 这在使用过程中会经常遇到。这时候如果再对芯片设计进行改变将是很不可取的, 因为需要设计人员参与这种改变, 这无论是对设计者还是用户都是不能接受的。于是就有必要让这种可以改变的简单控制在芯片设计时就存在, 而且同时还应该...
>>详细内容
微芯PIC16F785微控制器面向智能功率转换设计
    微芯科技公司(Microchip Technology Inc.)的PIC16F785闪存微控制器(MCU)可为系统设计师提供一套完整的集成外围器件,以帮助其确定开关模式电源(SMPS)和电池充电器等应用中的多种功率转换拓扑和参数。   PIC16F785是一款8位闪存MCU,它具有板载模拟外围器件,包括 ADC、两个高速比较器、参考电压和两个运算放大器。通过这两个具备 3MHz增益带宽产品(GBWP)和5mV输入偏置电压通用运算...
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com