汽车尾灯的完整数字逻辑课程设计报告.doc

上传人:龙*** 文档编号:4217507 上传时间:2019-10-05 格式:DOC 页数:13 大小:876KB
下载 相关 举报
汽车尾灯的完整数字逻辑课程设计报告.doc_第1页
第1页 / 共13页
汽车尾灯的完整数字逻辑课程设计报告.doc_第2页
第2页 / 共13页
汽车尾灯的完整数字逻辑课程设计报告.doc_第3页
第3页 / 共13页
汽车尾灯的完整数字逻辑课程设计报告.doc_第4页
第4页 / 共13页
汽车尾灯的完整数字逻辑课程设计报告.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、石家庄经济学院 信息工程学院 数字逻辑课程设计报告 题 目 汽车尾灯控制器的设计 成 绩 2010 年 6 月 目 录 1. 功能描述 02 2. 开发工具选择 02 3. 设计方案 02 4 模块描述 04 5. VHDL 实现 07 6. 调试仿真 12 7. 课程设计回顾总结 13 参 考 文 献 14 附录 14 一、功能描述 设计功能描述:存在 6 盏汽车尾灯(汽车尾部左、右各 3 盏),用两个开关作为转弯和刹车 控制信号(一个开关控制右转弯,另一个开关控制左转弯),用一个开关作为汽车车锁开启控制, 打开汽车时车灯闪烁 3 秒钟,才能行驶。 当汽车往前行驶时(此时两个开关都未接通),

2、6 盏灯全灭。当汽车转弯时,若右转弯(即 右转开关接通),右边的 3 盏尾灯从左至右顺序亮灭,左边 3 盏灯全灭;若左转弯(即左转开关 接通),左边的 3 盏尾灯从右至左顺序亮灭,右边 3 盏灯全灭。当左、右两个开关同时接通时, 6 盏尾灯同时明、暗闪烁。 二、开发工具选择 采用硬件描述语言 VHDL 进行描述,依靠计算机,借助 EDA 开发工具,实现系统功能。 三、设计方案 (1) 、以 Opencarcar 作为总控制开关,当 Opencarcar 为 1 时,汽车解锁,汽车启动,此 时车灯闪烁以两个开关 L、R 为控制信号,分别控制汽车的行驶、刹车、左转以及右转。 如下图: 当总控制开关

3、 Opencarcar 为 1,汽车启动,车灯闪烁 3 秒。 车灯 脉冲 L0 L1 L2 R0 R1 R2 1 0 0 0 0 0 0 2 1 1 1 1 1 1 (2) 、当总控制开关 Opencarcar 为 1,汽车向前行驶,L R = 00,6 盏灯全灭,即 L0 L1L2=000,R0R1R2=000; 如下图: 当总控制开关 Opencarcar 为 0,汽车向前行驶时,车灯全灭。 车灯 脉冲 L0 L1 L2 R0 R1 R2 1 0 0 0 0 0 0 2 0 0 0 0 0 0 (3) 、当总控制开关 Opencar 为 1,汽车刹车,L R = 11,6 盏灯闪烁,即 L

4、0L1L2 =000 -111,R0R1R2=000 -111; 如下图: 当总控制开关 Opencarcar 为 0,汽车刹车时,车灯闪烁。 车灯 脉冲 L0 L1 L2 R0 R1 R2 1 0 0 0 0 0 0 2 1 1 1 1 1 1 (4) 、当总控制开关 Opencarcar 为 1,汽车左转,L R = 10,左边的 3 盏尾灯从右至左 顺序亮灭,右边 3 盏灯全灭; 如下图: 当总控制开关 Opencarcar 为 1,汽车左转时左边的 3 盏尾灯从右至左顺序亮灭,右边 3 盏灯全灭。 车灯 脉冲 L0 L1 L2 R0 R1 R2 1 0 0 0 0 0 0 2 0 0

5、1 0 0 0 3 0 1 0 0 0 0 4 1 0 0 0 0 0 (5) 、当总控制开关 Opencarcar 为 1,汽车右转,L R = 01,右边的 3 盏尾灯从左至右 顺序亮灭,左边 3 盏灯全灭; 如下图: 当总控制开关 Opencarcar 为 1,汽车右转时右边的 3 盏尾灯从左至右顺序亮灭,左边 3 盏灯全灭。 车灯 脉冲 L0 L1 L2 R0 R1 R2 1 0 0 0 0 0 0 2 0 0 0 1 0 0 3 0 0 0 0 1 0 4 0 0 0 0 0 1 (6) 、底层文件描述闪烁过程 用单独的实体实现计时模块 , 实现车灯闪烁和亮灭要求亮 0.5 秒灭 1

