有关汽车尾灯的完整数字逻辑课程设计报告Word下载.docx

上传人:b****8 文档编号:22710936 上传时间:2023-02-05 格式:DOCX 页数:15 大小:75.52KB
下载 相关 举报
有关汽车尾灯的完整数字逻辑课程设计报告Word下载.docx_第1页
第1页 / 共15页
有关汽车尾灯的完整数字逻辑课程设计报告Word下载.docx_第2页
第2页 / 共15页
有关汽车尾灯的完整数字逻辑课程设计报告Word下载.docx_第3页
第3页 / 共15页
有关汽车尾灯的完整数字逻辑课程设计报告Word下载.docx_第4页
第4页 / 共15页
有关汽车尾灯的完整数字逻辑课程设计报告Word下载.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

有关汽车尾灯的完整数字逻辑课程设计报告Word下载.docx

《有关汽车尾灯的完整数字逻辑课程设计报告Word下载.docx》由会员分享,可在线阅读,更多相关《有关汽车尾灯的完整数字逻辑课程设计报告Word下载.docx(15页珍藏版)》请在冰豆网上搜索。

有关汽车尾灯的完整数字逻辑课程设计报告Word下载.docx

当汽车往前行驶时(此时两个开关都未接通),6盏灯全灭。

当汽车转弯时,若右转弯(即右转开关接通),右边的3盏尾灯从左至右顺序亮灭,左边3盏灯全灭;

若左转弯(即左转开关接通),左边的3盏尾灯从右至左顺序亮灭,右边3盏灯全灭。

当左、右两个开关同时接通时,6盏尾灯同时明、暗闪烁。

二、开发工具选择

采用硬件描述语言VHDL进行描述,依靠计算机,借助EDA开发工具,实现系统功能。

三、设计方案

(1)、以Opencarcar作为总控制开关,当Opencarcar为1时,汽车解锁,汽车启动,此时车灯闪烁以两个开关L、R为控制信号,分别控制汽车的行驶、刹车、左转以及右转。

如下图:

当总控制开关Opencarcar为1,汽车启动,车灯闪烁3秒。

车灯

脉冲

L[0]

L[1]

L[2]

R[0]

R[1]

R[2]

1

2

1

(2)、当总控制开关Opencarcar为1,汽车向前行驶,LR=00,6盏灯全灭,即L[0]L[1]L[2]=000,R[0]R[1]R[2]=000;

当总控制开关Opencarcar为0,汽车向前行驶时,车灯全灭。

(3)、当总控制开关Opencar为1,汽车刹车,LR=11,6盏灯闪烁,即L[0]L[1]L[2]=000←->

111,R[0]R[1]R[2]=000←->

111;

当总控制开关Opencarcar为0,汽车刹车时,车灯闪烁。

(4)、当总控制开关Opencarcar为1,汽车左转,LR=10,左边的3盏尾灯从右至左顺序亮灭,右边3盏灯全灭;

当总控制开关Opencarcar为1,汽车左转时左边的3盏尾灯从右至左顺序亮灭,右边3盏灯全灭。

3

4

(5)、当总控制开关Opencarcar为1,汽车右转,LR=01,右边的3盏尾灯从左至右顺序亮灭,左边3盏灯全灭;

当总控制开关Opencarcar为1,汽车右转时右边的3盏尾灯从左至右顺序亮灭,左边3盏灯全灭。

(6)、底层文件描述闪烁过程

用单独的实体实现计时模块,实现车灯闪烁和亮灭要求亮0.5秒灭1秒。

四、模块描述

总模块1:

顶层文件设计,实现汽车开启时解锁,车灯闪烁3秒;

汽车向前行驶,车灯全灭,汽车刹车时车灯闪烁,汽车转弯时相应车灯闪烁.

总模块2:

底层文件设计,实现汽车开启时,解锁,车灯闪烁3秒.用模6计数原理.

IF(CP'

EVENTANDCP='

0'

)THEN--下降沿出触发

IFOpencarcar='

1'

THEN--汽车解锁,车灯闪烁。

IFQ<

5THEN

caseQis

when"

000"

=>

L<

="

111"

;

R<

001"

010"

011"

100"

101"

whenOTHERS=>

Q<

endcase;

=Q+1;

ELSEQ<

ENDIF;

总模块3:

底层文件设计,实现汽车锁定,汽车行驶,车灯全灭,汽车刹车,车灯闪烁,汽车转弯车灯相应闪烁.

