--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硬件描述语言实现数字钟的更多相关文章

  1. 中国澳门sinox很多平台CAD制图、PCB电路板、IC我知道了、HDL硬件描述语言叙述、电路仿真和设计软件,元素分析表

    中国澳门sinox很多平台CAD制图.PCB电路板.IC我知道了.HDL硬件描述语言叙述.电路仿真和设计软件,元素分析表,可打开眼世界. 最近的研究sinox执行windows版protel,powe ...

  2. 基于basys2用verilog设计多功能数字钟(重写)

    话不多说先上图         前言 自从学习FPGA以来,唯一做过的完整系统就是基于basys2得多功能数字表.记得当时做的时候也没少头疼,最后用时间磨出来了一个不是很完整的小系统,当时还是产生了满 ...

  3. 基于BASYS2的VHDL程序——数字钟

    在编电子表时发现FPGA求余,取模只能针对2的次方.毕竟是数字的嘛! 时钟用到了动态刷新数码管.以一个大于50Hz的速度刷新每一个数码管. 因为数码管只有四个,只写了分针和秒针. 代码如下: libr ...

  4. 基于BASYS2的VHDL程序——数字钟(最终版)

    转载请注明原地址:http://www.cnblogs.com/connorzx/p/3674178.html 调时电路正常工作.一切正常.发现做FPGA还是得从数电的思路思考,设置一个预置使能端,预 ...

  5. 基于BASYS2的VHDL程序——数字钟(改进版)

    扩展到时分秒.加了入调时电路,但不知道为什么有两个按键不好使.而且不知道以何种方式假如按键消抖电路,因为加入后会多个时钟控制一个信号,物理不可实现.调试电路待解决.还有,四个数目管中间的那两个圆点怎么 ...

  6. Qt 之 数字钟

    本例用来展示 QTimer 的使用,如何定时的更新一个窗口部件. 1  QLCDNumber 类 QLCDNumber 是一种可将数字显示为类似 LCD 形式的窗口部件,它同 QLabel 一样,都继 ...

  7. FPGA 物理时序不合理的体现(体现方式:数字钟的行扫描和列扫描)

    本人在这只讨论建模好的模块来比较解释现象,如有不周到请大家指正. 软件功能仿真和在硬件上的区别:可以从这个数码管的行扫描和列扫描实例来体会一下,物理时序的影响和改进方法. 数码管的行扫描.列扫描要求同 ...

  8. 基于串口校时的数字钟设计(verilog实现)

    任务: 电路图设计: 设计: 模块1:1.先设计一个计数时钟,为了仿真方便,这里把1000ns当作1s. 创建一个计数器second_lim,当计数到1000/20时清零,即1s. 秒显示器secon ...

  9. NCO

    NCO 摘自百度百科 (数字振荡器) 锁定 本词条由“科普中国”百科科学词条编写与应用工作项目 审核 . 数字控制振荡器(NCO,numerically controlled oscillator)是 ...

随机推荐

  1. AWS nat monitor and route switch script

    This script will monitor another NAT instance and take over its routes if communication with the oth ...

  2. 精通javascript笔记(智能社)——数字时钟

    JS代码: <script type="text/javascript">    window.onload=function(){ //小于10的数字补零及数字转字符 ...

  3. javascript提示抖动实现方法

    css代码: <style type="text/css"> #div1{ width:200px; height:200px; background-color:or ...

  4. JRE集成到Tomcat

    将jdk集成到tomcat里面(不用客户安装JRE) 或者 tomcat使用指定的jdk_ 给客户安装软件的时候,也许客户不想你在人家机器的环境变量里设置来设置去,那么就要在tomcat里指定要使用的 ...

  5. 51nod1031(简单斐波拉契数列)

    题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1031 题意:中文题诶- 思路:对于第x块骨牌的情况,我们用a ...

  6. 使用libssh2库实现支持密码参数的ssh2客户端

    使用libssh2库实现支持密码参数的ssh2客户端 http://blog.chinaunix.net/uid-24382173-id-229823.html libssh2的简单应用 http:/ ...

  7. Python selenium.webdriver.chrome.options.Options() Examples

    The following are 27 code examples for showing how to use selenium.webdriver.chrome.options.Options( ...

  8. 关于background

    background目前有size;  color;  image;  repeat;position;attachtment; 作用分别是一:调整背景大小. 语法:background-size:a ...

  9. python算法:约瑟夫问题

    据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特後,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被人抓到,于是决定了一个自杀方式,41 ...

  10. eps图片中有中文乱码的问题

    一般的,如果matlab中的fig图片中有中文,直接saveas为eps,eps再插入latex后会出现乱码. 解决的办法为: (1) *.fig利用‘file--print’保存为*.pdf (2) ...