VHDL硬件描述语言实现数字钟
--VHDL上机的一个作业,程序太长实验报告册上写不下了。于是就在博客上留一份吧。
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY CLOCK IS
PORT(CLK1S,SET,SWC,CLK1MS,RST:IN STD_LOGIC;
S0,S1,M0,M1,H0,H1:OUT STD_LOGIC_VECTOR( DOWNTO );
BEEP:OUT STD_LOGIC;
PNS,PSS,PSM,PSH:OUT STD_LOGIC
);
END CLOCK; ARCHITECTURE ONE OF CLOCK IS
SIGNAL CS,CM:STD_LOGIC;--,CM
SIGNAL CLKSI,CLKMI,CLKHI:STD_LOGIC;
SIGNAL NS,SS,SM,SH:STD_LOGIC;
BEGIN
PSS<=SS;
PSM<=SM;
PSH<=SH;
PNS<=NS;
PROCESS(SWC,RST)
VARIABLE STAT:STD_LOGIC_VECTOR( DOWNTO );
BEGIN
IF(RST='')THEN
STAT:="";
NS<='';
SS<='';
SM<='';
SH<='';
ELSIF(RISING_EDGE(SWC))THEN
STAT:=STAT+;
CASE STAT IS
WHEN""=>
NS<='';
SS<='';
SM<='';
SH<='';
WHEN""=>
NS<='';
SS<='';
SM<='';
SH<='';
WHEN""=>
NS<='';
SS<='';
SM<='';
SH<='';
WHEN""=>
NS<='';
SS<='';
SM<='';
SH<='';
WHEN OTHERS=>
STAT:="";
END CASE;
END IF;
END PROCESS; CLKSI<=(CLK1S AND NS) OR (SS AND SET);
CLKMI<=CS OR (SM AND SET);
CLKHI<=CM OR (SH AND SET); PROCESS(CLKSI,RST,SET,NS)
VARIABLE SS0,SS1:STD_LOGIC_VECTOR( DOWNTO );
BEGIN
IF(RST='')THEN
SS0:="";
SS1:="";
CS<='';
--CM<='';
ELSIF(RISING_EDGE(CLKSI))THEN
SS0:=SS0+;
IF(SS0="")THEN
SS0:="";
SS1:=SS1+;
END IF;
IF(SS1="")THEN
SS1:="";
--SM0:=SM0+;
CS<='';
ELSE
CS<='';
END IF;
END IF;
S0<=SS0;
S1<=SS1;
END PROCESS; PROCESS(RST,CLKMI,SET)
VARIABLE SM0,SM1:STD_LOGIC_VECTOR( DOWNTO );
BEGIN
IF(RST='')THEN
SM0:="";
SM1:="";
CM<='';
ELSIF(RISING_EDGE(CLKMI))THEN
SM0:=SM0+;
IF(SM0="")THEN
SM0:="";
SM1:=SM1+;
END IF;
IF(SM1="")THEN
SM1:="";
CM<='';
ELSE
CM<='';
END IF;
END IF;
M0<=SM0;
M1<=SM1;
END PROCESS; PROCESS(RST,CLKHI,SET)
VARIABLE SH0,SH1:STD_LOGIC_VECTOR( DOWNTO );
BEGIN
IF(RST='')THEN
SH0:="";
SH1:="";
ELSIF(RISING_EDGE(CLKHI))THEN
SH0:=SH0+;
IF(SH0="")THEN
SH0:="";
SH1:=SH1+;
END IF;
IF(SH1="" AND SH0="")THEN
SH1:="";
SH0:="";
END IF;
END IF;
H0<=SH0;
H1<=SH1;
END PROCESS; PROCESS(CM,CS)
BEGIN
IF(CM='' AND CS='')THEN
BEEP<=CLK1MS;
ELSE
BEEP<='';
END IF;
END PROCESS;
END ONE;
VHDL硬件描述语言实现数字钟的更多相关文章
- 中国澳门sinox很多平台CAD制图、PCB电路板、IC我知道了、HDL硬件描述语言叙述、电路仿真和设计软件,元素分析表
中国澳门sinox很多平台CAD制图.PCB电路板.IC我知道了.HDL硬件描述语言叙述.电路仿真和设计软件,元素分析表,可打开眼世界. 最近的研究sinox执行windows版protel,powe ...
- 基于basys2用verilog设计多功能数字钟(重写)
话不多说先上图 前言 自从学习FPGA以来,唯一做过的完整系统就是基于basys2得多功能数字表.记得当时做的时候也没少头疼,最后用时间磨出来了一个不是很完整的小系统,当时还是产生了满 ...
- 基于BASYS2的VHDL程序——数字钟
在编电子表时发现FPGA求余,取模只能针对2的次方.毕竟是数字的嘛! 时钟用到了动态刷新数码管.以一个大于50Hz的速度刷新每一个数码管. 因为数码管只有四个,只写了分针和秒针. 代码如下: libr ...
- 基于BASYS2的VHDL程序——数字钟(最终版)
转载请注明原地址:http://www.cnblogs.com/connorzx/p/3674178.html 调时电路正常工作.一切正常.发现做FPGA还是得从数电的思路思考,设置一个预置使能端,预 ...
- 基于BASYS2的VHDL程序——数字钟(改进版)
扩展到时分秒.加了入调时电路,但不知道为什么有两个按键不好使.而且不知道以何种方式假如按键消抖电路,因为加入后会多个时钟控制一个信号,物理不可实现.调试电路待解决.还有,四个数目管中间的那两个圆点怎么 ...
- Qt 之 数字钟
本例用来展示 QTimer 的使用,如何定时的更新一个窗口部件. 1 QLCDNumber 类 QLCDNumber 是一种可将数字显示为类似 LCD 形式的窗口部件,它同 QLabel 一样,都继 ...
- FPGA 物理时序不合理的体现(体现方式:数字钟的行扫描和列扫描)
本人在这只讨论建模好的模块来比较解释现象,如有不周到请大家指正. 软件功能仿真和在硬件上的区别:可以从这个数码管的行扫描和列扫描实例来体会一下,物理时序的影响和改进方法. 数码管的行扫描.列扫描要求同 ...
- 基于串口校时的数字钟设计(verilog实现)
任务: 电路图设计: 设计: 模块1:1.先设计一个计数时钟,为了仿真方便,这里把1000ns当作1s. 创建一个计数器second_lim,当计数到1000/20时清零,即1s. 秒显示器secon ...
- NCO
NCO 摘自百度百科 (数字振荡器) 锁定 本词条由“科普中国”百科科学词条编写与应用工作项目 审核 . 数字控制振荡器(NCO,numerically controlled oscillator)是 ...
随机推荐
- AWS nat monitor and route switch script
This script will monitor another NAT instance and take over its routes if communication with the oth ...
- 精通javascript笔记(智能社)——数字时钟
JS代码: <script type="text/javascript"> window.onload=function(){ //小于10的数字补零及数字转字符 ...
- javascript提示抖动实现方法
css代码: <style type="text/css"> #div1{ width:200px; height:200px; background-color:or ...
- JRE集成到Tomcat
将jdk集成到tomcat里面(不用客户安装JRE) 或者 tomcat使用指定的jdk_ 给客户安装软件的时候,也许客户不想你在人家机器的环境变量里设置来设置去,那么就要在tomcat里指定要使用的 ...
- 51nod1031(简单斐波拉契数列)
题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1031 题意:中文题诶- 思路:对于第x块骨牌的情况,我们用a ...
- 使用libssh2库实现支持密码参数的ssh2客户端
使用libssh2库实现支持密码参数的ssh2客户端 http://blog.chinaunix.net/uid-24382173-id-229823.html libssh2的简单应用 http:/ ...
- Python selenium.webdriver.chrome.options.Options() Examples
The following are 27 code examples for showing how to use selenium.webdriver.chrome.options.Options( ...
- 关于background
background目前有size; color; image; repeat;position;attachtment; 作用分别是一:调整背景大小. 语法:background-size:a ...
- python算法:约瑟夫问题
据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特後,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被人抓到,于是决定了一个自杀方式,41 ...
- eps图片中有中文乱码的问题
一般的,如果matlab中的fig图片中有中文,直接saveas为eps,eps再插入latex后会出现乱码. 解决的办法为: (1) *.fig利用‘file--print’保存为*.pdf (2) ...