当前位置:首页 > 单片机 > 单片机
[导读]一、 实验目的 熟悉并掌握Multisim10对单片机的仿真过程。 加深对单片机硬件以及软件理论知识的理解。二、 实验原理 1、Multisim10 美国国家仪器公司下属的ElectroNIcs Workbench Group在今年年初发布了Multisim

一、 实验目的
熟悉并掌握Multisim10对单片机的仿真过程。
加深对单片机硬件以及软件理论知识的理解。

二、 实验原理
1、Multisim10
美国国家仪器公司下属的ElectroNIcs Workbench Group在今年年初发布了Multisim 10。新版的Multisim10,加入了MCU模块功能,可以和8051等单片机进行编程联调,该软件元件丰富,界面直观,虚拟仪器的逼真度达到了让人相当高的程度,是电子设计、电路调试、虚拟实验必备良件。
工程师们可以使用Multisim 10交互式地搭建电路原理图,并对电路行为进行仿真。Multisim提炼了SPICE仿真的复杂内容,这样工程师无需懂得深入的SPICE技术就可以很快地进行捕获、仿真和分析新的设计,这也使其更适合电子学教育。通过Multisim和虚拟仪器技术,PCB设计工程师和电子学教育工作者可以完成从理论到原理图捕获与仿真再到原型设计和测试这样一个完整的综合设计流程。
下面将简单介绍一下Multisim10刚加进来的MCU模块的使用方法。
双击桌面上的multisim10图标,由于软件比较大,需要等待一定的时间才能进入以下界面(图一):
 
图一

Multisim10界面和Office工具界面相似,包括标题栏、下拉菜单、快捷工具、项目窗口、状态栏等组成。
标题栏用于显示应用程序名和当前的文件名。下拉菜单提供各种选项。
快捷工具分为:文件工具按钮,器件工具按钮,调试工具按钮,这些按钮在下拉菜单中都有,并经常用到,现在放在工具栏里是为了方便使用。
项目窗口中的电路窗口是用来搭建电路的,Design Toolbox工具栏是用来显示全部工程文件和当前打开的文件。
状态栏用于显示程序的错误和警告,如果有错误和警告那还还需要重新修改程序。直到没有错误为止才能正常加载程序。
在电路窗口的空白处点击鼠标右键,将出现如下菜单(图二):
 
图二
菜单包括:放置元件(place component)、连接原理图(place schematic)、放置图形(place graphic)、标注(place comment)等,这里我们最常用到的只有第一个放置元件:
点击菜单中第一个选项或者按“CTRL+W”会出现以下元器件选择对话框(图三):
 
图三
在Group中选择我们需要的器件的类别,在Family中选择我们需要的器件,点击“OK”即可。在选择805X和PIC等可编程器件时会出现如下对话框(图四):
 
 图四
这时我们只要在“Please enter the workspace name”中输入英文的文件名就可以点击“Next”进入第二步(图五):
 
图五
在第二步中要选择的是:在“Programming language”中选择“ Assembly”,表示用汇编语言编写,如果选择“C”则表示用用C语言编写。点击“Finish”,完成了对单片机的设置。那么在软件界面左边的“Design Toolbox”中会出现新的文件,如下图(图六)所示:
 
 图六
点击Circuit1项目窗口即显示电路窗口(图七):
 
图七
点击main.asm,项目窗口中就显示编程窗口(图八): 
 
图八
回到电路窗口,按照下图选择元器件,并且按照下图(图九)将电路连接好:
 
图九
连好电路图以后,点击main.asm来到编程窗口(图十)进行程序的编写:
 
图十
程序写在“$MOD51”和“END”之间(图十一): 
 
图十一
程序写完以后要进行程序载入,用鼠标右键点击Design Toolbox栏里的main.asm,选择“Build”,然后在软件的最下方的“Spreedsheet View”栏中会显示编程的错误和警告,如果出现错误会在该栏中显示并显示出错的具体位置,那么我们要回到编程窗口找到错误并修改,一直修改到0错误和0警告为止(图十二)。
 
图十二
    以上工作完成以后,我们回到电路窗口,找到快捷工具栏中的“RUN”按钮(图十三中的第一个按钮)
 
图十三
    按下“RUN”以后电路窗口中的LCD就开始显示了(图十四):
 
图十四

