检测与转换技术课程设计报告书.docx
《检测与转换技术课程设计报告书.docx》由会员分享,可在线阅读,更多相关《检测与转换技术课程设计报告书.docx(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、摘 要人类社会已进入到高度兴盛的信息社会。信息化社会的进展离不开电子信息产品开发技术、产品品质的提高和进步。电子信息产品随着科学技术的进步, 其电子器件和设计方法更换代的速度日月异。实现这种进步的主要缘由就是电子设计技术和电子制造技术的进展,其核心就是电子设计自动化(EDA, Electronics Design Automation)技术,EDA 技术的进展和推广应用又极大地推动了电子信息产业的进展。为保证电子系统设计的速度和质量,适应“第一时间推出产品”的设计要求,EDA 技术正渐渐成为不行缺少的一项先进技术和重要工具。目前,在国内电子技术教学和产业界的技术推广中已形成“EDA 热”,完全
2、可以说,把握 EDA 技术是电子信息类专业学生、工程技术人员所必备的根本力气和技能。关键词:数字钟 EDA VHDL 语言数字时钟的设计实现设计试验一、设计目的1、娴熟地运用数字系统的设计方法进展数字系统设计;2、能进展较简洁的数字系统设计;3、按要求设计一个数字钟。二、设计内容2.1 设计任务及目标要求设计一个数字钟完,完成具体如下任务:(1) 能显示年、月、日、时、分、秒功能;(2) 具有日期和星期显示功能;(3) 具备闹钟功能及定点报时;(4) 具备调时、定时功能。三、系统方案及设计原理3.1 方案设计数字计时器根本功能是计时,因此首先需要获得具有准确振荡时间的脉振信号,以此作为计时电路
3、的时序根底,试验中可以使用的振荡频率源为 48MHZ, 通过分频获得所需脉冲频率1Hz,1KHz,2KHz。为产生秒位,设计一个模60 计数器,对 1HZ 的脉冲进展秒计数,产生秒位;为产生分位,通过秒位的进位产生分计数脉冲,分位也由模 60 计数器构成;为产生时位,用一个模 24 计数器对分位的进位脉冲进展计数。整个数字计时器的计数局部共包括六位:时十位、时个位、分十位、分个位、秒十位和秒个位。显示功能是通过数选器、译码器、码转换器和 7 段显示管实现的。由于试验中只用一个译码显示单元,7 个 7 段码6 个用于显示时分秒,一个显示星期,所以通过 4 个 7 选一 MUX 和一个 3-8 译
4、码器协作,依据计数器的信号进展数码管的动态显示。1清零功能是通过把握计数器清零端的电平凹凸来实现的。只需使清零开关按下时各计数器的清零端均牢靠接入有效电平本试验中是低电平,而清零开关断开时各清零端均接入无效电平即可。校分校时功能由防抖动开关、规律门电路实现。其根本原理是通过规律门电路把握分计数器的计数脉冲,当校分校时开关断开时,计数脉冲由低位计数器供给;当按下校分校时开校分校时功能由防抖动开关、规律门电路实现。其根本原理是通过规律门电路把握分计数器的计数脉冲,当校分校时开关断开时,计数脉冲由低位计数器供给;当按下校分校时开通时,既可以手动触发动身式开关给进位脉冲,也可以有恒定的 1Hz 脉冲供
5、给恒定的进位信号,计数器在此脉冲驱动下可快速计数。为实现牢靠调时,承受防抖动开关由 D 触发器实现抑制开关接通或断开过程中产生的一串脉冲式振动。本试验中为节约按键,闹钟时间调整键复用正常调时的校时校分开关,为使设定闹铃与正常计时中调整时间按键互不影响,额外用一个闹钟使能键,按下该键后进入闹钟设定界面,此时校时校分开关用于调整闹钟时间,对正常计时没有影响,且此时 7 段显示码显示的是闹钟时间;恢复使能键后校分校时键用于对数字钟进展时间调整,对设定的闹钟时间没有影响。整点报时功能可以通过组合规律电路实现。当计数器的各位呈现特定的电寻常,可以选通特定的与门和或门,将指定的频率信号送入蜂鸣器中,实现在
6、规定的时刻以指定频率发音报时。闹钟设定功能。闹钟只设定时和分,根本模块与正常计时电路里的校时校分电路一样。本试验中为节约按键,闹钟时间调整键复用正常调时的校时校分开关, 为使设定闹铃与正常计时中调整时间按键互不影响,额外用一个闹钟使能键,按下该键后进入闹钟设定界面,此时校时校分开关用于调整闹钟时间,对正常计时没有影响,且此时 7 段显示码显示的是闹钟时间;恢复使能键后校分校时键用于对数字钟进展时间调整,对设定的闹钟时间没有影响。23.2 数字钟设计思路构造框图把握单元数输出信号LED 显示字使能信号报警闹铃信号扬声器时CLK 时钟信号钟复位信号四、数字电路根本模块4.1 分频器模块(1) 模块
7、说明:输入一个频率为50MHz 的CLK,利用计数器分出1KHz 的q1KHz,500Hz 的 q500Hz,2Hz 的 q2Hz 和 1Hz 的 q1Hz。(2) 源程序:LIBRARY ieee;USE ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all; ENTITY fdiv ISPORT (CLK: IN STD_LOGIC ;-输入时钟信号q1KHz: BUFFER STD_LOGIC;q500Hz: BUFFER STD_LOGIC; q2Hz: BUFFER STD_LOGIC; q1Hz: OUT STD_LOGIC
8、);END fdiv ;ARCHITECTURE bhv OF fdiv IS BEGINP1KHZ:PROCESS(CLK) VARIABLE cout:INTEGER:=0; BEGINIF CLK”EVENT AND CLK=”1” THENcout:=cout+1;-每来个时钟上升沿时 cout 开头计数IF cout=25000 THEN q1KHz=”0”;-当 cout=25000 时,q1KHz 输出“0” ELSIF cout50000 THEN q1KHz=”1”; -当 25000cout=50000 时,q1KHzELSE cout:=0;-输出“1”,完成 1KHz
9、频率输出3END IF; END IF;END PROCESS;P500HZ:PROCESS(q1KHz)-q1KHz 作为输入信号,分出 q500Hz VARIABLE cout:INTEGER:=0;BEGINIF q1KHz”EVENT AND q1KHz=”1” THENcout:=cout+1;IF cout=1 THEN q500Hz=”0”;-二分频ELSIF cout=2 THEN cout:=0;q500Hz=”1”;END IF; END IF;END PROCESS; P2HZ:PROCESS(q500Hz) VARIABLE cout:INTEGER:=0; BEGIN
10、IF q500Hz”EVENT AND q500Hz=”1” THENcout:=cout+1;IF cout=125 THEN q2Hz=”0”; ELSIF cout250 THEN q2Hz=”1”;ELSE cout:=0; END IF;END IF;END PROCESS; P1HZ:PROCESS(q2Hz) VARIABLE cout:INTEGER:=0; BEGINIF q2Hz”EVENT AND q2Hz=”1” THENcout:=cout+1;IF cout=1 THEN q1Hz=”0”;ELSIF cout=2 THEN cout:=0;q1Hz=”1”; EN
11、D IF;END IF;END PROCESS;END bhv;(3) 模块图:44.2 把握器模块(1) 模块说明:输入端口enset,k,set 键来把握 6 个状态,这六个状态分别是显示计时时间状态,调计时的时、分、秒状态,调闹铃的时、分的状态, reset 键是复位键,用来回到显示计时时间的状态。(2) 源程序:library ieee;use ieee.std_logic_1164.all; entity contl isport(clk,enset,k,set,reset:in std_logic; cth,ctm,cts,cbh,cbm,flashh,flashm,flashs,
12、sel_show:outstd_logic); end contl;architecture rtl of contl istype stats is (s0,s1,s2,s3,s4,s5);-定义 6 个状态signal current_state,next_state:stats:=s0;begin process(clk,reset) beginif reset=”1” then current_state=s0;elsif clk”event and clk=”1” then if reset=”0” thencurrent_statecth=”0”;ctm=”0”;cts=”0”;c
13、bh=”0”;cbm=”0”; flashh=”0”;flashm=”0”;flashs=”0”;sel_show=”0”;if (enset=”1” and k=”1”)then-假设 enset 和 k 为“1”, next_state=s1;-由 s0 态转到 s1 态else next_statectm=”0”;cts=”0”;cbh=”0”;cbm=”0”; flashh=”1”;flashm=”0”;flashs=”0”;sel_show=”0”;if set=”1” then cth=”1”;-假设 set 为“1”,cth 输出“1”else cth=”0”;-进入调小时状态。
14、end if;if (enset=”1” and k=”0”)then-假设 enest 为“1”,k 为“0”,next_state=s2;-由 s1 态转到 s2 态5else next_statecth=”0”;cts=”0”;cbh=”0”;cbm=”0”; flashh=”0”;flashm=”1”;flashs=”0”;sel_show=”0”;if set=”1” then ctm=”1”; else ctm=”0”;end if;if(enset=”1” and k=”1”)then next_state=s3;else next_statecth=”0”;ctm=”0”;cb
15、h=”0”;cbm=”0”; flashh=”0”;flashm=”0”;flashs=”1”;sel_show=”0”;if set=”1” then cts=”1”; else cts=”0”;end if;if (enset=”1” and k=”0”)then next_state=s4;else next_statecth=”0”;ctm=”0”;cts=”0”;cbm=”0”; flashh=”1”;flashm=”0”;flashs=”0”;sel_show=”1”;if set=”1” then cbh=”1”; else cbh=”0”;end if;if(enset=”1”
16、 and k=”1”)then next_state=s5;else next_statecth=”0”;ctm=”0”;cts=”0”;cbh=”0”; flashh=”0”;flashm=”1”;flashs=”0”;sel_show=”1”;if set=”1” then cbm=”1”; else cbm=”0”;end if;if(enset=”1” and k=”0”)then next_state=s0;else next_state=s5; end if;end case; end process; end rtl;(3) 仿真波形图:6(4) 模块图:4.3 二选一模块(1)
17、 源程序: ENTITY mux21a IS PORT(a,b,s:IN BIT;y:OUT BIT); END ENTITY mux21a;ARCHITECTURE one OF mux21a IS BEGINPROCESS(a,b,s) BEGINIF s=”0” THENy=a;ELSE-假设 s=0,y 输出 a,反之输出 b。y=b;END IF;END PROCESS;END ARCHITECTURE one;(2) 仿真波形图:7(3) 模块图:4.4 计时模块4.4.1 秒计时模块(1) 源程序:library ieee;use ieee.std_logic_1164.all;
18、use ieee.std_logic_unsigned.all; use ieee.std_logic_arith;entity cnts60 isport(sld0:buffer std_logic_vector(3 downto 0); -小时个位sld1:buffer std_logic_vector(7 downto 4); -小时十位co: out std_logic;rest:in std_logic; clk :in std_logic);end cnts60;architecture rtl of cnts60 is beginprocess(clk,rest) beginif
19、 rest=”1” then sld1=“0000“; sld0=“0000“; elsif (clk”event and clk=”1”) thenif (sld1=“0101“and sld0=“1001“)then -当 sld1=5,sld0=9 时sld1=“0000“; sld0=“0000“;co=”1”;-全清零,co 输出“1” elsif sld0=“1001“ thensld0=“0000“;sld1=sld1+1;co=”0”;- sld1 自加“1”else sld0=sld0+1;co=”0”;end if;8end if;end process; end rtl;
20、(2) 仿真波形图:(3) 模块图:4.4.2 分计时(1) 源程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all; use ieee.std_logic_arith;entity cnt60 isport(sld0:buffer std_logic_vector(3 downto 0); sld1:buffer std_logic_vector(7 downto 4); co: out std_logic;clk :in std_logic); end cnt60;architecture r
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 检测 转换 技术 课程设计 报告书
限制150内