Electronic Workbench 软件是加拿大Interactive Image Technologies 公司于20世纪80年代末90年代初推出的专门用于电子线路仿真的“虚拟电子工作平台”,简称为EWB。它可以仿真模拟电路、数字电路和混合电路,提供了非常丰富的电路分析功能(瞬态和稳态分析、时域和频域分析、线性和非线性分析、噪声和失真分析等14种分析方法),还可以对被仿真电路中的元器件人为地设置故障。目前,EWB已在电子工程设计和电工电子类教学领域中得到了广泛的应用。EWB软件包自开发以来,先后推出了在Windows下运行的多个版本。其中,MultiSIM 9中增加了MCU的仿真功能,为单片机初学者与爱好者提供了良好的入门条件与研发环境。下面,对MCU805X的仿真应用举例说明。
1 MultiSIM 9的安装MultiSIM 9分4个版本: 教育版、专业版、升级版、特殊版。由于MCU的仿真功能被链接在特殊版中,因此,使用者应选用特殊版序列号安装MultiSIM 9。安装成功后,可获得图1所示的运行界面。
2 MCU805X的仿真实例
2.1 MCU805X的选用
在View菜单下选中Toolbars项并选择“元件”选项,可在工具栏中显示MCU图标,如图2所示。
单击MCU图标,在弹出的窗口中选择8052,并单击“确定”按钮,然后将MCU8052拖入电路工作区,如图3所示。
图1
图2
图3
2.2 MCU8052流水灯电路编辑
在电路工作区编辑电路,如图4所示。在“MCU汇编源视图”中调用或编写汇编源程序,如图5所示。
图4
图5
汇编源程序具体如下:
$MOD52; 在仿真程序中,建立MCU8052的模型
org0000h
sjmp 0030h
org0003h
sjmp quit
org 0030h
mov ie, #81h
mov a, #01h
loop:mov p1, a
rl a
lcall time50ms
sjmp loop
time50ms:mov r7,#64h;50 ms
time501:mov r6,#0f9h
time502:djnz r6,time502
djnz r7,time501
ret
quit:mov p1,#00h
end
编写结束后,单击仿真按钮运行程序进行仿真。正确现象是:电平指示灯依次发光,当按下中断触发后,电平指示灯全灭,程序结束。
2.3 程序调试
使用者在调试程序时,可以通过“MCU汇编源视图”中的选项设置断点,使用“MCU存储器视图”对SFR、 IRAM、IROM的内容进行观察。MCU存储器视图可以在805X的设置“显示”选项中进行选择显示。使用者通过对存储器的观察,能加深对805X内部结构的理解与认识,准确判断程序设计、编写中存在的问题,从而缩短程序调试的时间,提高工作效率。
3 MCU仿真中注意的问题
① 仿真程序不适于仿真复位电路。
② 仿真不具备实时性。MultiSIM 9在仿真中要调用Debug等程序,对结果分析后再导入仿真环境。因此,设计中对电路预期的时间结果与仿真界面的显示时间并不同步。此时,各种现象显示的时间应以仿真界面上“传递函数”的时间为准,不能用现实中的时间衡量。鉴于这种运行方式,MCU805X的时间程序段应根据仿真中的时间步进行取值。否则,仿真时会出现长久的等待。
③ MCU805X的时钟脉冲值可在805X的设置中进行更改选择,不必在仿真电路中连接晶振器件。
④ 微机配置及整体性能越高,越有利于仿真程序的运行。
结语
以上是本人在MultiSIM 9软件应用中的一些认识与经验的总结。MultiSIM 9软件自身也带有MCU的设计范例,学习、应用人员可以通过分析设计范例掌握MCU805X的仿真技术。需要说明的是,MultiSIM 9中除805X外,还有PIC16F84、PIC16F84A,使MCU爱好者能同时享受冯·诺依曼单总线结构与哈佛双总线结构的乐趣。