2、LCD的引脚和时序
  
1、VCC 接电源 +5V。
2、CV  接电源 +5V 调节显示屏灰度的,调节该端的电压,可改变显示屏字符颜色的深浅。(具体实物要看厂家的数据手册,有些VO要求接地)
3、GND 电源地,接地。
4、E  信号使能,E由1 -> 0的下降沿有效,LCD对RS和DATA进行取样和执行操作。
5、RS   数据/命令选择端,1-数据、0-指令。
6、RW  读写选择,1-读、0-写,如果LCD函数没有用到这个IO口的话就把它接地。
7、D7~D0  Data I/O,接单片机的IO口,用于输入数据或者指令。
LCD开始工作第一步要进行初始化,初始化程序:
CLR P3.0;LCD
SETB P3.1
MOV P1,#03H
CLR P3.1
SETB P3.1
MOV P1,#0CH
CLR P3.1
SETB P3.1
MOV P1,#06H
CLR P3.1
初始化以后就可以进行指令和数据的读写了。
第一次显示数据以后要进行第二次数据显示,则需要进行清屏,清屏程序:
CLR P3.0;LCD
SETB P3.1
MOV P1,#01H
CLR P3.1
SETB P3.0
接下去就可以再次进行数据和指令的读写了。
3、实现的功能
本次实验要求实现基于单片机的LCD显示,LCD分两次显示,第一次显示“0123”第二次显示“456789A”。LCD采用08x1的液晶显示器,单片机采用8051。


三、实验内容
1、建立工程存放文件夹:
打开“我的文档”,在National Instruments文件夹中打开Circuit Design Suite 10.0,然后在MCU Workspaces文件夹中新建一个文件夹,文件名为project。
2、双击桌面上的Multisim10的图标,软件打开需要等待一定的时间。
3、设置:
点击菜单栏中的“Options”,选择“sheet properties”,在Circuit中的 “NET names”栏里选中“Hide All”,然后再点击Workspace,在“Sheet size”栏中选择“A4”,点击“OK”。
4、保存工程文件:
点击File中的Save,在弹出的对话框中点击MCU Workspaces,然后点击自己新建的project文件夹,然后点击“保存”。
5、选择元器件:在空白纸上点击右键,然后选择“Place Component”,在弹出的对话框中的“Group”中选择“MCU Module”,然后在“family”中选择“805X”中的“8051”,点击“OK”,在图上适合的位置点击左键,在弹出的对话框中点击“Browse”,在“我的文档”中找到刚新建的project文件夹,点击该文件夹,然后点击确定。在“Please enter the work space name”中输入文件名“project”,点击“Next”,在“Programming language”中选择“Assembly”,然后点击“Finish”。
接着在“Group”中选择“Basic”,在“Family”中选择“RESISTOR”,在Component中点击“10K”电阻,点击“OK”,在适合的位置点击左键即可。
然后在“Family”中选择“CAPACITOR”,选择一个“10u”和两个“30p”的电容,然后放置到图纸上。
接着在“Group”中选择“Sources”,在“Family”中选择“POWER_SOURCES”,点击放置四个“DGND”和两个“VCC”。
然后在“Group”中选择“Advanced Peripherals”,在“LCDS”中选择“LCD_DISPLAY_08x1”,并放置在图纸的适当位置。
接着在“Group”中选择“Misc”,在“CRYSTAL”中选择“HC-49/U_25MHz”的晶振,放置在图纸上。
6、按照图9所示,连接好单片机的外围电路图并点击File中的Save:
7、保存好以后,在左侧的“Design Toolbox”中左键单击“Circuit1”前面的“+”号,然后一直点击“+”号,一直找到“main.asm”,双击该文件,在原图纸栏出现了编程界面,然后在该界面中输入以下程序:
    8、程序:
$MOD51 ; This includes 8051 definitions for the metalink assembler
ORG 0000H
CLR P3.0;LCD初始化
SETB P3.1
MOV P1,#03H
CLR P3.1
SETB P3.1
MOV P1,#0CH
CLR P3.1
SETB P3.1
MOV P1,#06H
CLR P3.1

SETB P3.0;对LCD写数据
SETB P3.1
MOV P1,#30H
CLR P3.1
SETB P3.1
MOV P1,#31H
CLR P3.1
SETB P3.1
MOV P1,#32H
CLR P3.1
SETB P3.1
MOV P1,#33H
CLR P3.1

