电路仿真-----Multisim 12.0 搭建并仿真51单片机最小系统

2019-04-15 19:22发布

概述:    最后使用Multisim 12.0搭建出来的最小系统为图1-1所示,通过编写程序可以使LED1循环闪烁。
 正常来说,51单片机最小系统一般包括单片机、晶振电路、复位电路,我没有添加复位电路,因为只是模电的Hello World而已,先熟悉仿真流程。 步骤: 1、建立一个文件夹MCUDemo,存放所创建的工程,
放置单片机。选择菜单栏的 Place/Component,弹出“Select a component”对话框,选择 Group为 “MCU”,Family为“805x”,Component为“8051”

在对话框内,选择好器件后,点击右上角的“OK”按钮,这时可以将选中的8051器件放置在原理图中,当放置好之后(也即点击鼠标左键),会弹出MCU Wizard创建向导,

选择工作空间存放的路径,这里为第1步所创建的文件夹F:MultisimMCUDemo,工作空间名字取名为 MCU51,

这一步是设置MCU的工程的类型以及编译语言、名字,Project Type里有Standard和 External Hex File,前者是标准类型(其实我也没用后者),后者是导入外部HEX文件,在本实验中,我选择“Standard”;编程语言Programming Language里选择“C”,即用C语言; 编译工具Assembler/compiler tool一栏选择默认;工程名字Project name设置为“MCU51Debug”,突然感觉起了好多名字。设置好之后

设置好之后,选择“Next” 接下来是设置是否创建空工程,这里按默认值,直接添加一个main.c文件,
“Finish” 此时Multisim的工程结构

双击图1-25所示的main.c
图1-25 此时main.c的内容如图1-26所示
图1-26 17、编写程序,编写完后的main.c内容如下图1-27
图1-27 注意 Multisim里的51头文件是8051.h ,不是 reg51.h 18、保存一下文件,然后选择工具栏的 MCU-->MCU 8051 U1-->Build,编译程序,如图1-28所示
图1-28   编译的结果如下图1-29。此时 0 Errors 0 Warnings
图1-29 19、回到原理图界面,点击如图1-30红线圈起的开始按钮,
图1-30 20、此时,按常理来说,LED1应该不停闪烁,但是我的没有闪烁。这个与LED的工作电流有关系,下面修改一下,首先 停止仿真,即菜单栏 Simulator-->Stop,然后双击LED1,弹出LED1的属性对话框,如下图1-31
图1-31 将上图的On Current值“5”该低一些,这里改为 “2”,如下图1-32所示
图1-32 点击OK,然后Ctrl+S保存,再点击“开始仿真”按钮或者 Simulator-->Start,弹出如下对话框
点击“Yes”,此时可以看到LED1闪烁   
图1-33  LED灭