模块1:

当总控制开关Opencarcar为1,汽车向前行驶,LR=00,6盏灯全灭。

IFadder=”00”THEN

=”000”;

模块2:

总开关Opencarcar为1时,汽车刹车,LR=11,6盏灯闪烁。

ELSIFOpencarcar='

ANDadder="

11"

THEN--汽车刹车

模块3:

总开关Opencarcar为1时,汽车左转,LR=10,左边的3盏尾灯从右至左顺序亮灭,右边3盏灯全灭。

ifL="

then

elsif(L="

)then

elsif(L="

elseL<

R<

endif;

模块4:

总开关Opencarcar为1时,汽车右转,LR=01,右边的3盏尾灯从左至右顺序亮灭,左边3盏灯全灭。

ifR="

elsif(R="

elsif(R="

elseR<

L<

5、VHDL实现

--利用原件例化方法

--顶层文件,汽车尾灯控制系统。

LIBRARYIEEE;

--汽车尾灯控制器设计

USEIEEE.STD_LOGIC_1164.ALL;

USEIEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITYCARLIGHTIS--实体:

一个总控制开关,两个信号控制开关,两个输出信号

PORT(CP:

INSTD_LOGIC;

Opencarcar:

Lift,Right:

L:

BUFFERSTD_LOGIC_VECTOR(2DOWNTO0);

R:

BUFFERSTD_LOGIC_VECTOR(2DOWNTO0);

Q:

BUFFERSTD_LOGIC_VECTOR(2DOWNTO0));

END;

ARCHITECTURECARLIGHT1OFCARLIGHTIS

COMPONENTOpencarmond6--例化说明,汽车解锁,车灯闪烁,计时模块

PORT(CP:

ENDCOMPONENT;

COMPONENTStopCarmond6--例化说明,汽车刹车,车灯闪烁,计时模块

BEGIN

U1:

Opencarmond6PORTMAP(CP=>

CP,Opencarcar=>

Opencarcar,L=>

L,R=>

R,Q=>

Q);

U2:

StopCarmond6PORTMAP(CP=>

Opencarcar,Lift=>

Lift,Right=>

Right,L=>

END;

--底层实体,汽车解锁,车灯闪烁,计时模块

--底层文件,模6计时器

USEIEEE.STD_LOGIC_1164.ALL;

USEIEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITYOpencarmond6IS

ARCHITECTUREONEOFOpencarmond6IS

PROCESS(CP)

BEGIN

IF(CP'

ENDPROCESS;

--底层实体,汽车控制系统实现汽车行驶,转弯,汽车刹车,车灯闪烁,计时模块

ENTITYStopCarmond6IS

ARCHITECTUREONE1OFStopCarmond6IS

SIGNALadder:

STD_LOGIC_VECTOR(1DOWNTO0);

adder<

=Lift&

Right;

--中间信号

PROCESS(adder,CP,Q)--进程

00"

THEN--汽车向前行驶

10"

THEN--汽车左转

01"

THEN--汽车右转

ENDPROCESS;

六、调试仿真

七、课程设计回顾总结

通过这次设计,进一步加深了对EDA的了解,对它有了更加浓厚的兴趣。

特别是当每一个子模块编写调试成功时,心里特别的开心。

但是在编写程序时,遇到了不少问题,首先由于自己对于汽车的发动过程不是很了解,所以汽车解锁和汽车锁定方面存在误区,程序一直运行不成功,在上网查询汽车操作以及在同学帮助下,在细心的检查下,终于找出了错误,排除困难后,程序编译就通过了,仿真文件基本符合这次实验要求。

这次试验总的来说,进行的还算顺利,但在调试过程中,也遇到了一些自己不能解决的问题,通过请教同学,我明白解决的办法,在这次试验中,提高了整体设计和构思的能力,原来在学习过程中不明白的问题,在这次实习中通过自己操作有了进一步的理解,在解决困难的过程中,有点小小的成就感,终于觉得平时所学的知识有了实用的价值,达到了理论和实际相结合的目的,不仅学到了不少知识,而且锻炼了自己的能力,使自己对以后的路有了更加清楚的认识,同时,对未来有了更多的信心。

参考文献

张兴忠数字逻辑和数字系统科学出版社

李景华可编程逻辑器件和EDA技术东北大学出版社

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

当前位置:首页 > 工作范文 > 演讲主持

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1