6、 秒。 四、模块描述 总模块 1:顶层文件设计,实现汽车开启时解锁,车灯闪烁 3 秒;汽车向前行驶,车灯全灭,汽 车刹车时车灯闪烁,汽车转弯时相应车灯闪烁. 总模块 2:底层文件设计,实现汽车开启时,解锁,车灯闪烁 3 秒.用模 6 计数原理. IF(CPEVENT AND CP=0)THEN -下降沿出触发 IF Opencarcar=1THEN -汽车解锁,车灯闪烁。 IF Q LOpencarcar,L=L,R=R,Q=Q); U2:StopCarmond6 PORT MAP(CP=CP,Opencarcar=Opencarcar,Lift=Lift,Right=Right,L=L,R=

7、R,Q=Q); END ; -底层实体,汽车解锁,车灯闪烁,计时模块 -底层文件,模 6 计时器 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL ; USE IEEE.STD_LOGIC_UNSIGNED.ALL ; ENTITY Opencarmond6 IS PORT( CP: IN STD_LOGIC; Opencarcar: IN STD_LOGIC; L: BUFFER STD_LOGIC_VECTOR(2 DOWNTO 0); R:BUFFER STD_LOGIC_VECTOR(2 DOWNTO 0); Q: BUFFER STD_LOGIC_V

8、ECTOR(2 DOWNTO 0) ; END ; ARCHITECTURE ONE OF Opencarmond6 IS BEGIN PROCESS (CP) BEGIN IF(CPEVENT AND CP=0)THEN -下降沿出触发 IF Opencarcar=1THEN -汽车解锁,车灯闪烁。 IF Q L=“111“; R L=“000“; R L=“000“; R L=“111“; R L=“000“; R L=“000“; R Q=“101“; end case; Q=Q+1; ELSE Q=“000“; END IF; END IF; END IF; END PROCESS;

9、END; -底层实体,汽车控制系统实现汽车行驶,转弯,汽车刹车,车灯闪烁,计时模块 -底层文件,模 6 计时器 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL ; USE IEEE.STD_LOGIC_UNSIGNED.ALL ; ENTITY StopCarmond6 IS PORT( CP: IN STD_LOGIC; Opencarcar: IN STD_LOGIC; Lift,Right: IN STD_LOGIC; L: BUFFER STD_LOGIC_VECTOR(2 DOWNTO 0); R:BUFFER STD_LOGIC_VECTOR(2

10、 DOWNTO 0); Q: BUFFER STD_LOGIC_VECTOR(2 DOWNTO 0) ; END ; ARCHITECTURE ONE1 OF StopCarmond6 IS SIGNAL adder :STD_LOGIC_VECTOR( 1 DOWNTO 0); BEGIN adder = Lift -中间信号 PROCESS( adder ,CP,Q) -进程 BEGIN IF(CPEVENT AND CP=0)THEN -下降沿出触发 IF Opencarcar=1 AND adder =“00“ THEN -汽车向前行驶 L=“000“; R=“000“; ELSIF

11、Opencarcar=1 AND adder =“11“THEN -汽车刹车 IF Q L=“111“; R L=“000“; R L=“000“; R L=“111“; R L=“000“; R L=“000“; R Q=“000“; end case; Q=Q+1; ELSE Q=“000“; END IF; ELSIF Opencarcar=1 AND adder =“10“THEN -汽车左转 if L=“000“then L=“001“; R=“000“; elsif ( L=“001“)then L=“010“; R=“000“; elsif( L=“010“)then L=“10

12、0“; R=“000“; else L=“001“;R=“000“; end if; ELSIF Opencarcar=1 AND adder =“01“THEN -汽车右转 if R=“000“then R=“100“; L=“000“; elsif ( R=“100“)then R=“010“; L=“000“; elsif( R=“010“)then R=“001“; L=“000“; else R=“100“;L=“000“; end if; END IF; END IF; END PROCESS; END ; 六、调试仿真 七、课程设计回顾总结 通过这次设计,进一步加深了对 EDA

13、的了解,对它有了更加浓厚的兴趣。特别是当每一个子模 块编写调试成功时,心里特别的开心。但是在编写程序时,遇到了不少问题,首先由于自己对于汽 车的发动过程不是很了解,所以汽车解锁和汽车锁定方面存在误区,程序一直运行不成功,在上网 查询汽车操作以及在同学帮助下,在细心的检查下,终于找出了错误,排除困难后,程序编译就通 过了,仿真文件基本符合这次实验要求。这次试验总的来说,进行的还算顺利,但在调试过程中, 也遇到了一些自己不能解决的问题,通过请教同学,我明白解决的办法,在这次试验中,提高了整 体设计和构思的能力,原来在学习过程中不明白的问题,在这次实习中通过自己操作有了进一步的 理解,在解决困难的过程中,有点小小的成就感,终于觉得平时所学的知识有了实用的价值,达到 了理论和实际相结合的目的,不仅学到了不少知识,而且锻炼了自己的能力,使自己对以后的路有 了更加清楚的认识,同时,对未来有了更多的信心。 参 考 文 献 张兴忠 数字逻辑和数字系统 科学出版社 李景华 可编程逻辑器件和 EDA 技术 东北大学出版社

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。