文献标识码:
文章编号: 0258-7998(2010)09-0074-03
仿真技术是信息时代国民经济发展的重要技术。对电子产品而言,Proteus是目前功能最强的仿真技术。四年来,我们在国内率先致力于Proteus仿真技术的工业应用研究。以它为新手段成功为数家企业研发了“LED电子显示屏”、“纯水机控制板”、“微电脑防盗报警器”、“红外热释电感应器”等电子产品。实现了电子产品从虚拟样机到物理样机(实际产品)的新型设计方法与过程。并在同一台计算机上实现了Proteus、集成开发环境IDE、上位计算机应用软件间的联合仿真和调试。实践证明:Proteus仿真技术明显提高了设计效率、缩短了设计周期、节约了设计成本、提高了产品竞争力,是促进产品设计变革的重要新技术。
1 电子产品的Proteus仿真技术
Proteus是英国Labcenter公司研发的EDA,是目前最先进的电子应用系统设计和实时交互仿真、PCB设计的平台。它真正实现了在计算机上完成从原理图与电路设计、电路分析与仿真、单片机代码级调试与仿真、系统测试与功能验证到形成PCB制板图的完整仿真设计(虚拟样机)过程。Proteus有超过5万个元件模型,近5 000个封装模型;特别是有51、PIC、AVR、68、ARM7等系列单片机(嵌入式系统)的仿真模型,并提供了功能强大的虚拟实验室(虚拟示波器、虚拟逻辑分析仪、虚拟信号源等)和高级图表仿真(ASF)[1,2]。Proteus还提供了自建元器件模型的条件[4-6]。
Proteus拥有Motorola、Philips、Microchip、索尼、三洋、美的、格力等众多企业用户;拥有斯坦福(Stanford)、剑桥(Cambridge)、香港理工、清华、上海交通等数千所大学用户[3]。
本文以LED电子显示屏为例论述基于Proteus仿真技术的电子产品设计变革。
2 “LED电子显示屏”系统方框图与Proteus仿真设计过程
2.1 “LED电子显示屏”系统功能方框图
如图1所示,系统功能包括6部分。上部分为显示部分,是安装在国家高新技术企业慈溪迈思特电子科技有限公司大厅中的产品照片;有静止和左移显示功能。单片机控制部分为其核心。PC机字符输出系统和串口电路完成对屏显内容的更新。“人体红外线热释电感应器”实现屏前有行人则显,无行人则停显功能。本文主要讨论电路设计、单片机控制、LED显示和通信输字等部分的仿真设计。
2.2 Proteus仿真设计过程
图2表示了电子产品系统的Proteus仿真设计过程,共分为6步。前4步都在计算机PROTEUS设计平台上进行。若“虚拟样机仿真、联合调试和性能测试”的结果未达目标,则可返回再仿真设计。满意后,点击Proteus工具栏中按钮 (高级布线编辑系统)进入PCB板设计;PCB板3D仿真符合要求后,送PCB制板厂制板,再安装成物理样机。
3 Proteus ISIS电路设计和程序设计、编译(汇编)
启动Proteus ISIS,先在ISIS编辑区进行电路设计,如图3所示。设计电路后点击“电气检测钮”对电路进行电气检测。电路设计无误后,可直接在Proteus中进行单片机的程序设计。Proteus提供了在ISIS窗口中编写源程序、汇编生成目标代码文件的汇编器(ASEM51),也可使用集成开发环境IDE(例Keil、MPLAB)进行程序设计。图3右侧表示了Proteus程序设计情况。在“源程序编辑区”中设计电子屏程序后,点击“汇编命令”可生成目标代码文件。然后双击单片机,打开其属性栏,设置晶振频率,并将目标代码文件加载于单片机中。点击“仿真按钮”,则进行仿真,仿真片段如图4所示。
ISIS界面与其操作详看参考文献[1]、[6]。
4 虚拟样机的Proteus仿真、联合调试和性能测试
4.1 虚拟样机的Proteus联合仿真
通过Proteus设计的电路、程序加上由计算机VB语言设计的LED电子屏输字系统等构成“电子屏”系统的虚拟样机。电子屏输字系统可由另一台计算机(上位机)通过串行接口与进行仿真设计的计算机连接以实现仿真联合调试;而应用虚拟串口已在一台计算机上实现了仿真和联合调试。这给调试带来了极大的方便。一台计算机加一个人便可高效、高质、高速进行有上位计算机参与的仿真设计。图4即为在同台笔记本电脑上实现仿真中联合调试的情况。图4下中方为笔记本电脑联合仿真和调试时的实物照片。这里,虚拟样机的仿真和联合调试包括单片机源代码级仿真调试(左上方)和与上位计算机电子屏输字系统的仿真通信调试(左下方和右下方)。
4.2 仿真过程中的联合调试
在同一台计算机上同时打开电子屏仿真设计与VB输字系统。点击 启动Proteus仿真,则看到电路运行状态、显示状态。若启动VB输字系统,则可进行VB“发送”和单片机“接收”的通信仿真。图4表示仿真中显示“仿真”两字,稍后左移显示,如此循环。点击 则进入调试状态,如图4所示。可进行全速、单步、过程单步及设置断点的运行并进行代码级调试。在调试过程中不仅可观察各存储器、寄存器单元情况,还可看到系统运行过程中的电平状态(以颜色方块表示:红为高电平、蓝为低电平)和显示结果。这正是Proteus动态交互式实时仿真的突出之处。当输字系统与单片机通信时,也可在VB代码窗口进行逐语句、逐过程测试,也可设置断点进行调试,并可在电子屏仿真设计的存储器窗口中观察输入数据的正确性,用以判断VB程序的正确性。即进行VB输字系统与电子屏仿真设计的联合调试。因电路及两种程序代码都可根据调试情况进行修改及重新编译(汇编),元件及其参数也可随时修改,且能在仿真中看到元件、连接点的运行状态、过程和极为接近实际的结果,所以设计周期短、效率高、开销少、质量好,并能激发设计者创新的热情。
4.3 仿真过程中的测试
Proteus有功能很强的虚拟实验室,包括众多的虚拟仪器、电源、信号源、探头等,还有可作精密测量、分析的高级图表仿真(ASF)。这些都为仿真设计(电路、程序)的正确性及物理样机的质量提供了保障。例如用高级图表进行时序扫描、分析,这对电子屏的正确、优质工作非常重要。将电压探针连接到需要测量的扫描行引线上,并拖入ASF中即可[1-2]。图5左边对LINE0~LINE15行扫描线加上探针,右边是对应的16条行扫描的ASF时序图表。用ASF提供的光标可测得扫描正脉冲宽度均为1.02 ms,脉冲间均有0.05 ms宽的消影低电平。符合设计预期目标,不会产生串显及不稳定现象。仿真结果和实际产品都证实了此结果。若时序不对,则可根据图表仿真指导对程序、电路等进行修改调试。
5 PCB板的Proteus设计及3D仿真
仿真调试正确后可直接点击ISIS工具栏中按钮进入Proteus ARES,进行电路板PCB设计。ARES集成了自动布局和基于形状的高效撤销/重试自动布线器,也可手工布线。它还提供PCB设计板的3D仿真视图,可缩放或正、反全方位转动观察,使得在制板前便可预览PCB板的情况,若有不满意之处,则可实时修改,从而减少时间、人力、资金的浪费。图6上方为Proteus设计的单片机控制部分双面PCB图,中部为其PCB 3D仿真视图。
6 物理样机(实际产品)制作
可直接将PCB板图文件送PCB制板厂制板,并安装成单片机控制部分的物理样机(控制板)。图6下方为安装成功的实物控制板照片。从图6看出它与PCB 3D仿真视图一一对应。该板已用于电子屏实际产品中。图1上方即是该电子屏实际运行的照片。
参考文献
[1] 张靖武,周灵彬.单片机系统的Proteus设计与仿真[M]. 北京:电子工业出版社,2007,4(注:2010.3第四次印刷).
[2] 张靖武,周灵彬.单片机原理、应用与Proteus仿真[M].北京:电子工业出版社,2008,8(注:2010.1第三次印刷).
[3] 匡载华,邓小鹏.电子类学科专业Proteus实验室的建设[J].实验技术与管理,2009(1).
[4] 周灵彬,张靖武.创建Proteus原理图仿真模型的制作技术[J].现代电子技术,2008(8):9-11.
[5] 周灵彬,张靖武.Proteus的单片机教学与应用仿真[J].单片机与嵌入式系统应用,2008(1).
[6] 周灵彬,方曙光.基于Proteus的嵌入式系统仿真中的源码调试[J].现代电子技术,2009(22).