Solicitar informe de diseño del curso de reloj electrónico
Reloj electrónico
Miembros del equipo
Lu Weiwei: 200840720126
Zhang Kui: 200840830133
Hou Congbin: 200840830133
Wan Yuanrang: 200840830133
Li Chuandi: 200840830133
Yang Zhansheng: 200840830133
Instructor: Chen Weibing
1. El principio de diseño del reloj electrónico:
El reloj electrónico se compone principalmente de cuatro módulos: circuito de escaneo, circuito del módulo de conteo, circuito de conversión de código BCD
y circuito de control de pantalla.
La señal de reloj de 1 HZ es ingresada por CP y enviada al circuito de conteo por división de frecuencia que cuenta 60. De momento la cuenta llega a 6o. En el momento en que la cuenta llega a 6o, el divisor de frecuencia que cuenta hasta 60 hace que el circuito divisor de frecuencia aumente en 1, el circuito de segundos también se elimina a 0 y se vuelven a contar los segundos. Las funciones del circuito de puntuación y del circuito de cronometraje son las mismas que las anteriores. El número binario generado por el conteo se convierte en código BCD a través del circuito de conversión de código BCD, y luego el código BCD se selecciona y se emite a través del circuito de escaneo. en el circuito del controlador de pantalla. Luego, el resultado se convierte al número decimal correspondiente y se muestra en el tubo de visualización digital de siete segmentos. Y controle la visualización del tubo digital a través del circuito de escaneo. Finalmente, puede ver los resultados de visualización de segundos, minutos y horas en el tubo de visualización digital
2 Diseño e implementación
Este plan tiene un total de ****, y hay doce. Cada parte es para generar señal de pulso, contador de 60 segundos, contador de 60 minutos, contador de 24 horas, contador de milisegundos, contador de segundos, criterio de mes, año, mes y día.
Proceso de diseño: diagrama de simulación y programa fuente
(1). Segundo módulo
El segundo es el módulo inferior de este diseño de reloj electrónico. Su núcleo es un contador de 60 y la señal de reloj externo sirve como señal de reloj de activación. Cuando la señal externa ingresa al terminal de señal de reloj clk, su contador de 60 interno comienza a contar la fuente de señal. El resultado del conteo se envía al tubo digital y el tiempo se muestra en segundos. all;
entidad miao es
puerto(primero, clk: en std_logic;
d: en std_logic_vector(1 hasta 0);
clk1:out std_logic);
end miao;
la arquitectura de miao es
señal d1:std_logic_vector(1 downto 0
comenzar
proceso(clk, d)
comenzar
si primero='1' entonces
d1lt;= "00";
ELSif clk'event y clk='1' entonces
si d1="11" entonces
d1lt;=d; ='1';
En caso contrario d1lt;=d1 1; clk1lt;='0';
finalizar si;
finalizar si;
finalizar proceso;
finalizar hacer;
(2). Módulo de minutos
El núcleo del módulo de minutos también es un contador de 60, que es calculado contando segundos La señal de redondeo del módulo se implementa contando. El resultado del conteo se ingresa en la tabla de visualización digital a través de dout. Cuando el conteo llega a 60, el valor se restablece a cero y la señal de redondeo c se emite al exterior.
biblioteca ieee;
use ieee.std_ logic_1164.all;
use ieee.std_ logic_1164.all;
use ieee. std_ logic_1164.all;
use ieee.logic_1164.all;
use ieee.std_logic_unsigned.all
entidad fen es
port(zs1, clk2, rst1: en std_logic;
d1: en std_logic _vector(5 hasta 0);
fe: fuera std_logic_vector(5 hasta 0);
clk3:out std_logic);
end fen;
la arquitectura de fen es
señal d0:std_logic_vector(5 downto 0 ); p> p>
comenzar
proceso(clk2, d1, zs1, rst1)
comenzar
si rst1='1' entonces
d0lt;= "000000";
elsif clk2'event y clk2='1'entonces
if d0="111111 "entonces
clk3lt; ='1';d0lt;="000000";
elsif zs1='1'entonces
d0lt;=d1;
else d0lt;=d0 1;clk3lt;='0';
finalizar si;
finalizar si;
finalizar proceso;
fieltro;=d0;
end do;
(3) Módulo de conteo de horas y semanas
biblioteca ieee;
uso ieee.std_logic_1164.all;
Utilice ieee.std_logic_unsigned.all;
La entidad shi es
puerto (clk5: en std_logic;
xs :out std_logic_vector(4 downto 0);
xinqi:out std_logic_vector(2 downto 0));
end shi
Arquitectura do de shi; es
Señal d3: Señal d3: std_logic_vector(4 hasta 0);
Señal d4: std_logic_vector(2 hasta 0);
Señal clk6: std_logic ;
Inicio
r1: proceso(clk5)
comenzar
si clk5'event y clk5='1'entonces p>
si d3="11000 "entonces
d3lt;="00000 ";clk6lt;='1';
si no d3lt;=d3 1;clk6lt
;='0';
finalizar si;
finalizar si;
finalizar proceso r1;
r2: proceso(clk6)
comenzar
si clk6'event y clk6='1'entonces
si d4="111 "entonces
d4lt;= "001";
else d4lt;=d4 1;
finalizar si;
finalizar si;
finalizar si;<
finalizar proceso r2;
xslt;=d3;xinqilt;=d4;
finalizar do;
(4) Año, mes , recuento de días
biblioteca ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;