CLR P3.0;LCD清屏
SETB P3.1
MOV P1,#01H
CLR P3.1
SETB P3.0

SETB P3.1;第二次对LCD写数据
MOV P1,#34H
CLR P3.1
SETB P3.1
MOV P1,#35H
CLR P3.1
SETB P3.1
MOV P1,#36H
CLR P3.1
SETB P3.1
MOV P1,#37H
CLR P3.1

SETB P3.1
MOV P1,#38H
CLR P3.1
SETB P3.1
MOV P1,#39H
CLR P3.1
SETB P3.1
MOV P1,#41H
CLR P3.1
SJMP $
END
    9、程序输入完成后,再用鼠标右键点击右边的“Design Toolbox”中的“main.asm”文件,点击出现的菜单中的“Build”。在最下方的窗口中提示0错误和0警告以后,即可点击“Design Toolbox”中的“Circuit1”,然后点击工具栏中的开关按钮“Run”,在弹出的对话框中点击“YES”,程序就开始执行,LCD开始显示。

四、实验报告与思考题
详细描述实验的过程,如实纪录本实验中间步骤和最终结果,还应纪录实验过程中的不正常现象以及解决办法。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

● 颠覆性的专用软硬件加速平台;利用GPU和CPU计算以及专有软件算法,提高准确度、速度和规模的同时,带来高达100倍的设计效率提升; ● 与传统HPC相比,支持GPU-resident模式的求解器可将仿真能效显著提高2...

关键字: AI 仿真

● 热、应力和电子散热设计同步分析,让设计人员可以无缝利用ECAD和MCAD对机电系统进行多物理场仿真; ● 融合FEM和CFD引擎,应对各种热完整性挑战——从芯片到封装,从电路板到完整的电子系统; ● Celsius...

关键字: AI 仿真

具有高采样率的泰克任意波形发生器(AWG)是功能多样且强大的仪器,可以提高脉冲激光实验的质量和效率,为以前所未有的精度和灵活性创建和操作光脉冲提供了多种可能性。

关键字: 仿真 测试测量

● 四态硬件仿真应用可加速需要X态传播的仿真任务; ● 实数建模应用可加速混合信号设计软件仿真; ● 动态功耗分析应用可将复杂SoC的功耗分析任务加快5倍。

关键字: 仿真 SoC

目前,中国市场HiL技术主要应用于汽车、航空航天、国防、能源、电力电子等产业,2016年-2028年市场规模复合增长率达18.5%,预计2028年中国HiL模拟行业市场规模达到273亿元,其中尤以汽车行业HiL应用市场规...

关键字: 仿真 汽车电子

在今年的泰克创新论坛上,我与新思科技(Synopsys)的Madhumita Sanyal和安立公司(Anritsu)的Hiroshi Goto一起讨论了最新PCIe版本面临的挑战,以及PCIe 7.0可能面临的挑战。

关键字: 仿真

近日,第11届EEVIA年度中国硬科技媒体论坛暨产业链研创趋势展望研讨会在深圳召开,上海合见工业软件集团产品工程副总裁孙晓阳在会上发布了主题为“把握芯片设计关键核心,助力国产EDA新格局”的演讲。

关键字: 芯片设计 仿真 验证 chiplet 合见工软 IP

常州2023年9月25日 /美通社/ -- 9月23日,由江苏省商务厅指导,世界中餐业联合会、常州市人民政府主办的"第三届中华节气菜大会暨首届江南美食节"在江苏常州开幕。文化和旅游部国际交流与合作局一...

关键字: BSP 可持续发展 大赛 质量控制

北京2023年9月25日 /美通社/ -- 9月21日,由中国质量报刊社·中国质量新闻网主办的第六届食品高质量发展交流会在北京举行,会议主题为"高质量,新生活",旨在推动食品行...

关键字: 自动化 BSP ISO9001 NAS

北京2023年9月23日 /美通社/ -- 近日,主线科技正式获准在北京市智能网联汽车政策先行区道路开启常态化测试与示范,将与物流客户在真实开放的城区道路场景中,率先开启基于L4级别自动驾驶能力的智能卡车运输示范。 随...

关键字: 智能卡 测试 高速公路 BSP
关闭
关闭