基于mulitisim交通灯论文.docx

上传人:b****7 文档编号:16429888 上传时间:2023-07-13 格式:DOCX 页数:9 大小:408.11KB
下载 相关 举报
基于mulitisim交通灯论文.docx_第1页
第1页 / 共9页
基于mulitisim交通灯论文.docx_第2页
第2页 / 共9页
基于mulitisim交通灯论文.docx_第3页
第3页 / 共9页
基于mulitisim交通灯论文.docx_第4页
第4页 / 共9页
基于mulitisim交通灯论文.docx_第5页
第5页 / 共9页
基于mulitisim交通灯论文.docx_第6页
第6页 / 共9页
基于mulitisim交通灯论文.docx_第7页
第7页 / 共9页
基于mulitisim交通灯论文.docx_第8页
第8页 / 共9页
基于mulitisim交通灯论文.docx_第9页
第9页 / 共9页
亲,该文档总共9页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于mulitisim交通灯论文.docx

《基于mulitisim交通灯论文.docx》由会员分享,可在线阅读,更多相关《基于mulitisim交通灯论文.docx(9页珍藏版)》请在冰点文库上搜索。

基于mulitisim交通灯论文.docx

基于mulitisim交通灯论文

 

基于mulitism交通灯管理系统

 

学院:

电子信息工程学院

班级:

姓名:

学号:

指导老师:

 

摘要:

阐述了mulitism10软件的特点和功能,并以交通灯管理控制器为例,给出了运用软件mulitism10和单片机开发环境keilc51进行单片机仿真的方法。

关键词:

mulitism10;keilc51;单片机仿真;交通灯管理控制器;

1、引言

单片机因其价格,性能方面的优势,已广泛应用于社会各个领域。

所以学习单片机的应用极其重要。

然而单片机实验箱的硬件固定,功能单一,价格昂贵,不适于普通学生的学习。

而mulitism10的出现就较好的解决了这些问题。

它与keilc51结合起来搭建单片机应用系统,可以提供虚拟的硬件仿真。

1、mulitism10介绍

mulitism10软件是美国国家仪器推出的电子电路仿真软件,是目前最新版本。

它在原有基础上更新或改进了某些功能。

(1)提升了mulitism的易用性。

操作界面简洁友好,用户点击鼠标就可以完成元件的选择,拖动,连线以及查看仿真结果。

(2)增加了电路元件库。

扩充了mcu模块,提供了包裹Intel,Atmel8051/8052和MicrochipPIC16F84a和单片机系统的仿真。

若没有用户想要的元件,可以利用VHDL,VerilogHDL或SPICE增添新元件。

(3)加强了对于汇编和c语言的支持,增加了反汇编功能,以及调试功能,包括设置断点,单步执行,查看存储器,改写内存等。

(4)提供了为SPICE和MCU的综合仿真环境,设计者可以在设计流程中对电路设计进行验证,使设计更加简洁。

(5)增加部分3D实物元件和面包板,便于教学使用,给学生更直观的感觉。

 

2、交通灯管理控制器设计

(一)设计要求

设计一交通管理控制器。

要求等的亮灭情况如下表所示。

Pb_no为特殊功能按钮,此键按下时,表示全部让行。

红灯_1

黄灯_1

绿灯_1

红灯_2

黄灯_2

绿灯_2

时间

8秒

2秒

8秒

2秒

Pb_NO按下时

(二)设计思路

运用单片机定时器0定时,在SWITCH语句中判断并显示此时灯的亮灭情况。

(三)mulitism中的操作步骤

(1)启动mulitism10之后,点一下工具栏上的“placeMCUModule”按钮,在弹出的“SelectaComponent”对话框中点击“OK”按钮(系统默认选择的是8051单片机)。

(2)接着对MCUWizard的三个步骤进行合理的设置,以便有利于接下来的仿真。

在MCUWizard导航栏的第一个步骤中要设置好工作组(workspace)的存放路径,工作组名(workspacename);在第二,三个步骤中要设置好项目类型(projecttype)和工程名(projectname)等。

其中项目类型“standard”(标准)表示通过mulitism10编写汇编语言或c语言源程序,并进行编译;“LoadExternalHexFile”(加载外部Hex文件)表示可以在Keilc51等环境下编写汇编语言或c语言源程序,然后生成Hex文件通过加载外部Hex文件导入。

在此选择“LoadExternalHexFile”。

步骤一

步骤二

步骤三

(3)从mulitism10元件库中找到其它外围电路所需的元件,按照设计要求连接电路。

电路连接如图所示。

3、仿真与调试

在keilc51中编辑好程序,生成Hex文件后,便可以在mulitisim10中加载这个文件了。

为此,可以选中mulitism10主界面左上角的“DesignToolbox”中的项目名,按右键,在右键菜单里选择“MCUCodeManager”菜单项,或选中MCU元件右键菜单的“Properties”菜单项,再点击弹出对话框的“Code”选项卡的“Properties..”按钮,在调出的“MCUCodeManager”对话框中选择Hex文件。

完成上述操作后就可以开始仿真了。

点一下运行(Run)按钮即可查看到仿真结果。

如图所示。

4、交通灯管理控制器源程序

#include

#defineucharunsignedchar

#defineuintunsignedint

sbitred_1=P1^0;

sbityel_1=P1^1;

sbitgrn_1=P1^2;

sbitred_2=P1^3;

sbityel_2=P1^4;

sbitgrn_2=P1^5;

sbitpb_no=P3^3;

ucharcount,time,flag;

/*voiddelayms(uintms)

{

uinti,j;

for(i=ms;i>0;i--)

for(j=110;j>0;j--);

}*/

voidtime0_init()

{

TMOD=0X01;

EA=1;

ET0=1;

TR0=1;

TH0=(65536-45872)/256;

TL0=(65536-45872)%256;

}

voidmain()

{

P1=0xff;

pb_no=1;

time0_init();

while

(1)

{

if(pb_no)

{

switch(flag)

{

case0:

red_1=0;yel_1=1;grn_1=1;red_2=1;yel_2=1;grn_2=0;break;

case1:

red_1=0;yel_1=1;grn_1=1;red_2=1;yel_2=0;grn_2=1;break;

case2:

red_1=1;yel_1=1;grn_1=0;red_2=0;yel_2=1;grn_2=1;break;

case3:

red_1=1;yel_1=0;grn_1=1;red_2=0;yel_2=1;grn_2=1;break;

}

}

else{red_1=1;yel_1=1;grn_1=0;red_2=1;yel_2=1;grn_2=0;}

}

}

voidtime0()interrupt1

{

TH0=(65536-45872)/256;

TL0=(65536-45872)%256;

count++;

if(count==20)

{count=0;time++;}

if(time==8)flag=1;

if(time==10)flag=2;

if(time==18)flag=3;

if(time==20){flag=0;time=0;}

}

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2