基于C语言为内核的电子时钟设计
1 引言
我们知道,模拟时钟已经基本淘汰,因此,数字时钟是经常用到的计时工具,它能够用时、分、秒来显示一天的时间。传统的数字时钟采用了众多的分立元器件, 其性能和稳定性不够理想。现代电子产品的系统复杂度的不断提高和面积不断缩小,用传统时钟系统设计方法很难满足设计需求。在此,引入基于 C 语言编程的设计方法。设计中仅考虑数字钟表的基本功能,即能够显示秒、分、小时。小时显示可采用 0~12 小时及上下午标志,也可采用 0~24 小时的显示方式,此处采用后者。并且用仿真软件 MAXplusII 仿真实验结果。
2 以 C 语言为内核的 VerilogHDL 简介和特点
由于本文所涉及的C语言的算法和设计思想都在VerilogHDL语言环境中来实现,因此有必要简要介绍Verilog HDL语言。Verilog HDL语言最初是于1983年由Gateway DesignAutomation 公司为其模拟器产品开发的硬件建模语言,那时它只是一种专用语言。由于他们的模拟、仿真器产品的广泛使用,Verilog HDL 作为一种便于使用且实用的语言逐渐为众多设计者所接受。1990年,在一次努力增加语言普及性的活动中, Verilog HDL语言被推向公众领域。Open VerilogInternational(OVI)是促进verilog发展的国际性组织。1992年,OVI决定致力于推广Verilog OVI标准成为IEEE标准。这一努力最后获得成功,Verilog 语言于1995年成为IEEE标准,称为IEEE Std1 364-1995。
Verilog HDL的语法特点是Verilog HDL语言与C语言很相似,从C语言中继承了多种操作符和结构,其核心子集非常易于学习和使用。
3 数字电子时钟的设计
VerilogHDL是通过构造模块间的清晰结构来描述及其复杂的系统的设计。
这里的数字钟表由小时模块、分钟模块、秒表模块和一个与门模块构成。小时模块,分钟模块和秒表模块实质上都是同步的计数器,只不过小时模块采用 0~23 小时的方式,是 24 进制同步计数器。分钟模块和秒表模块都是 60 进制同步计数器。因此,小时模块,分钟模块,秒表模块的设计思想是一致的。只在此列出小时模块的编程设计。
下面列出的是 C 语言程序:
/*信号的定义:
clear2:清零信号;
clk2:输入时钟信号;
en2:使能端信号;*/
module hour24(clear2,clk2,en2,q);
input clear2,clk2,en2;
output [4:0] q;
reg [4:0] q;
parameter a=6'd00
parameter max=6'd23;
parameter min=6'd00;
always @ (posedge clear2 or posedge clk2)
begin
if(clear2)
begin
相关文章
- 2022-07-16手持式智能航空超声波检测仪的研制
- 2022-11-15基于V80系列PLC的制袋封切机控制系统
- 2023-10-20房间内早期反射声方向分布的声强法测量
- 2024-01-30脉络膜血流图及其临床诊断价值
- 2023-03-12电子探针波谱仪计算机控制系统的改进
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。