1、8051 系列单片机应用系统的 PROTEUS 仿真设计苏州竹园科技 陈洁 庞颖贤摘 要:介绍 PROTEUS 软件的基础上,以电扶梯单片机控制系统为实例来介绍如何采用PROTEUS 软件进行 8051 单片机应用系统仿真设计。关键词:8051 单片机 应用系统 PROTEUS 软件 keil c 软件 绑定 仿真单片机在电子产品中的应用已经越来越广泛,由于市场竞争日趋激烈,要求新产品的开发周期越来越短。因此应运而生了单片机仿真技术。PROTEUS 软件是英国 Labcenter electronics 公司研发的 EDA 工具软件。它是一个集模拟电路、数字电路、模/数混合电路以及多种微控制器
2、系统为一体的系统设计和仿真平台。是目前同类软件中最先进、最完整的电子类仿真平台之一。它真正实现了在计算机上完成从原理图、电路分析与仿真、单片机代码调试与仿真、系统测试与功能验证到 PCB 板生成的完整的电子产品研发过程。1. PROTEUS 软件简介PROTEUS 从 1989 年问世至今,经过了近 20 年的使用、完善,功能越来越强、性能越来越好。运行 PROTEUS 软件,计算机系统需具有:200MHz 或更高的奔腾处理器,Win98/Me/2000/XP 或更高版本的操作系统,64MB 或以上的可用硬盘空间,64MB 或以上的 RAM 空间,用 PROTEUS VSM 仿真时,则要求 3
3、00MHz 以上的奔腾处理器,如果专门使用 PROTEUS VSM 作实时仿真较大或较复杂的电路系统,则建议采用更高配置的计算机系统,以便获得更好的仿真效果 1。已经安装了 Proteus ISIS7 软件的桌面上就会有图标 。双击该图标,出现工作界面如图 1 所示。界面中包括:标题栏、下拉主菜单、快捷按钮栏、标准工具栏、绘图工具箱、状态栏、选择元器件按钮、预览对象方位控制按钮、仿真操作按钮、预览窗口、电路原理图编辑窗口等。图 1 proteus ISIS7 工作界面2. 控制系统组成及原理电扶梯又称自动扶梯,其常见控制方法有继电器控制和可编程程序控制器(PLC)控制两种。下面介绍一种采用 A
4、TMEL 公司 AT89S52 单片机组成的自动扶梯微机控制器 2,并用 Proteus 软件进行仿真测试。本控制器设有 8 个输入点和 6 个继电器输出点。每路输入通道均由光电耦合器和斯密特触发器组成。光电耦合器用作内外隔离,以提高抗干扰能力;二级斯密特触发器用来消除开关抖动。还设有 LED(发光二极管) ,用来指示输入点的状态。当外接输入开关闭合时 LED 亮,断开时则灭。8 个输入信号分别来自:曳引机抱闸状态开关(sabo) ;上端急停按钮(SBSTP-U)和下端急停按钮(SBSTP-D) ;运行、检修状态开关(sa2) ;上端按钮(钥匙开关,sast) ;下端按钮(钥匙开关,sbst)
5、 ;扶手带监视投入开关(sa1) ;扶手带信号(2 个输入点) 。6 个输出继电器分别用于控制:上行接触器(kmu) ;下行接触器(kmd) ;星形启动接触器( kms) ;三角形运行转换器( kmt) ;抱闸接触器(kmb) ;梯级照明接触器(kal ) 。具体电气控制线路见图 2 所示。图 2 电扶梯控制原理图图 2 电路上电后,如安全回路全部正常,则安全回路继电器(kc)吸合。sa2 打在运行位置时,转动 sbst,使扶梯上行或下行,kmb 吸合;随后, kal、kmu 或 kmd 和 kms 吸合。约 5s 后, kms 释放,kmt 吸合,完成星形/ 三角形转换,扶梯进入正常运行状态
6、。在运行状态下,计算机随时都在对抱闸状态和扶手带状态(sa1 闭合时)进行监视。一旦有异常,便马上使扶梯停止。图 2 中各输入、输出点与单片机的引脚对应为:sahg1-P1.0,sahg2-P1.1,sa1-P1.2,up-P1.3,down-P1.4,serv-P1.5,kc-P1.6,sab0-P1.7;kal-P3.0,kmb-P3.1, kmt-P3.2,kms-P3.3,kmd-P3.4,kmu-P3.5 。3. 程序编制和汇编我们在进行应用程序设计中,充分利用了 51 系列单片机所特有的布尔处理器的功能,使有关逻辑运算都在微处理机上圆满实现。这样,简化了程序设计,加快了运算速度。其
7、中着重对扶梯的运行状态、抱闸状态和扶手带速度等信息进行随时监视。当扶梯启动时,抱闸只有处在释放状态方能进行,否则不会启动。而在正常运行过程中,抱闸一旦意外释放,扶梯便会立即停止。当扶手带带速监视投入时,只有带速超出允许范围,扶梯就会停止运行。同样安全回路有异常,扶梯也会停止。依照上述要求,编制的源程序如下:;电扶梯单片机控制程序sahg1 bit p1.0sahg2 bit p1.1sa2 bit p1.2 ;扶手带监视up bit p1.3down bit p1.4 serv bit p1.5kc bit p1.6brak bit p1.7kal bit p3.0kmb bit p3.1km
8、t bit p3.2kms bit p3.3kmd bit p3.4kmu bit p3.5auto bit p3.6s_t bit p3.7statu bit 2dh.0mid bit 2dh.7org 0000hljmp startorg 0040hstart: setb kalsetb kmtsetb kmssetb kmdsetb kmusetb kmbclr statuclr midmain: mov c,kc ;kc 状态检测lcall delayorl c,kcjc startmov c,statu ;抱闸状态检测anl c,/brakmov mid,cmov c,brakanl
9、 c,/statuorl c,midorl c,/servjnc startmov c,sahg1 ;扶手带状态检测anl c,sahg2orl c,sa2jnc startjb statu,mainjnb serv,serv1jnb up,oper1jnb down,oper2jnb auto,ttljmp mainserv1: jnb up,d1jnb down,d2jb sa2,d3setb kmusetb kmdsetb kmssetb kmtsetb kmbljmp maind1: clr kmb ;上行jb brak,d1clr kmuclr kmsljmp maind2: clr
10、 kmb ;下行jb brak,d2clr kmdclr kmsljmp maind3: clr kalsetb kmusetb kmdsetb kmssetb kmtsetb kmbljmp mainoper1: lcall delay5msnopclr kmbjb brak,oper1clr kmunoplcall stsetb statuljmp mainoper2: lcall delay5msnopclr kmbjb brak,oper2clr kmdnoplcall stsetb statuljmp maintt: lcall delaylcall delaylcall delay
11、clr kmbjb brak,ttclr kmulcall stsetb statuljmp maindelay5ms: nopnopnopretorg 0800hst: clr kmsclr kallcall delaylcall delaylcall delaysetb kmsclr kmtretorg 0a00hdelay: mov r2,#28hleo: nopnopnopnopdjnz r2,leoretend源程序的汇编在 Keil C 中进行。打开 Keil C 软件,新建“电扶梯”项目;再新建“电扶梯源程序”文件,将上面的程序录入;把该文件添加到“Source Group 1”
12、中;在“Project”菜单下 “Options for Target Target 1”中的“Output”和“Debug”两个标签页上进行设置,如图 3 所示;点编译按钮建立目标文件,得到“电扶梯.hex”文件 3。(a) Outup 标签页(b) Debug 标签页图 3 Keil C 中设置4. 仿真电路绘制和绑定为了观察清晰,绘制电路仿真时我们省去了输入通道的光电耦合器和斯密特触发器,并把控制电路分成三个部分绘制。第 1 部分是控制操作和控制输出界面,如图 4(a)所示;第 2 部分为单片机基本系统,如图 4(b)所示;第 3 部分是继电器接口部分,如图 4(c)所示。图中各元器件在
13、库中的位置见表 1。表 1 图 4 中元器件在库中位置元器件 Calegorg Sub-category Results开关 Switchs&Relays Switch switch开关 Switchs&Relays Switch SW-POT-3按钮 Switchs&Relays Switch button8052CPU Microprocessor ICs 8051 Family AT89C52电源 Terminals mode power接地 Terminals mode ground晶体振荡器 Miscellaneous ALL CRYSTAL电容 Capacitors 30p/电阻 Resistors 0.6W Metal Film 10k/2.2k/5.1k/300电解电容 Capacitors Radial Electrolytic 10u发光二极管 Optpelectronics LEDs LED-RED晶体管 Transistors Bipolar 2N5401二极管 Diodes Switchs 1N4148继电器 Switchs&Relays Relays G5c-14-DC5图 4(a)控制操作和控制输出