微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > NI Multisim下如何进行SPICE模型和8051 MCU的协同仿真

NI Multisim下如何进行SPICE模型和8051 MCU的协同仿真

时间:01-07 来源:互联网 点击:

Multisim是基于SPICE的电路仿真软件,SPICE(Simulation Program with Intergrated Circuit Emphasis)是“侧重于集成电路的模拟程序”的简称,在1975年由加利福尼亚大学伯克莱分校开发。在Multisim9中,需要另安装MultiMCU进行单片机仿真。NI(National Instruments) Multisim10 将MuitiMCU称为MCU Module,不需要单独安装,可以与Multisim中的SPICE模型电路协同仿真,支持Intel/Atmel的8051/8052 和 Microchip的 PIC16F84a,典型的外设有RAM和ROM,键盘,图形和文字LCD,并有完整的调试功能,包括设置断点,查看寄存器,改写内存等。支持C语言,可以编写头文件和使用库,还可以将加载的外部二进制文件反汇编。Multisim10下载
 这里我们通过一个简单的带有复位功能的计数器的例子来说明在NI Multisim10中如何进行单片机开发以及如何与SPICE模型电路协同仿真。

MCU(Microcontroller Unit)即单片机是大家都比较熟悉并常用的电子器件,由于其广泛的应用,所以用单片机设计电路是电子技术人员必备的技能。对于初学者,可以先从软件仿真入手。我们知道利用Proteus软件可以进行单片机的软件仿真,Multisim同样也可以。

 如果你对Multisim比较熟悉,那一定对里面的安捷伦(Agilent)54622D混合信号示波器等仪器印象很深刻吧,因为它与真实的仪器面板和操作几乎完全一样。Multisim里象这种模仿实际仪器的还有安捷伦的33120A任意波形函数发生器和34401A万用表,泰克(Tektronix)的TDS2024四通道示波器。充分利用这些仪器,就好比拥有了一个真实的实验室,你可以用33120A任意波形函数发生器给单片机提供输入信号,用54622D或TDS2024示波器观看模拟信号,或用54622D的逻辑分析仪功能查看单片机多个管脚数字信号的输出。在下面的例子里我们将用54622D来观察复位信号。

搭建电路设置MCU
 建好的电路图如图1所示,各器件的名称等信息如附表所示。需要说明的是电路图中的单片机不用连接晶振也可以进行仿真,时钟频率(速度)的设置见下文。

图1 带复位功能的简单计数器的电路图

附表  
搭建电路时,当将单片机U1放入电路图中时,会出现MCU向导,如图2所示。第一步,分别输入工作区路径和工作区名称。工作区名称任意,这里输入MCUCosimWS。第二步,如图3所示,在项目类型(Project type)下拉框有两个选项:标准(Standard)和加载外部Hex文件(Load External Hex File),你可以在Keil等环境下编写汇编和C源程序,然后生成Hex文件,再通过“加载外部Hex文件”导入。限于篇幅这里选标准(Standard),接着在“编程语言”(Programming language)下拉框里会有两个选项:C和汇编(Assembly),如果选择C,则在汇编器/编译器工具(Assembler/Compiler tool)下拉框会出现Hi-Tech C51-Lite compiler,我们这里选择汇编(Assembly),则出现8051/8052 Metalink assembler。接下来在项目名称(Project name)里输入名称,如CosimProject。第三步,如图4所示,对话框里有两个选项:创建空项目(Create empty project)和添加源文件(Add source file)。选择添加源文件,点击完成。保存文件,键入M10Cosim作为文件名,然后查看“设计工具箱”(Design Toolbox),应如图5所示。




 你可能更愿意用C来编写程序,而不是汇编,或两个都用,或还想引入外部Hex文件,这都可以通过用“MCU代码管理器”添加MCU项目来解决。在设计工具箱里右键单击MCUCosimWS,选择“MCU代码管理器”(MCU Code Manager),点击“新MCU项目”(New MCU Project)按钮,选择“项目类型”(Project Type),可以是标准(Standard)或加载外部Hex文件(Load External Hex File),这里选“标准”,接着输入名称,如Cosim_C_Project,确定后就可以在MCU代码管理器对话框里进行下一步设置了,可以创建新文件,设置汇编器/编译器等等。如图6所示,这时已经多了一个Cosim_C_Project项目(未添加C代码源文件),前面图标空心的方框说明它不是“当前使用的项目”(Active MCU Project)。

图6用MCU代码管理器添加的新项目  

编写并编译MCU源程序  
双击CosimProject下的main.asm输入程序,程序清单及注释如下:

由于汇编器是Metalink assembler,详细的宏命令等可以参考其用户手册。编写好程序后,选择菜单MCU→MCU 8051 U1→Build,这里的下拉子菜单可能是“MCU 8051 U2”或“U3”,主要对应电路图中单片机的符号名称,Build的结果会输出到Spreadsheet View中。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top