基于multisim的单片机设计(C语言版)
Multisim10软件在单片机C语言协同仿真中的应用
收稿日期: 2010-08-30 作者简介: 潘启勇(1971—), 男, 江苏宝应人, 常熟理工学院物理与电子工程学院讲师, 硕士, 研究方向: 嵌入式系统与智能 控制.
116 与教学具有指导意义.
常熟理工学院学报 (自然科学)
2010 年
1
Multisiml0 MCU 模块简介
Multisim 是美国国家仪器公司 (National Instruments) 开发的一款电子电路仿真和设计套件, 其前身是加拿
0
引
言
单片机技术是一门涉及到数字电子技术、 模拟电子技术、 计算机和通信等多个领域的应用型课程, 实践性 很强. 传统的教学模式一般是先基础后应用, 先课堂讲解, 再进行相关的实验. 由于和硬件密切相关, 只在课堂 上讲授理论, 学生在学习过程中会感到比较枯燥、 难理解. 而进入实验室, 由于实验学时和设备台套数的限制, 学生实践操作的时间很少, 况且有些实验项目往往是由教师事先设计好的, 学生基本不用预习就可以照本宣科 做出来, 应付了事. 另外, 学生课后自学又不具备实验条件. 这种理论与实践脱节的教学过程, 不仅会造成学生 对理论知识理解困难, 而且也导致了其动手能力不足, 严重影响教学效果. 因此, 在以往的单片机教学甚至开发过程中, 我们经常采用专用的计算机仿真软件进行测试, 如 51 系列 MCU 就经常使用 Keil 和 Proteus 软件. Keil 是美国 Keil Software 公司开发的, 是目前世界上最好的单片机开发工 具之一. 它支持汇编语言、 C 语言以及混合编程, 其软件仿真功能可以在没有硬件支持的条件下, 详细测试程序 运行情况; 然而其电路仿真功能则要受到很多限制, 需要借助第三方开发的动态 DLL 进行计算机模拟, 或者需 要价格较昂贵的硬件仿真器 MONITOR-51 的支持. Proteus 是英国 Lab center 公司开发的电路分析和仿真软件, 能够对 11 个大类百余种微处理器进行 CPU 及外围电路的仿真, 但在进行仿真调试时只能进行硬件改动, 而不 能直观地了解程序运行情况. 因此, 虽然这两种软件各自都可以进行单片机系统仿真, 但受到的限制也比较多. 目前更为常用的仿真办法是将 Keil 和 Proteus 结合在一起进行单片机系统的联合仿真. 二者联合仿真又分为离 线联合仿真和在线联合仿真两种情况. 前者在测试时需要在两个软件之间频繁切换, 后者则会占用大量的系统 资源. 现在, 这些问题都可以在 Multisim 中得到较为理想的解决. 本文结合单片机系统仿真实例, 介绍在 Multisim10 环境下, 利用 Multisim MCU Module 进行单片机 C 语言软硬件协同仿真的完整过程. 对于单片机系统开发
单片机的C语言程序设计与应用——基于Proteus仿真(第2版)
{TL0=0xb0; //访问定时器0,设置时间常数
TH0=ox3c;
TR0=1; //启动定时器0
…
}
3-3 sbit型变量的定义示例
程序如下:
sfr PSW=0xD0;
sbit OV=PSW^2;
sbit OV=0xd0^2;
sbit OV=0xD2;
unsigned char bdata flag;
if(a==b)
{ a++;b++;}
{ a--;b--;}
printf("a=%d,b=%d\n",a,b);
while(1);
}
执行结果如下:
a=11,b=20
3-16选择语句程序示例
#include<stdio.h>
void main()
{ int score;
char grade;
score=45;
if(score>=90)
grade='A';
else if(score>=80)
grade='B';
else if(score>=70)
grade='C';
else if(score>=60)
grade='D';
else grade='E'
printf("score=%d,grade=%c\n",score,grade);
}
}
}由于不知道什么时候能够超过4000,所以使用一个‘无限循环’,每次计算和之后判断当前sum的值,当sum超过4000时使用break退出整个循环,不再执行。
Multisim10在单片机仿真中的应用
第30卷第3期Multisim10在单片机仿真中的应用吴凌燕(海军航空工程学院青岛分院 青岛 266041)摘 要:M ultisim10中M CU 模块可实现对8051、8052及PI C 系列单片机的仿真。
介绍了M ultisim10的基本情况,应用M u-l tisim10的M CU 模块仿真了单片机8051控制LED 灯的点亮过程,并通过该实例介绍了M ultisim10M CU 仿真模块的基本操作流程以及仿真的过程、方法及注意事项。
最后,总结了M ultisim10M CU 仿真模块进行单片机仿真的优点及不足之处。
关键词:M ultisim10;M CU ,单片机仿真中图分类号:T P399 文献标识码:AThe application of Multisim 10insingle -chip microcomputer simulationWu L ingyan(Naval Aeronautical Engineering Institure Qingdao Branch,Qingdao 266041,china)Abstr act :T he M CU module of M ult isim10can be used to sim ulate 8051,8052and t he PIC series micro -cont rollers.T hebasic informat ion of M ultisim10is introduced,and it s M CU module is used to sim ulate the process that a LE D is con -trolled by 8051.In th is sim ulation,the basic operating procedures,mothodand notes are proposed.Meanw hile,the advan -tage and disadvange of M CU simulat ing applicat ion are given.Keywor ds:Mult isim 10;MCU ;sngle -chip microcom puter sim ulation收稿日期:2010-80 引 言M ult isim10是NI 公司下属的Electronics Work bench Group 发布的交互式SPICE 仿真和电路分析的软件,前期发展经历了EWB5.0、EWB6.0、Multisim 2001、M ult-i sim 7、M ultisim8、M ult isim9等版本。
单片机的C语言程序设计与应用——基于Proteus仿真(第2版)
单片机的C语言程序设计与应用——基于Proteus仿真(第2版)单片机的C语言程序设计与应用——基于Proteus仿真(第2版)单片机的C语言程序设计是嵌入式系统开发的基础,也是现代电子产品设计中不可或缺的重要环节。
借助Proteus仿真软件,可以更加方便、快捷地进行单片机程序的开发与调试。
本文将介绍单片机的C语言程序设计与应用,以及如何在Proteus仿真环境中进行程序的调试。
一、单片机的C语言程序设计基础C语言是一种高级编程语言,被广泛应用于单片机程序设计中。
在进行单片机的C语言程序设计之前,我们需要掌握一些基本概念和常用语法。
1. 数据类型与变量在C语言中,需要首先定义所使用的数据类型和变量。
常见的数据类型包括整型、浮点型、字符型等。
通过定义变量,并为其分配内存空间,我们可以在程序中存储和处理数据。
2. 控制语句与循环结构控制语句可以用来控制程序的执行流程和逻辑。
常见的控制语句包括条件语句(如if-else语句)、选择语句(如switch语句)等。
循环结构可以用来重复执行一段代码,提高程序的效率。
3. 函数与库函数函数是C语言程序的基本模块,可以封装一段特定的功能。
通过自定义函数和调用库函数,我们可以实现各种功能的组合与调用。
二、Proteus仿真环境的使用Proteus是一款强大的电子设计自动化软件,常用于单片机程序的仿真和调试。
在进行单片机的C语言程序设计时,我们可以借助Proteus 提供的仿真环境进行代码的调试和性能分析。
1. 新建项目与配置在Proteus中,首先需要新建一个项目,并配置所使用的单片机型号和外部电路等。
通过添加合适的元件和连接引脚,可以搭建出一个完整的单片机电路。
2. 编写C语言代码在Proteus的项目中,可以添加一个“C源文件”来编写自己的C语言代码。
通过编写代码,可以实现所需的功能和逻辑。
在编写代码时,需要注意与所使用的单片机型号和引脚连接的兼容性。
3. 仿真与调试在编写完C语言代码后,我们可以进行仿真和调试。
单片机的C语言程序设计与应用基于Proteus仿真第三版教学设计
单片机的C语言程序设计与应用基于Proteus仿真第三版教学设计背景单片机是现代电子工程与电子应用领域中不可或缺的组件之一。
C语言是目前广泛应用于单片机编程的高级编程语言。
基于Proteus仿真平台的单片机程序设计在教学中,可以使学生在理论概念掌握的基础上,更好地理解C语言程序在单片机上的应用。
因此,本文将从教学设计的角度出发,介绍单片机C语言程序设计与应用基于Proteus仿真的教学设计。
教学内容与目标本教学设计旨在使学生了解单片机的基本概念与应用,学习C语言程序设计,掌握基于Proteus仿真平台进行单片机程序设计的方法。
具体教学内容包括:•单片机的基础知识•C语言语法与程序设计•基于Proteus仿真平台进行单片机程序设计•实验设计与实验报告撰写本教学设计的教学目标为:•学习单片机的基本概念与应用•掌握C语言的语法与程序设计•熟练掌握基于Proteus仿真平台进行单片机程序设计的方法•具备实验设计与实验报告撰写的能力教学步骤步骤一:介绍单片机基础知识在本教学设计中,首先进行的是单片机基础知识的介绍。
学生应该了解单片机的基本概念及其应用。
可以向学生介绍单片机的工作原理、主要构成以及应用范围等相关知识。
在授课过程中,教师可以使用文字、图片等多种方式让学生更好地理解与记忆。
步骤二:介绍C语言语法与程序设计在进行单片机程序设计之前,学生需要了解C语言的语法以及程序设计方法。
在授课过程中,可以通过讲解、示例演示等多种方式进行教学。
重点讲解C语言的基础语法、变量、运算符、流程控制等内容,同时引导学生进行实际的编程操作。
步骤三:基于Proteus仿真平台进行单片机程序设计在学生了解单片机的基本概念与C语言程序设计基础后,开始进行基于Proteus仿真平台的单片机程序设计。
在实际教学中,可以引导学生进行简单的电路设计,然后将设计好的电路与单片机进行连接。
随后,将设计好的程序烧录到单片机中,并在仿真平台上进行模拟。
Multisim14电子系统仿真与设计第12章 MultiMCU单片机仿真
12.5 单片机系统仿真实例
12.5.1 用8051单片机实现波形发生器的仿真
2. 编译应用程序
在 Multisim14 菜 单 中 选 择 “ MCU ” → “ MCU 8051 U1”→“Build”命令,对应用程序进行编 译,在下方的编译信息栏中显示了编译时间 和编译结果。编译通过会给出“0 error(s) ”的提示。如果编译出错会提示出 错的位置,修改程序直至编译通过。
delay(3); } }
12.3 单片机编程语言及编译连接
12.3.3 应用第三方编译器生成的可执行文件
MultiMCU支持第三方的编译器,可以将第三方编译器(如Keil51)生成
的可执行代码,如 *.hex文件,直接导入到 MultiMCU中,然后进行仿真。本 例中假定第三方编译器生成的可执行文件为input_output_e.hex。
括 RAM 、 ROM 和 Clock 频 率
等。
12.2 单片机仿真电路的建立
3.添加其他外围设备:
按照前面章节中介绍的方法添
加其他外围设备。本例中还需 要添加开关组、 LED 、电源和 地。
12.3 单片机编程语言及编译连接
12.3.1 应用汇编语言编写单片机应用程序
MultiMCU 中的 805x 系列和 PIC 系列单片机均可支持汇编程序
12.2 单片机仿真电路的建立
采用MultiMCU进行单片机仿真,包括3个步骤:
即建立单片机仿真电路; 编写和编译单片机仿真程序; 在线调试。
12.2 单片机仿真电路的建立
1.添加单片机:
在菜单栏中单击“ New ”命令,
新建一个电路窗口。单击元器件 工具栏中的按钮,或者在 Multisim 菜 单 中 选 择 “ Place ”→“ Component ”命
基于multisim的单片机开发
上海XXX学院《硬件系统设计》上机实验报告(八)姓名:学号:班级:成绩:实验名称:基于MULTISIM的单片机开发实验地点:实验设备:(计算机型号)(生产商)设备号:使用软件: Multisim 10.0 实验时间:2 年月日星期,时分至时分一、实验原理:(简述----用自己的理解)单片机是最简单的处理器芯片,支持编程,可以通过向单片机芯片中输入相应代码,来实现对输出及其他一些功能的控制,本次实验就是基于单片机功能,通过单片机仿真实验来了解单片机的编程。
二、实验内容(步骤):选用805系列可编程器件8051,选择编程语言为C语言,如下:在元件库中选择元件,一个“10K”电阻,一个“10u”和两个“30p”的电容,四个“DGND”和两个5V的“VCC”。
选择一个“LCD_DISPLAY_08x1”,一个“H-49/U_25MHz”的晶振,连接好电路如下:编辑程序:在lwf.asm中输入如下代码:$MOD51 ; This includes 8051 definitions for the metalink assembler ORG 0000HCLR P3.0;LCD 初始化SETB P3.139MOV P1,#03HCLR P3.1SETB P3.1MOV P1,#0CHCLR P3.1SETB P3.1MOV P1,#06HCLR P3.1SETB P3.0;对LCD 写数据SETB P3.1MOV P1,#30HCLR P3.1SETB P3.1MOV P1,#31HCLR P3.1SETB P3.1MOV P1,#32HCLR P3.1SETB P3.1MOV P1,#33HCLR P3.1CLR P3.0;LCD 清屏SETB P3.1MOV P1,#01HCLR P3.1SETB P3.0SETB P3.1;第二次对LCD 写数据MOV P1,#34HCLR P3.1SETB P3.1MOV P1,#35HCLR P3.1SETB P3.1MOV P1,#36HCLR P3.1SETB P3.1MOV P1,#37HCLR P3.1SETB P3.1MOV P1,#38HCLR P3.1SETB P3.1MOV P1,#39HCLR P3.1SETB P3.1MOV P1,#41HCLR P3.1SJMP $END右键lwf.asm,单击build,没有错误,如下:单击run开始运行,结果如下,显示123456789A:思考题:(1)如何在LCD08x1 上分两次显示“R&B”和“NO.1”。
用Multisim软件进行单片机辅助开发
用Multisim软件进行单片机辅助开发作者:孔德意来源:《电子世界》2013年第08期【摘要】为了能够对单片机开发设计人员起到较好的帮助,文章详细介绍了如何使用Multisim软件对单片机及其外围电路进行仿真,帮助分析、解决和验证设计,并通过相关虚拟仪器观测仿真结果。
采用仿真辅助设计,可以缩短产品开发周期,提高设计人员研发效率。
【关键词】Multisim;单片机;外围电路;虚拟仪器;仿真单片机因其使用灵活、体积小、重量轻和价格低廉等因素,仍然被广泛应用,从事单片机开发的工程师,经常要对其所设计单片机程序及其外围电路进行实物模拟和调试,非常不便,开发效率相对不高。
随着EDA(Electronic Design Automation)技术的飞速发展,采用仿真软件完成单片机系统的开发已经成为开发设计人员一种必不可少的手段。
Multisim是美国国家仪器(NI)有限公司推出的以Windows为基础的仿真工具,适用于模拟、数字电路和MCU(Micro Controller Unit)的设计工作,具有丰富的仿真分析能力。
1.Multisim软件简介Multisim具有较为详细的电路分析手段,也拥有强大的MCU模块,支持单片机及其外围设备的仿真,所建项目支持C代码、汇编代码,包含断点设置、查看和编辑内部RAM、特殊功能寄存器等高级调试功能。
同时强大的数字仪器和数字分析环境,给用户提供了一个操作便捷、使用方便、效果突出的仿真平台。
使用Multisim可交互式地搭建电路原理图,并对电路行为进行仿真。
通过Multisim和虚拟器技术,使用者可以完成从理论到原理图捕获与仿真,再到原型设计和测试这样一个完整的综合设计流程,Multisim软件使模拟电路、数字电路、MCU设计及仿真更为方便,并且广泛的被广大设计和开发人员使用。
2.用Multisim软件进行设计仿真下面将以图1为例,介绍如何用Multisim软件进行单片机辅助开发,并以此说明采用Multisim仿真的基本应用方法。
基于Multisim 10和Keil C51的单片机仿真
计算机时代2010年第1期55基于Multisim1O和KeilC51的单片机仿真宋志强,方武(苏州经贸职业技术学院信息系,江苏苏州215009)摘要:阐述了改革传统单片机实验的必要性,介绍了MultisimlO软件的特点和功能,并以流水灯为例,给出了运用仿真软件Multisim10和单片机开发环境KeilC51进行单片机仿真的方法。
该方法可加深学生对单片机应用的理解,提高单片机教学的效果,而且可以锻炼学生软硬件综合设计的能力,激发学生的学习兴趣。
关键词:Multisim10;KeilC51;单片机仿真;流水灯电路SimulationofMCUBasedORMultisim10andKeilC51SONGZhi—qiang,FANGWu(Dept.ofInformation,SuzhouInstituteofTrade&Commerce,Suzhou。
Jiangsu215009,China)Abstract:ThenecessityofreformingtraditionalMCUexperimentsisexpounded,thefeaturesandfunctionsofMultisim10introduced,andtakingflashLEDforexample,theMCUsimulationmethodofusingsimulationsoftwareMultisim10andMCUdevelopmentenvironmentKeilC51isgiven.Themethodnotonlymakestudentsful-therunderstandMCUapplication.improvetheteachingeffectofMCU,butalsotraintheirintegrateddesigncapabilityofhardwareandsoftware,arousetheirlearninginterest.Keywords:Multisim10;KeilC51;simulationofMCU;flashLEDcircuitO引言单片机因其价格、性能方面的优势,已广泛应用于社会各个领域。
Multsim在单片机控制技术课程中的仿真设计
Multsim在单片机控制技术课程中的仿真设计作者:李娜来源:《数字技术与应用》2011年第11期摘要:通过分析Multisim软件基本功能特点,以天津轻工职业技术学院单片机控制技术精品课程实践环节中的交通灯项目为例,分析了其在单片机控制技术中的仿真应用。
关键词:Multisim 单片机控制技术仿真中图分类号:TP391.9 文献标识码:A 文章编号:1007-9416(2011)11-0017-011、引言单片机课程是机电一体化、应用电子技术、自动控制及数控技术应用等专业的一门实用技术骨干课程,它对培养学生的工程思维能力和解决问题的能力具有重要作用。
通过该课程的学习,学生可以较系统地掌握汇编语言编程、单片机基本原理、接口和应用技术、熟悉单片机技术在工业控制中的应用。
可以培养和锻炼学生动手操作和技术创新的能力,使得学生能紧跟计算机技术的发展脚步,为将来从事自动控制以及应用电子产品的检测和维修等工作奠定坚实的基础,为各种智能化产品的设计开发提供技术准备。
天津轻工职业技术学院单片机控制技术课程在2008年被评为天津市级精品课程,在教学过程中积累了很多的经验。
传统的单片机实训教学模式,验证性实验占很大的比重。
学生将大部分精力放在了程序设计上,基本硬件电路以及单片机最小应用系统已经封装好在实验台上了,学生对单片机的结构、外围电路连接方法以及注意事项等印象不深,教学效果不理想。
由于体积小、实验台不易管理等问题,单片机实训装置每年都需要大量的人力物力去维护和修缮,鉴于此,模拟仿真的教学环境就显得尤为重要。
2、Multisim软件功能特点Multisim的前身是IIT公司的EWB软件。
IIT在2006年被美国NI公司收购后,推出了Multisim 9,2007年又发行了Multisim 10,是全球独一无二的交互式电路仿真软件。
Multisim具有友好的用户界面,操作方便,具有数字、模拟及数字/模拟混合电路的仿真能力;电路分析手段完备,不仅提供11种常用测试仪表对电路进行测试,同时还提供了电路直流工作点分析、瞬态分析、失真分析等15种常用的电路仿真分析方法。
基于MULTISIM的单片机仿真
单片机体积小,质量轻,具有很强的灵活性,而且价格也不高,从而得到越来越广泛的应用。
其中以Inter公司推出的8051 /8052芯片最基础、最普及、最常用。
8051 /8052在小、中型开发场合应用很广,已成为单片机领域的标准。
在电子仿真软件Multisim10中,也引入了单片机仿真内容,且它的模块型号就是最常见和应用广泛的8051 /8052。
在Multisim10中, 8051 /8052 不但可以用汇编语言编写程序,同时也支持C语言编写程序,拓展了单片机8051 /8052的使用,使虚拟仿真显得更加灵活和实用。
下面以一个具体的发光二极管闪烁应用例子来说明(用C语言编写程序) ,详细介绍如何实现Multisim10单片机仿真,计数器的电路原理图如图1所示。
图1发光二极管闪烁电路原理图1组建仿真电路<fontsty����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������a="" componet”对话框的“family”栏中先选取“805x”,="" 然后在“componet”栏下选取“8052”,最后单击对话框右上角的“ok”按钮。
<="" font="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><fontsty����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������a="" componet”对话框的“family”栏中先选取“805x”,="" 然后在“componet”栏下选取“8052”,最后单击对话框右上角的“ok”按钮。
基于Multisim10的单片机动态显示仿真技术论文
基于Multisim10的单片机动态显示仿真技术论文Multisim10是美国国家仪器公司(NI,National Instruments)推出的计算机电子仿真软件。
Multisim10实现计算机仿真时设计和实验用的元器件和测试仪器和仪表齐全,可以完成各种类型的电路设计与实验;可以方便地对电路参数进行测试和分析;设计与实验可以同步进行,可以边设计边实验,修改调试方便;可直接打印输出实验数据、测试参数、曲线和电路原理图;实验中不消耗实际的元器件,实验所需的元器件和数和数量不受限制,实验本钱低,实验速度快,效率高;设计和实验成功的电路可以直接在产品中使用。
Multisim10版本可用于单片机和可编程逻辑器件的仿真分析,为单片机系统的仿真设计提供了较好的解决方案。
multisim10提供了805x、PIC、RAM和ROM等4个系列的单片机芯片和可编程逻辑器件,使得该软件的实际应用得到了大大的增强。
本文使用Multisim10为辅助设计工具,做以单片机8051为中心的单片机动态显示电路的仿真设计。
显示单元是单片机常见的控制功能,但凡遇到显示输出时都会用到显示单元,如数字管的显示,点阵的显示等。
为了提高单片机输入输出端口的效率,一般显示单元都使用动态显示技术。
所谓动态显示方式,就是一位一位地轮流点亮各个数码管(动态扫描方式)。
对于每一位数码管来说,每隔一定时间点亮一次,当扫描的时间间隔足够小时,利用人的视觉暂留特性,观察者就不会感到数码管的闪烁,看到的现象是所有的数码管一起发光,就如同看电影的道理一样。
如果要做4个数码显示管的动态显示时,其实现方法是将所有的数码管的a......g连接在一起,接在单片机的某个输出端口上,各个数码管的公共端作为片选信号接在单片机的另一个输出端口上,这样做可以大大地节省了硬件资源。
单片机模块8051的工作电源电压为5V; Multisim10中的8051模块内部已经具备了12MHz,所以仿真外围电路可以省略晶振;故其最小系统需要加一只电容和一只电阻,实现单片机的上电复位功能。
基于Multisim的单片机仿真
Multisim补充实验二:以单片机8051为核心的交通灯控制电路的仿真如今的电子电路已经很少再由若干个硬件器件拼接而成,而更多的则是以单片机、DSP、FPGA或ARM等可编程器件为核心,进行相关的编程处理再辅以适当的外围电路来设计实现。
Multisim从9.0版本开始,加入了MCU(Microprocessor Control Unit,,微处理机控制器)模块,使得该软件的实际应用能力得到了大大地增强。
本例将通过以单片机8051为核心的交通灯控制电路的仿真设计说明其基本应用方法。
(注:本例选自黄培根等编著《Multisim10计算机虚拟仿真实验室》一书,北京:电子工业出版社,2008。
如对MCU仿真设计有兴趣,还可参考聂典主编《Mumsim 9计算机仿真在电子电路设计中的应用》P460~472之范例。
)一、设计要求和分析在道路的十字路口,为了有序地指挥车辆和行人正常通行,都架有红绿灯,“红灯停,绿行”,这是大家所熟悉的交通规则。
实际的交通灯控制,除了红绿灯之外,在红绿灯之间还有一盏黄灯,它起一个过渡作用,即由红灯转换为绿灯或由绿灯转换为红灯之前,黄灯先闪亮几下,提醒正在通行的车辆行人加快通过道口,绿灯即将灭,红灯即将亮;同时也提醒另一方向正在路口等待的车辆行人,红灯即将灭,绿灯即将亮,准备通行;黄灯闪烁几次后,红灯亮转换为绿灯亮或绿灯转换为红灯亮。
根据以上十字路口红、黄、绿灯的工作情况,我们采用单片机模块8051实现交通灯控制。
单片机模块8051需要的工作电源电压为5V;由于模块内已备晶振(默认振荡频率为12MHz),所以仿真外围电路可以省略晶振;外围需要加一只电容和一只电阻,实现单片机的上电复位功能;单片机输出利用Mumsim 10.1元件工具条中的3D元件,红色、黄色和绿色发光二极管各4只,组成南北方向和东西方向的指示灯,形象直观、生动有趣。
交通灯控制框图如图1所示,交通灯控制电路原理图如图2所示。
基于multisim10的单片机仿真设计研究
基于multisim10的单片机仿真设计研究摘要介绍了利用multisim10设计单片机的理论、方法和过程。
利用软件来设计单片机系统的电路图、源程序,并通过不同的手段仿真分析系统,并获得了比较理想的效果。
关键词Mulitsim10;单片机;仿真Multisim是目前高校和科研部门中应用最多的电子电路仿真软件,它有极强的仿真功能,界面友好,形象的“虚拟仪表”,使它成为迄今为止使用最方便,最直观的仿真软件之一。
自Multisim9以后,NI Multisim就致力于完善MCU单片机仿真的开发,而NI Multisim10开始它拥有了强大的MCU模块,支持4种类型的单片机芯片,支持对外部RAM、外部ROM、键盘和LCD等外围设备的仿真,分别对4 种类型芯片提供汇编和编译支持;所建项目支持C代码、汇编代码以及16进制代码,并兼容第三方工具源代码;包含设置断点、单步运行、查看和编辑内部RAM、特殊功能寄存器等高级调试功能。
再加上其强大的数字仪器环境和数字分析环境,使其成为为数不多的经典单片机仿真软件之一。
1 Multisim 10中单片机系统电路设计为了说明Multisim10强大的单片机系统仿真设计功能,在此选择了单片机串并口转换LED显示电路作为对象。
本设计利用单片机与七段数码显示器,通过4个串联的串入/并出移位寄存器74LS164直接驱动,该电路可以同8051单片机的串行口(或两根I/O线)直接相连,通过串行口将显示段码逐位送出,并用四个数码管同时显示四位十进制数。
在Multisim原理图设计文件中调用丰富的元件库并绘制电路图如图1所示:2 Multisim10中的程序设计2.1在总的工程下面建立原理图/MCUworkspace/protject/.asm汇编程序设计文件,分支结构如图2所示:2.2在main.asm文件中编写程序代码如下:$MOD51; This includes 8051 definitions for the Metalink assembler;(Multisim10编译汇编语言必须要写TABLE:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H;0~~9的段码表END3 Multisim 10中单片机系统电路仿真3.1在源文件里选择build进行编译,并顺利通过,即在软件平台上将源程序与硬件电路融为一体。
第11章 基于Multisim的51单片机应用系统设计
40 41
42 43 44 1 2 3 4 5 7 8 9 10 11 12
13 14
15 16
P1B0T2 P1B1T2EX P1B2 P1B3 P1B4 P1B5MOSI P1B6MISO P1B7SCK RST P3B0RXD P3B1TXD P3B2INT0 P3B3INT1 P3B4T0 P3B5T1 P3B6WR P3B7RD XTAL2 XTAL1 GND
MOV TH0, #06H ;赋定时器初值为06H,计数250次溢出
MOV TL0, #06H
SETB P0.1
;P0.1置1
CLR P0.0
;P0.0置0
SETB TR0
;启动定时器
D5B1:JBC TF0, Y5B1 ;检测首次500µs
AJMP D5B1
Y5B1:SETB P0.0
;P0.0置1
⑷编制汇编程序
$MOD51 ORG 1000H ;主程序
;Metalink 汇编器包含对8051的定义 ;汇编程序存放地址
MAIN: START: SETB P3.4 ;P3.4初值为1
SETB P0.0 ;P0.0初值为1 CLR P0.1 ;P0.1初值为0
LOOP: MOV TMOD, #06H ;设T0方式2,外部计数
A8
A9
A10
A11
BUS1
A12
W
G E1 E2
HM1-65642-883
Ln1 Ln2 Ln3 Ln4 Ln5 Ln6 Ln7 Ln8
XLA1
1
Ln10 Ln11 Ln12
Ln8 Ln7 Ln6 Ln5 Ln4 Ln3 Ln2 Ln1 Ln13 Ln14 Ln8 Ln7 Ln6 Ln5 Ln4 Ln3 Ln2 Ln1
NI Multisim 10软件在单片机学习中的应用
NI Multisim 10软件在单片机学习中的应用
陈瑞旭;张亚学;陈可中
【期刊名称】《广西大学学报(自然科学版)》
【年(卷),期】2007(032)0z2
【摘要】重点介绍用电路仿真软件EWB的最新版本Multisim 10对单片机(51系列)做实时仿真;利用该软件可以随时随地进行单片机实验,这对单片机的学习和提高都有很大的帮助.
【总页数】3页(P268-270)
【作者】陈瑞旭;张亚学;陈可中
【作者单位】广西大学,物理科学与工程技术学院,广西,南宁,530004;广西大学,物理科学与工程技术学院,广西,南宁,530004;广西大学,物理科学与工程技术学院,广西,南宁,530004
【正文语种】中文
【中图分类】TP319
【相关文献】
1.仿真软件NI Multisim10在中职学校《电子线路》课程教学中的应用 [J], 刘小明
2.NI Multisim 10在通信电子电路课程学习中的应用 [J], 李征明;丛伟波
3.Multisim10仿真软件在单片机实践教学中的应用 [J], 王超
4.Multisim10软件在单片机C语言协同仿真中的应用 [J], 潘启勇;陈海龙
5.NI Multisim 10软件在单片机学习中的应用 [J], 陈瑞旭;张亚学;陈可中
因版权原因,仅展示原文概要,查看原文内容请购买。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于multisim的单片机设计(C语言版)
51单片机是对目前所有兼容Intel 8031指令系统的单片机的统称。
该系列单片机的始祖是Intel的8031单片机,后来随着Flash rom技术的发展,8031单片机取得了长足的进展,成为目前应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。
目前很多公司都有51系列的兼容机型推出,在目前乃至今后很长的一段时间内将占有大量市场。
51单片机是基础入门的一个单片机,还是应用最广泛的一种。
需要注意的是52系列的单片机一般不具备自编程能力。
实现发光二极管的流水线发光,如下图:
程序代码;
#include<htc.h>
void time(unsigned int i)
{while(i--);}
main()
{
while(1)
{time(10);
P1=0xfe;
time(10);
P1=0xfd;
time(10);
P1=0xfb;
time(10);
P1=0xf7;
time(10);
P1=0xef;
time(10);
P1=0xdf;
time(10);
P1=0xbf;
time(10);
P1=0x7f; }
}。