数字时钟设计(含完整程序)

数字时钟设计(含完整程序)
数字时钟设计(含完整程序)

电子时钟设计

一、实验目的

学习8051定时器时间计时处理、按键扫描及LED数码管显示的设计方法。

二、设计任务及要求

利用实验平台上4个LED数码管,设计带有闹铃功能的数字时钟,要求:

1.在4位数码管上显示当前时间,显示格式为“时时分分” ;

2.由LED闪动做秒显示;

3.利用按键可对时间及闹玲进行设置,并可显示闹玲时间。当闹玲时间到蜂鸣器发出声响,按停止键使可使闹玲声停止。

三、工作原理及设计思路

利用单片机定时器完成计时功能,定时器0计时中断程序每隔5ms中断一次并当作一个计数,每中断一次计数加1,当计数200次时,则表示1s到了,秒变量加1,同理再判断是否1min 钟到了,再判断是否1h到了。为了将时间在LED数码管上显示,可采用静态显示法和动态显示法,由于静态显示法需要数据锁存器等较多硬件,可采用动态显示法实现LED显示。

闹铃声由交流蜂鸣器产生,电路如右图,当P1.7输出不同频率的方波,蜂鸣器便会发出不同的声音。

四、硬件电路设计及描述

由于扩展了外部存储器,P0口只能作地址/数据总线,P2口只能作地址总线高8位,P3.7、P3.6作为外部数据存储器读写信号。P3.0、P3.1作为串行输入、输出接口,在仿真模式下完成与PC机的通信,故也不可用。

实验仪上单片机可用作I/O的口仅有:P1.0--P1.7 ,8位;P3.2、P3.3、P3.4、P3.5 ,4位。其中:P1.0 用作数据线SDA,P1.1用作时钟信号CLK,所以P1.0和P1.1应该接对应跳线的A 位,即跳线的中间和下面相连。P1.3、P1.4、P1.5和P1.6是四个数码管的位扫描线,其中P1.6对应数码管W1,显示小时高位;P1.5对应数码管W2,显示小时低位;P1.4对应数码管W3,显示分钟高位;P1.3对应数码管W4,显示分钟低位。P1.7连接蜂鸣器电路,输出不同频率的方波,使其发出不同的声音。P1.2 用来控制秒的闪烁显示。故,P1.2也应该接对应跳线的A位。

其显示电路如下图:

P3.2、P3.3、P3.4、P3.5分别连接单刀双掷开关S1、S2、S3、S4,从而输入高低电平。将S2 S1 定义为功能模式选择开关;S3 定义为分钟数调整开关;S4 定义为小时数调整开关。

当S2 S1=00时,显示当前时间,不进行任何操作。

当S2 S1=01时,显示当前时间,同时可进行时钟调整,若S3=1,分钟数持续加1,若S4=1,小时数持续加1。

当S2 S1=10时,显示闹钟时间,同时可进行闹钟调整,若S3=1,分钟数持续加1,若S4=1,小时数持续加1。

当S2 S1=11 时,显示当前时间,同时关闭闹钟。

音节由不同频率的方波产生,音节与频率的关系如表1所示。要产生音频方波,只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间。利用计时器计时此半周期时间,每当计时到后就将输出方波的I/0反相,然后重复计时此半周期时间再对I/O反相,就可在I/O脚得到此频率的方波。在ZKS-03实验仪上,产生方波的I/O脚选用P1.7,通过跳线选择器JP1将单片机的P1.7与蜂鸣器的驱动电路相连。这样P1.7输出不同频率的方波,蜂鸣器便会发出不同的声音。另外,音乐的节拍是由延时实现的,如果1拍为0.4秒,1/4拍是0.1秒。只要设定延时时间,就可求得节拍的时间。延时作为基本延时时间,节拍值只能是它的整数倍,

每个音节相应的定时器初值X可按下法计算:

(1/2)*(1/f)=(12/fose)*(216-x)

即 x=216-(fose/24f)

其中f:音调频率,当晶振fose=11.0592MHz时,音节“1”相应的定时器初值为x,则可得x=63777D=F921H 其它的可同样求得。在单片机上控制一个音符唱多长可采用循环延时的方法来实现。首先,我们确定一个基本时长的延时程序,比如说以十六分音符的时长为基本延时时间,那么,对于一个音符,如果它为十六分音符,则只需调用一次延时程序,如果它为八分音符,则只需调用二次延时程序,如果它为四分音符,则只需调用四次延时程序,依次类推。

通过上面关于一个音符音调和节拍的确定方法,我们就可以在单片机上实现演奏音乐了。具体的实现方法为:将乐谱中的每个音符的音调及节拍变换成相应的音调参数和节拍参数,将他们做成数据表格,存放在存储器中,通过程序取出一个音符的相关参数,播放该音符,该音符唱完后,接着取出下一个音符的相关参数……,如此直到播放完毕最后一个音符,根据需要也可循

环不停地播放整个乐曲。另外,对于乐曲中的休止符,一般将其音调参数设为FFH,FFH,其节拍参数与其他音符的节拍参数确定方法一致,乐曲结束用节拍参数为00H来表示。

五、软件设计流程及描述

Y

N

开始

中断返回

秒数满60? 5ms 中断次数

满200? 5ms 中断次数加1

分钟数清零,小时数加1

秒数清零,分钟数加1

小时数清零

5ms 中断次数清零,秒数

加1,LED 闪动一下

分钟数满60? 小时数满24? Y

Y

Y

N

N

N

时钟走时中断服务程序

六、源程序代码及注释

注:首先将单片机用到的主要寄存器做下说明(如下);

P1.2 作秒的闪烁控制位;

P1.7 作响铃控制电平;

P3.2 、P3.3 作模式选择键S2、S1;

P3.4 作分调整键S3(分钟数+1);

P3.5 作时调整键S4(小时数+1);

R0为计数5ms的次数;R1为秒数;R2为分钟数;R3为时钟数;

R4 在显示程序中作为向LED传递数据时的左移次数标志位;

R4 在音乐闹铃程序中读取TABLE中的数据;

R5作为节拍长度;

40H 作显示的分;41H 作显示的时;42H 作闹钟的分;43H 作闹钟的时;

63H、64H 存放延时程序DELAY的延时数;

60H、61H 作定时器T1的初值。

;****************************** 主程序******************************************* S1 BIT P3.2 ;定义模式选择键S2、S1

S2 BIT P3.3

S3 BIT P3.4 ;定义时调整键S4,分调整键S3

S4 BIT P3.5

SDA BIT P1.0

CLK BIT P1.1

ORG 0000H

AJMP MAIN

ORG 000BH ;T0的中断服务程序的入口地址

AJMP TIMER ;跳转到时钟走时中断服务程序

ORG 001BH ;T1的中断服务程序的入口地址

AJMP ALARM_OPEN ;跳转到闹钟响铃中断服务程序

ORG 0030H

MAIN: MOV 40H,#00 ;显示的分

MOV 41H,#00 ;显示的时

MOV 42H,#58 ;闹钟的分

MOV 43H,#23 ;闹钟的时

MOV R0,#00H ;寄存器清零(RO为计数5ms的次数,R1为秒数,MOV R1,#00H ;R2为分钟数,R3为时钟数)

MOV R2,#00H

MOV R3,#00H

MOV TMOD,#11H ;设置T0,T1处于工作方式1

MOV TH0,#0EEH ;设置定时器的初值

MOV TL0,#00H

SETB EA ;允许总中断

SETB E T0 ;允许T0,T1中断

SETB ET1

SETB TR0 ;启动T0

LOOP: LCALL DISPLAY1 ;调用显示程序

LCALL ALARM ;调用闹铃程序

LCALL MODE ;调用模式判断程序

AJMP LOOP

;************************************ 时钟显示部分*******************************

DISPLAY1:

MOV DPTR,#TAB1

MOV A,41H

MOV B,#10

DIV A B

LCALL DISP1

CLR P1.6 ;LED1数码管显示数码,即小时的高位

LCALL DELAY

SETB P1.6

JB P1.2,TD ;控制LED2数码管的小数点"dp"闪烁

AJMP TD1

TD: MOV A,B

AJMP TD2

TD1: MOV A,B

ADD A,#10

TD2: LCALL DISP1 ;LED2数码管显示数码,即小时的低位

CLR P1.5

LCALL DELAY

SETB P1.5

MOV A,40H

MOV B,#10

DIV A B

LCALL DISP1

CLR P1.4 ;LED3数码管显示数码,即分钟的高位

LCALL DELAY

SETB P1.4

MOV A,B

LCALL DISP1

CLR P1.3 ;LED4数码管显示数码,即分钟的低位

LCALL DELAY

SETB P1.3

RET

DISP1: MOVC A,@A+DPTR ;LED串并转换口从P1.0接收

一个8位数码管显示字形数据

MOV R4,#08H ;R4记作左循环的次数

DUP1: RLC A;A带进位左循环移位

MOV SDA,C

CLR CLK ;上升沿触发数据接收

SETB CLK

DJNZ R4,DUP1

RET

;************************************ 闹钟显示部分******************************* DISPLAY2:

MOV DPTR,#TAB1

MOV A,43H

MOV B,#10

DIV A B

LCALL DISP2

CLR P1.6 ;LED1数码管显示数码,即小时的高位

LCALL DELAY

SETB P1.6

MOV A,B

LCALL DISP2

CLR P1.5 ;LED2数码管显示数码,即小时的低位

LCALL DELAY

SETB P1.5

MOV A,42H

MOV B,#10

DIV A B

LCALL DISP2

CLR P1.4 ;LED3数码管显示数码,即分钟的高位

LCALL DELAY

SETB P1.4

MOV A,B

LCALL DISP2

CLR P1.3 ;LED4数码管显示数码,即分钟的低位

LCALL DELAY

SETB P1.3

RET

DISP2: MOVC A,@A+DPTR ;LED串并转换口从P1.0接收

一个8位数码管显示字形数据

MOV R4,#08H ;R4记作左循环的次数

DUP2: RLC A;A带进位左循环移位

MOV SDA,C

CLR CLK ;上升沿触发数据接收

SETB CLK

DJNZ R4,DUP2

RET

;******************************** 判断闹钟时间是否到来************************* ALARM:

MOV A,40H

CJNE A,#00H,MUSIC ;整点闹铃

LJMP B2

MUSIC: MOV A,43H

CJNE A,41H,B1

MOV A,42H

CJNE A,40H,B1 ;音乐闹铃

SETB P1.7

MOV 70H,#00H

NEXT: MOV A,70H

MOV DPTR,#TABLE ;从TABLE中读取数据——声响时间

MOVC A,@A+DPTR

MOV R4,A ;将TABLE中读取的数据存放在R4

JZ END0

ANL A,#0FH

MOV R5,A ;R5作为节拍长度

MOV A,R4

SWAP A

ANL A,#0FH

JNZ S ING

CLR TR1

JMP D1

SING: DEC A

MOV 62H,A

RL A

MOV DPTR,#TABLE1 ;从TABLE1中读取数据——声调

MOVC A,@A+DPTR

MOV TH1,A ;设定TH1值

MOV 61H,A

MOV A,62H

RL A

INC A

MOVC A,@A+DPTR

MOV TL1,A ;设定TL1值

MOV 60H,A

MOV TH1,61H

MOV TL1,60H

SETB TR1

D1: ACALL DELAY0 ;声音延时

INC 70H

JMP NEXT

END0: CLR TR1

JMP MUSIC

DELAY0:

MOV R7,#2 ;R5的值就是声响持续时间

D2: MOV R6,#214

D3: MOV R4,#245

DJNZ R4,$

DJNZ R6,D3

DJNZ R7,D2

DJNZ R5,DELAY0

RET

B1: CLR TR1

RET

B2: MOV 61H,#0FEH

MOV 60H,#033H

MOV TH1,61H

MOV TL1,60H ;方波频率设为1KHz

SETB TR1

;******************************** 闹钟响铃中断服务程序************************** ALARM_OPEN:

PUSH ACC

PUSH PSW

MOV TH1,61H

MOV TL1,60H

CPL P1.7

POP PSW

POP ACC

RETI

;******************************** 时钟走时中断服务程序*************************** TIMER: MOV TH0,#0ECH ;重新对T0赋值,设置中断时间为5ms MOV TL0,#78H

MOV 40H,R2

MOV 41H,R3

INC R0 ;计数5ms的次数加1

CJNE R0,#200,BACK ;不够200次,跳转到BACK

CPL P1.2 ;够200次,P1.2翻转控制LED闪动一下

MOV R0,#00H ;计数5ms的次数清0,秒数加1

INC R1

CJNE R1,#60,BACK ;不够60秒,跳转到BACK

MOV R1,#00H ;够60秒,秒数清0,分钟加1

INC R2

CJNE R2,#60,BACK ;够60分钟,跳转到BACK

MOV R2,#00H ;够60分钟,分钟数清0,小时数加1

INC R3

CJNE R3,#24,BACK ;够24小时,跳转到BACK

MOV R3,#00H ;够24小时,小时数清0

BACK: RETI

;************************************ 按键判断部分******************************* MODE: MOV A,P3 ;软件消抖后再判断

LCALL DELAY

CJNE A,P3,MODE

ANL A,#0CH ;对S2、S1的值判断

CJNE A,#00H,LOP1

AJMP T_BACK ;模式为00,开T1中断

LOP1: CJNE A,#04H,LOP2

AJMP T_CHANGE ;模式为01,进行时间调整

LOP2: CJNE A,#08H,LOP3

AJMP A_CHANGE ;模式为10,进行闹铃调整

LOP3: AJMP A_CLOSE ;模式为11,关闭闹钟;............................. 时钟调整...............................

T_CHANGE:

LCALL DISPLAY1

LCALL DELAY1

JNB S3,T_HOUR ;S3为0,判断S4

T_MIN: MOV R5,40H

INC R5 ;S3为1,分钟数加1

CJNE R5,#60,LOP4

MOV R5,#00H

LOP4: MOV 40H,R5

MOV R2,40H

AJMP MODE

T_HOUR:

JNB S4,MODE ;S4为0,跳转到MODE

MOV R5,41H

INC R5 ;S4为,小时数加1

CJNE R5,#24,LOP5

MOV R5,#00H

LOP5: MOV 41H,R5

MOV R3,41H

AJMP MODE ;............................. 闹铃调整................................

A_CHANGE:

LCALL DISPLAY2

LCALL DELAY2

JNB S3,A_HOUR ;S3为0,判断S4

A_MIN: MOV R5,42H

INC R5 ;S3为1,分钟数加1

CJNE R5,#60,LOP6

MOV R5,#00H

LOP6: MOV 42H,R5

AJMP MODE

A_HOUR:

JNB S4,MODE ;S4为0,跳转到MODE

MOV R5,43H

INC R5 ;S4为1,小时数加1

CJNE R5,#24,LOP7

MOV R5,#00H

LOP7: MOV 43H,R5

AJMP MODE ;............................ 返回.................................

T_BACK:

SETB ET1 ;开T1中断

RET

A_CLOSE:

CLR ET1 ;关T1中断

RET

;************************************ 延时程序******************************** DELAY:

MOV 63H,#5H ;约2.78ms

D5: MOV 64H,#0FFH

DJNZ 64H,$

DJNZ 63H,D5

RET

;************************************ 延时程序1 ******************************** DELAY1:

MOV R7,#50H

D6: LCALL DISPLAY1

DJNZ R7,D6

RET

;************************************ 延时程序2 ******************************** DELAY2:

MOV R7,#50H

D7: LCALL DISPLAY2

DJNZ R7,D7

RET

;******************************** 数码管显示的字形表*************************** TAB1:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ;数字0~9,不带小数点"dp"

DB 40H,79H,24H,30H,19H,12H,02H,78H,00H,10H ;数字0~9,带小数点"dp"

;********************************** 音乐的节拍表******************************* TABLE: DB 82H,01H,81H,94H,84H,0B4H,0A4H,04H

DB 82H,01H,81H,94H,84H,0C4H,0B4H,04H

DB 82H,01H,81H,0F4H,0D4H,0B4H,0A4H,94H

DB 0E2H,01H,0E1H,0D4H,0B4H,0C4H,0B4H,04H

DB 82H,01H,81H,94H,84H,0B4H,0A4H,94H

DB 0E2H,01H,0E1H,0D4H,0B4H,0C4H,0B4H,04H

DB 82H,01H,81H,0F4H,0D4H,0B4H,0A4H,94H

DB 0E2H,01H,0E1H,0D4H,0B4H,0C4H,0B4H,04H

DB 00H

;*************************** 由音乐音符设置的T1计数值************************** TABLE1: DW 64260,64440,64524,64580,64684,64777,64820,64898 ;音符计数值

DW 64968,65030,65058,65110,65157,65178,65217

END

七、实验过程

将P1.0、P1.1、P1.3、P1.4、P1.5、P1.6、P3.0、P3.1的跳线接相应的A位,P1.7的跳线接相应的C位,拔掉其它不用的跳线。插好电源,插好通信线,打开实验仪电源开关,在实验上将工作模式开关SX拨到“LOAD”一档,按下复位开头RESET,然后启动DPFlash,单击“编程”,在弹出的窗口中选中“编程MON51”,再按“确定”,就将程序下载到单片机的Flash中。

关闭DPFlash,启动Keil,新建一个工程,然后选择芯片(Philips——P80/P87C52X2)。编写汇编语言程序,保存并添加至工程中,然后进行编译。

将实验台上的工作模式开关SX拨到“MON”位置,按下RESET复位开关,设置S0、S1、S3和S4的状态,再运行程序,拨动S0、S1、S3和S4对应的开头,检查电子时钟功能是否完整。

多次调试、修改程序,直至能正常实现设计的功能为止。

八、实验总结

这次做的单片机实验,有不少需要注意的问题,还遇到了很多问题,在解决问题的过程中也学到了很多东西。

首先是跳线的问题。在仿真模式下,跳线选择器JP2中的P3.0、P3.1必须置A位。

其次是软件设置的问题。刚开始没注意,一直出问题。设置工程的工作环境,要按书上所讲解的进行一步一步设置。而若是进行调试的话应将“编程MON51”下载到单片机的Flash中,而若要全速运行的话应将汇编程序生产的hex文件载入,并在编程窗口中选编程文件区将hex 文件载入在单片机中。另外还有一点值得注意的是,在进行调试时,编程的起始地址为4000H,对应中断的入口地址为400BH和401BH。若是全速运行的情况下,编程的起始地址为0000H,对应中断的入口地址为000BH和001BH。这是因为单片机的实际中断入口地址分别为0003H、000BH、0013H、001BH;而使用调试时,片内的0000H-3FFFH被编程MON51程序所占用,因此编写的程序块起始地址规定从4000H开始。

再次,就是程序的问题了。程序中有中英文字符混用的问题,还有标号书写错误和寄存器冲突等问题。一开始走时程序里我用到了寄存器,后来音乐程序里又用到了相同的寄存器。

最后,编程的开始我设计的整点闹铃,声音都不能发出清脆的声音,一开始以为是机子的问题,将产生1KHz的方波的程序单独编写,却能发出清楚的蜂鸣声。因此确定是程序的问题,在对程序仔细检查下仍然没有发现错误。之后我继续编写音乐闹铃的程序,在理解电子琴的程序的编程原理及程序后,将其引用并做适当修改,结果能奏出很好的音乐声。将整点闹铃程序与音乐闹铃程序进行对比,发现是因为在T1初值的设定,只是在外部设置了,而并没有在中断程序中在赋初值。在用单步调试的方法检查,也确实是这个问题。修改过来后问题也得到了解

决。

总之,这次的课设收获很多。

基于xilinx仿真 数字电子时钟的VHDL设计

VHDL语言设计数字时钟 实验性质:综合性实验级别: 开课单位:信息与通信工程学院通信工程系学时:4学时 一、实验目的: 1、学习用VHDL语言实现比较大型的电路的方法。 2、继续巩固cpld技术层次化设计方法。 二、实验器材: 计算机、Quartus II软件或xilinx ISE 三、实验内容: 设计一数字时钟,要求具有时、分、秒、计数显示功能,以24小时循环计时;具有清零,调节小时,分钟功能;具有整点报时功能。 四、实验步骤: 1、根据电路特点,用层次设计的概念,将此任务分成若干模块,规定每一模块的功能和各模块之间的接口。让几个学生分作和调试其中之一,然后再将各模块合起来联试。以培养学生之间的合作精神,同时加深层次化设计概念。 2、了解软件的元件管理深层含义,以及模块元件之间的连接概念,对于不同目录下的同一设计,如何融合。 3、模块说明: 各种进制的计数及时钟控制模块(10进制、6进制、24进制) 扫描分时显示,译码模块 各模块都用VHDL语言编写 实现电子钟原理图

各模块程序 秒模块: library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; ---- Uncomment the following library declaration if instantiating ---- any Xilinx primitives in this code. --library UNISIM; --use UNISIM.VComponents.all; entity second is Port ( clk : in STD_LOGIC; reset : in STD_LOGIC; semin : in STD_LOGIC; enmin : out STD_LOGIC; daout : out STD_LOGIC_VECTOR (6 downto 0)); end second; architecture Behavioral of second is signal count:std_logic_vector(6 downto 0); signal enmin_1,enmin_2:std_logic; begin daout<=count; enmin_2<=(semin and clk); enmin<=(enmin_1 or enmin_2); process(clk,reset,semin) begin if(reset='0')then count<="0000000"; enmin_1<='0'; elsif(clk'event and clk='1')then

微机原理课程设计数字时钟程序

河北科技大学 课程设计报告 学生姓名:学号: 专业班级: 电子信息科学与工程 课程名称:微型计算机原理及应用 学年学期: 2 01 1 —2012 学年第1 学期 指导教师: 20 0 1 1年 1 2月 课程设计成绩评定表

目录 一、课设题目及目的………………………………….4 二、设计任务………………………………………….4 三、总框图及设计流程 (4) 四、?源程序清单 (6) 五、?调试结果及显示 (19) 六、?个人贡献………………………………………….19 七、课程设计总结及体会 (21) 一、课设题目及目的 实习题目:数字时钟程序 实习目的:通过实习,使我们进一步弄懂所学到的课本知识,巩固和深化对8086系统的指令系统、中断系统、键盘/显示系统、程序设计、应用开发等基本理论知识的理解,提高汇编语言应用于技术的实践操作技能,掌握汇编语言应用系统设计、研制的方法,培养利用科技革新、开发和创新的基本能力,为毕业后从事与其相关的工作打下一定的基础。

二、课设任务 本课题为利用汇编语言设置时钟程序,其显示效果为:截取系统时间,能以时、分、秒(其中时为24小时制)的形式显示,并且通过合理的操作能修改时和分的内容来修改时间。再有,可以给它设定一个ALARM时间,到这个时间它就能产生信号,起到定时作用,。除此之外还能显示日期,日期分为年、月、日,其显示方式为xxxx年xx 月xx日。 ' *

DB '***********PRESS ESCBUTTON TO EXIT**************',0AH,0DH,'$' TN DB'PLEASE INPUT THE NEW TIME(HH:MM:SS):',0DH,0AH,'$' TMDB'PLEASE INPUT THE ALARM TIME (HH:MM:SS):',0DH,0AH,'$' MUSICMESS DB'PLEASE CHOOSE THE TYPE OF MUSIC:1(FAST) 2(MIDDLE) 3(SLOW)',0DH,0AH,'$' MESS2DB'TIME IS:',0AH,0DH,'$' MESS3DB 'TODAY IS:',0AH,0DH,'$' DBUFFER1DB20DUP('') T_BUFFD B 40 ;在数据段开一段时间显示缓冲区 DB ? DB 40DUP(?) HOR DB? MIN DB? SEC DB? TEMPHOR DB ? TEMPMIN DB? TEMPSEC DB? MUSIC DW 800;存放音乐的频率数DATA ENDS STACK SEGMENT DB 100 DUP(?) STACK ENDS CODESEGMENT ASSUME CS:CODE,SS:STACK,DS:DATA START: CALL CLEAR ;调用清屏子程序 DISPLAY:;时间显示部分 MOV AX,DATA MOVDS,AX MOVBX,OFFSETT_BUFF;送T_BUFF的偏移地址到BX MOV AH,2CH;调用DOS时间调用功能,功能号:2CH,小时,分钟,秒数分别保存在CH,CL,DH中 INT 21H ;判断时间是否相等SUB DH,1;秒数+1修正 CALL CHECK ;.........................................................................

《数字逻辑》数字时钟课程设计报告资料

《数字逻辑》课程设计报告 题目数字时钟 学院(部)信息工程学院 专业计算机科学与技术 班级计算机一班 学生姓名 学号20132402 6 月29 日至 7 月 3 日共1 周 指导教师(签字)

题目 一.摘要: 钟表的数字化给人们的生产生活带来了极大的方便,并且极大的扩展了钟表原先的报时功能。诸如定时自动报有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常警、学校的按时自动打铃、时间程序自动控制、定时广播、定时启闭路灯,甚至各种定时电气的自启用等。所现实的意义。本次数电课设我组设计的数字时钟是由石英晶体振荡器、分频器、计数器、译码器、显示器、校时电路、报时电路和计时电路组成,石英晶体振荡器产生的信号经过分频器作为秒脉冲,秒脉冲送入计数器计数,计数结果通过“时”、“分”、“秒”译码器在七段显示器上显示时间。 二.关键词: 校时计时报时分频石英晶体振荡器 三.技术要求: 1、有“时”、“分”、“秒”(23小时59分59秒)显示且有校时功能; 2、有计时功能,时钟不会在计时的时候停下。计时范围是0~99秒; 3、有闹铃功能,闹铃响的时间由使用者自己设置,闹铃时间至少一分钟; 4、要在七段显示器(共阴极6片)显示时间; 5、电子钟要准确正常地工作。 四、方案论证与选择: 钟表的是长期使用的器件,误差容易积累由此增大。所以要求分频器产生的秒脉冲要极其准确。而石英晶体产生的信号是非常稳定的,所以我们使用石英晶体产生的信号经过分频电路作为秒脉冲。秒脉冲信号经过6级计数器,分别得到“秒”、“分”、“时”的个位、十位的计时。由实际的要求,“秒”、“分”计数器为60进制的计数器,小时为24进制。由于74LS160十进制加法计数器易于理解使用,我们在设计各个计数器时都是由采用74LS160芯片级联构成。在计时部分,最小单位是0.01s,我们采用555多谐振荡器产生100HZ的信号作为秒脉冲进入一个4级计数器,计时范围是0~99秒。石英晶体

数字电子钟课程设计实验报告

中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计任务书2016/2017 学年第一学期 学生姓名:张涛学号: 李子鹏学号: 课程设计题目:数字电子钟的设计 起迄日期:2017年1月4日~2017年7月10日 课程设计地点:科学楼 指导教师:姚爱琴 2017年月日 课程设计任务书

中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计开题报告2016/2017 学年第一学期 题目:数字电子钟的设计 学生姓名:张涛学号: 李子鹏学号:

指导教师:姚爱琴 2017 年 1 月 6 日 中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计说明书2016/2017 学年第二学期 题目:数字电子钟的设计 学生姓名:张涛学号: 李子鹏学号: 指导教师:姚爱琴 2017 年月日

目录 1 引言 (6) 2 数字电子钟设计方案 (6) 2.1 数字计时器的设计思想 (6) 2.2数字电路设计及元器件参数选择 (6) 2.2.2 时、分、秒计数器 (7) 2.2.3 计数显示电路 (8) 2.2.5 整点报时电路 (10) 2.2.6 总体电路 (10) 2.3 安装与调试 (11) 2.3.1 数字电子钟PCB图 (11) 3 设计单元原理说明 (11) 3.1 555定时器原理 (12) 3.2 计数器原理 (12) 3.3 译码和数码显示电路原理 (12) 3.4 校时电路原理 (12) 4 心得与体会 (12) 1 引言 数字钟是一种用数字电子技术实现时,分,秒计时的装置,具有较高的准确性和直观性等各方面的优势,而得到广泛的应用。此次设计数字电子钟是为了了解数字钟的原理,在设计数字电子钟的过程中,用数字电子技术的理论和制作实践相结合,进一步加深数字电子技术课程知识的理解和应用,同时学会使用Multisim电子设计软件。 2数字电子钟设计方案 2.1 数字计时器的设计思想 要想构成数字钟,首先应选择一个脉冲源——能自动地产生稳定的标准时间脉冲信号。而脉冲源产生的脉冲信号地频率较高,因此,需要进行分频,使得高频脉冲信号变成适合于计时的低频脉冲信号,即“秒脉冲信号”(频率为1Hz)。经过分频器输出的秒脉冲信号到计数器中进行计数。由于计时的规律是:60秒=1分,60分=1小时,24小时=1天,就需要分别设计60进制,24进制计数器,并发出驱动信号。各计数器输出信号经译码器、驱动器到数字显示器,是“时”、“分”、“秒”得以数字显示出来。 值得注意的是:任何记时装置都有误差,因此应考虑校准时间电路。校时电路一般

基于FPGA的数字钟设计

摘要 伴随着集成电路技术的发展, 电子设计自动化(EDA)技术逐渐成为数字电路设计的重要手段。基于FPGA的EDA技术的发展和应用领域的扩大与深入,使得EDA技术在电子信息,通信,自动控制,计算机等领域的重要性日益突出。 本设计给出了一种基于FPGA的多功能数字钟方法,采用EDA作为开发工具,VHDL语言和图形输入为硬件描述语言,QuartusII作为运行程序的平台,编写的程序经过调试运行,波形仿真验证,下载到EDA实验箱的FPGA芯片,实现了设计目标。 系统主芯片采用CycloneII系列EP2C35F672C8。采用自顶向下的设计思想,将系统分为五个模块:分频模块、计时模块、报时模块、显示模块、顶层模块。用VHDL语言实现各个功能模块, 图形输入法生成顶层模块. 最后用QuartusII 软件进行功能仿真, 验证数字钟设计的正确性。 测试结果表明本设计实现了一个多功能的数字钟功能,具有时、分、秒计时显示功能,以24小时循环计时;具有校正小时和分钟的功能;以及清零,整点报时功能。 关键词:EDA技术;FPGA;数字钟;VHDL语言;自顶向下

Abstract Accompanied by the development of integrated circuit technology, electro nic design automation (EDA) technology is becoming an important means of digital circuit design. FPGA EDA technology development and expansion of a pplication fields and in-depth, the importance of EDA technology in the field of electronic information, communication, automatic control, computer, etc. hav e become increasingly prominent. This design gives a FPGA-based multifunctional digital clock using ED A as a development tool, VHDL language and graphical input hardware descri ption language, the QuartusII as a platform for running the program, written procedures debugging and running, the waveform simulation downloaded to th e FPGA chip to achieve the design goals. The main system chip CycloneII series EP2C35F672C8. Adopted a topdw n design ideas, the system is divided into five modules: frequency module, ti ming module, timer module, display module, the top-level module. With VHD L various functional modules, graphical input method to generate the top-level module. Last QuartusII under simulation, to verify the correctness of the digi tal clock design. The test results show that the design of a multifunctional digital clock, with seconds time display, 24-hour cycle timing; has a school, cleared, and th e whole point timekeeping functions. Key words: EDA technology; FPGA; VHDL language; top-down; digital cloc k

数字时钟课程设计方案设计方案

课程设计题目名称:数字时钟 专业名称:电气工程及其自动化班级: ******** 学号: *******8 学生姓名: ******* 任课教师: *******

《电子技术课程设计》任务书

2.对课程设计成果的要求〔包括图表(或实物)等硬件要求〕:设计电路,安装调试或仿真,分析实验结果,并写出设计说明书,语言流畅简洁,文字不得少于3500字。要求图纸布局合理,符合工程要求,使用Protel软件绘出原理图(SCH)和印制电路板(PCB),器件的选择要有计算依据。 3.主要参考文献:⑴《电子技术课程设计指导》彭介华编,高等教育出版社,1997年10月 ⑵《数字电子技术》康华光编著高等教育出版社, 2001年 要求按国标GB 7714—87《文后参考文献著录规则》书写。 4.课程设计工作进度计划: 序号起迄日期工作内容 初步设想和资料查询,原理图的绘画 1 2015.11.18-2015.12.21 仿真调试,元件参数测定,实物的拼接与测试 2 2015.12.21-2016.1.8 叙写设计报告,总结本次设计,论文提交 3 2016.1.8-2016.1.18 主指导教师日期:年月日

摘要 数字时钟已成为人们日常生活中必不可少的必需品,广泛于个人家庭以及办公室等公共场所,给人们的生活、学习、工作、娱乐带来了极大的方便。并且数字时钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。报告围绕此次数字钟的设计进行介绍、总结,包含了设计的步骤,前期的准备,装配的过程。在实装时,采用了74LS90进行计数,用CD4060产生秒脉冲,CD4511进行数码管转换显示,还要考虑电路的校时、校分,每块芯片各设计为几进制等等,最后实现了数字钟设计所要求的各项功能:时钟显示功能;快速校准时间的功能。 关键字:数字时钟校时CD4511

数字电子时钟课程设计

数字电子技术基础课程设计报告 班级:姓名: 学号: 一、设计目的 1掌握专业基础知识的综合能力。 2完成设计电路的原理设计、故障排除。 3逐步建立电子系统的研发、设计能力,为毕业设计打好基础。 4让学生掌握组合逻辑电路、时序逻辑电路及数字逻辑电路系统的设计、安装、测试方法。 5进一步巩固所学的理论知识,提高运用所学知识分析和解决实际问题的能力。 6培养书写综合实验报告的能力。 二、设计仪器 1 LM555CH 2 74LS161N 74LS160N 74LS290 3 74LS00 74LS08 4 电源电阻电容二极管接地等 三数字电子钟的基本功能及用途 现在数字钟已成为人们日常生活中:必不可少的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性

能稳定、集成电路有体积小、功耗小、功能多、携带方便等优点,,因此在许多电子设备中被广泛使用。 电子钟是人们日常生活中常用的计时工具,而数字式电子钟又有其体积小、重量轻、走时准确、结构简单、耗电量少等优点而在生活中被广泛应用,因此本次设计就用数字集成电路和一些简单的逻辑门电路来设计一个数字式电子钟,使其完成时间及星期的显示功能。 多功能数字钟采用数字电路实现对“时”、“分”、“秒”数字显示的计时装置。具有时间显示、走时准确、显示直观、精度、稳定等优点。电路装置十分小巧,安装使用也方便。同时在日期中,它以其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化而受广大消费的喜爱。 四设计原理及方框图 数字钟实际上是一个对标准频率进行计数的计数电路,标准的1HZ时间信号必须做到准确稳定。由图可见:本数字钟电路主要由震荡器、、时分秒计数器、译码显示器构成。它们的工作原理是:由震荡器产生的高频脉冲信号作为数字钟的时间基准,送入秒计数

多功能数字钟的VHDL设计

毕业设计论文 多功能数字钟的VHDL设计 系 xxxxxxxxxxxxxxxxx 专业 xxxxxxxxxxxxx 学号 xxxxxxxxxxx 姓名 xxxxxxx 班级 xxxxxxxxxxxx 指导老师 xxxxxxxxxx 职称 指导老师职称 毕业设计时间 2009年11月——2010年1月

摘要:应用VHDL语言编程,进行了多功能数字钟的设计,并在MAX PLUSⅡ环境下通过了编译、仿真、调试。 关键词:VHDL;EDA;数字钟;仿真图 0.引言 随着科学技术的迅猛发展,电子工业界经历了巨大的飞跃。集成电路的设计正朝着速度快、性能高、容量大、体积小和微功耗的方向发展。基于这种情况,可编程逻辑器件的出现和发展大大改变了传统的系统设计方法。可编程逻辑器件和相应的设计技术体现在三个主要方面:一是可编程逻辑器件的芯片技术;二是适用于可逻辑编程器件的硬件编程技术,三是可编程逻辑器件设计的EDA开发工具,它主要用来进行可编程逻辑器件应用的具体实现。在本实验中采用了集成度较高的FPGA 可编程逻辑器件, 选用了VHDL硬件描述语言和MAX + p lusⅡ开发软件。VHDL硬件描述语言在电子设计自动化( EDA)中扮演着重要的角色。由于采用了具有多层次描述系统硬件功能的能力的“自顶向下”( Top - Down)和基于库(L ibrary - Based)的全新设计方法,它使设计师们摆脱了大量的辅助设计工作,而把精力集中于创造性的方案与概念构思上,用新的思路来发掘硬件设备的潜力,从而极大地提高了设计效率,缩短 了产品的研制周期。MAX + p lusⅡ是集成了编辑器、仿真工具、检查/分析工具和优化/综合工具的这些所有开发工具的一种集成的开发环境,通过该开发环境能够很方便的检验设计的仿真结果以及建立起与可编程逻辑器件的管脚之间对应的关系。 1. EDA简介 20世纪90年代,国际上电子和计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、工具等方面进行了彻底的变革,取得了巨大成功。在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用,已得到广泛的普及,这些器件为数字系统的设计带来了极大的灵活性。这些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计可以如同软件设计那样方便快捷。这一切极大地改变了传统的数字系统设计方法、设计过程和设计观念,促进了EDA技术的迅速发展。 EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL 完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。 这些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计可以如同软件设计那样方便快捷。这一切极大地改变了传统的数字系统设计方法、设计过程和设计观念,促进了EDA技术的迅速发展。

微机原理课程设计报告-数字时钟的实现(附代码)

合肥工业大学 计算机与信息学院 课程设计 课程:微机原理与接口技术设计专业班级:计算机科学与技术x班学号: 姓名:

一、设计题目及要求: 【课题6】数字时钟 1.通过8253 定时器作产生秒脉冲定时中断。在中断服务程序中实现秒、分、小时的进位(24小时制)。 2.在七段数码管上显示当前的时分秒(例如,12 点10 分40 秒显示为121040)。 3.按“C”可设置时钟的时间当前值(对准时间)。 二、设计思想: 总体思想: 1、功能概述: 实验箱连线: 本实验建立在Dais实验箱基础上完成的基本连线及程序如下: 138译码器: A,B,C,D,分别连接A2,A3,A4,GS; y0连接8253的CS片选信号; y1连接8259的CS片选信号; 8253连线: 分频信号T2接8253的CLK0; 8253的OUT0接8259的IR7; 8253的gate信号接+5V; 8259连线: 8259的数据线接入数据总线;

本程序包括显示模块,键盘扫描模块,时间计数模块,设置模块等几个模块, (1)程序运行后,LED显示000000初始值,并且开始计数 (2)按C键进行设置初始时间,考虑到第一个数只能是0,1,2,当第一个数显示2时第二个数只能显示0~4,同理下面各位应满足时钟数值的合理的取值; (3)在手动输入初始值时,按D键进行回退1位修改已设置值,连续按D键可以全部进行删除修改。 2、主程序设计 主程序中完成通过调用子程序完成对8253及8259的初始化,对8259进行中断设置。主要在显示子程序和键盘子处理程序之间不断循环,8253每一秒给8259一个刺激,当8259接受到刺激后会给CPU一个中断请求,CPU会转去执行中断子程序,而中断子程序设置成时间计数加,即完成电子表的整体设计。详细流程图见图三-1。 3、LED显示子程序设计 本程序显示部分用了6个共阳极LED作为显示管,显示程序要做到每送一次段码就送一次位码,每送一次位码后,将位码中的0右移1位作为下次的位码,从而可以实现从左到右使6个LED依次显示出相应的数字。虽然CPU每隔一定时间便执行显示程序,但只要这个时间段不太长,由于人眼的视觉作用,就可以在6个LED上同时见到数字显示。 4、键盘扫描子程序设计 本程序需要用键盘对时间的初始值进行设置,因此对键盘扫描的子程序需要满足的功能如下: 判断是否是C键,若不是就返回至主程序,若是C键就开始对时间初始值进行设置,同时因注意到第一个值不可以超过2,第一个数是2时第二数不能超过4,余下的同理要满足时间数值的取值范围呢,若不是合法输入不予反应继续等待输入。当遇到输入数值错误时可以按下D键进行删除一位重新设置;当6位初始值全部设置成功后,电子表将自动开始走表。 5、时间运算子程序设计 该子程序的主要功能是对时、分、秒的运算,并把运算出的最终结果存到事先已经开辟

电子时钟课程设计55026

. 单片机课程设计题目:电子时钟 班级: 姓名: 学号: 指导教师: 设计时间:

.

摘要 针对数字时钟的问题,利用8051单片机,proteus软件,vw(伟福)等软件,运用单片机中定时计数器T0,中断系统以及按键的控制实现了电子时钟的设计。设计的电子时钟通过数码管显示,并能通过按键的设计实现小时与分钟的调整。时间的启动与暂停等等。 关键字:数字时钟;单片机;定时计数器 .

1 引言 时钟,自他发明的那天起,就成为人类的朋友,但随着时间的推移,科学技术不断的发展,人们对时间计量的进度要求越来越高,应用越来越广。怎样让时钟更好地为人类服务,怎样让我们的老朋友焕发青春呢?这就要求人们不断设计出新型时钟。 现金,高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟,石英表,石英钟都使用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调校,数字式电子钟用集成电路计时时,译码代替机械式传动,用LED显示器代替指针显示器,减小了计时误差,这种表具有时、分、秒显示的功能,还可以进行时、分的校对,片选的灵活性好。 时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准震荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,及定时时间,它通常有两种方法实现:一是软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要起不高的场合;二是用专门的时钟芯片实现,在对时间精度要求很高的情况下,通常采用这种方法。本文主要介绍用单片机内部的定时计数器来实现电子时钟的方法,以单片机为核心,辅以必要电路,构成了一个单片机电子时钟。 单片机应用系统由硬件系统和软件系统两部分组成。硬件系统是指单片机以及扩展的存储器、I\O接口、外围扩展的功能芯片以及接口电路。软件系统包括监控程序和各种应用程序。 在单片机应用系统中,单片机是整个系统的核心,对整个系统的信息输入、处理、信息输出进行控制。与单片机配套的有相应的复位电路、时钟电路以及扩展的存储器和I\O接口,使单片机应用系统能够运行。 在一个单片机应用系统中,往往都会输入信息和显示信息,这就涉及键盘和显示器。在单片机应用系统中,一般都根据系统的要求配置相应的键盘和显示器。配置键盘和显示器一般都没有统一的规定,有的系统功能复杂,需输入的信息和显示的信息量大,配置的键盘和显示器功能相对强大,而有些系统输入/输出的信息少,这时可能用几个按键和几个LED指示灯就可以进行处理了。在单片机应用系统在中配置的键盘可以是独立键盘,也可能是矩阵键盘。显示器可以是LED指示灯,也可以是LED数码管,也可 .

数字钟课程设计

数字逻辑电路课程设计 课题:数字钟 姓名:刘亮 班级:通信2班 学号:21 成绩: 指导教师:查根龙 开课时间: 2014-2015学年第2学期

摘要 (1) ABSTRACT (2) 第1章设计背景 (3) 1.1设计任务 (3) 1.2设计要求 (3) 1.3 设计目的 (3) 第2章课程设计方案 (4) 2.1 数字钟的基本组成和工作原理 (4) 2.2 振荡电路 (5) 2.3 分频电路 (6) 2.4时分秒计数电路 (7) 2.5 校时校分功能 (10) 2.6整点报时电路 (10) 2.7上下午显示电路 (11) 第三章课程总结 (12) 第四章参考文献 (13) 第五章附件 (14) 5.1 电路原理图 (14) 5.2 元器件清单 (14)

摘要 电子钟在现代社会已经使用的非常广泛,伴随着数字电路技术的发展,数字钟的出现,更加方便了大家的生活,同时也大大地促进了社会的进步。数字电路具有电路简单、可靠性高、成本低等优点,本设计就以数字电路为核心设计智能电子钟。 数字钟就是由电子电路构成的计时器。是一个将“时”,“分”,“秒”显示于人的视觉器官的计时装置。它的计时周期为24小时,显示满刻度为23时59分59秒,另外应有校时功能和、报时、上下午显示等附加功能。主电路系统由秒信号发生器、时、分、秒计数器,译码器及显示器,校时电路,上下午显示,整点报时电路组成。秒信号产生器是整个系统的时基信号,它直接决定计时系统的精度,一般用石英晶体振荡器加分频器来实现。秒信号产生器将标准秒信号送入“秒计数器”,“秒计数器”采用60进制计数器,每累计60秒发出一个“分脉冲”信号,该信号将作为“分计数器”的时钟脉冲。“分计数器”也采用60进制计数器,每累计60分钟,发出一个“时脉冲”信号,该信号将被送到“时计数器”。“时计数器”采用24进制计时器,可实现对一天24和12小时的累计。计数器用的是74160。译码显示电路将“时”、“分”、“秒”计数器的输出状态送到七段显示译码器译码,通过六位LED七段显示器显示出来。整点报时电路时根据计时系统的输出状态产生一脉冲信号,然后去触发一音频发生器实现报时。校时电路时用来对“时”、“分”、“秒”显示数字进行校对调整的 关键词:计时器;计数;译码;报时;校时校分

根据QuartusII软件的数字时钟设计

实验名称:数字时钟设计 姓名:杨龙成班级:电子与通信工程学号: 3120302012 成绩: 一、实验目的 1.掌握各类计数器及它们相连的设计方法; 2.掌握多个数码管显示的原理与方法; 3.掌握模块化设计方式; 4.掌握用VHDL语言的设计思想以及整个数字系统的设计。 二、实验内容 1. 设计要求 1)具有时、分、秒计数显示功能,在数码管显示00:00:00~23:59:59,以24小时循环计时。 2)完成可以计时的数字时钟时钟计数显示时有LED灯的花样显示。 3)具有调节小时、分钟及清零的功能。 4)具有整点报时功能。 2. 性能指标及功能设计 1)时钟计数:完成时、分、秒的正确计时并且显示所计的数字;对秒、分60进制计数,时钟—24进制计数,并且在数码管上显示数值。 2)时间设置:手动调节分钟、小时,可以对所设计的时钟任意调时间。可以通过实验板上的键7和键4进行任意的调整,因为时钟信号均是1HZ的,所以LED灯每变化一次就来一个脉冲,即计数一次。 3)清零功能:reset为复位键,低电平时实现清零功能,高电平时正常计数。 4)蜂鸣器在整点时有报时信号产生,产生“滴答.滴答”的报警声音。 5)根据进位情况,LED灯在时钟显示时有花样显示信号产生。 3. 系统方框图

三、设计原理和过程 3.1 硬件设计 本设计使用VHDL硬件开发板,可编程逻辑器件EMP1270T144C5系列。设计过程中用到的外围电路的设计有电源部分,可编程器件EMP1270T144C5,CPLD –JTAG接口,晶振和蜂鸣器,LED数码管显示,DIP开关与按键输入(具体电路见附录) 3.2 软件设计 3.2..1 程序包my_pkg的设计说明 为了简化程序设计增加可读性,系统采用模块化的设计方法,重复使用的组件以元件(component)的形式存在,以便相关块的调用。下面列出my_pkg组件包的代码。library ieee; use ieee.std_logic_1164.all; package my_pkg is component div40M------------------------------------------------------------------元器件1 Port( clk: in std_logic; f1hz : out std_logic); end component; component count60-----------------------------------------------------------------元器件2 Port(clr,clk:in std_logic; one :buffer std_logic_vector(3 downto 0); ten :buffer std_logic_vector(3 downto 0); full:out std_logic; dout:buffer std_logic_vector(7 downto 0)); end component; component count24-----------------------------------------------------------------元器件3 Port(clr,clk:in std_logic;

(完整版)数字电路课程设计--数字时钟

《数字时钟》技术报告 概要 数字钟是一个将“ 时”,“分”,“秒”显示于人的视觉器官的计时装置。它的计时周期为24 小时,显示满刻度为23 时59 分59 秒。一个基本的数字钟电路主要由秒信号发生器、“时、分、秒、”计数器、译码器及显示器组成。由于采用纯数字硬件设计制作,与传统的机械表相比,它具有走时准,显示直观,无机械传动装置等特点。 本设计中的数字时钟采用数字电路实现对“时” 、“分”、“秒” 的显示和调整。通过采用各种集成数字芯片搭建电路来实现相应的功能。具体用到了555 震荡器,74LS90 及与非,异或等门集成芯片等。该电路具有计时和校时的功能。 在对整个模块进行分析和画出总体电路图后,对各模块进行仿真并记录仿真所观察到的结果。 实验证明该设计电路基本上能够符合设计要求! 一、系统结构。 (1)功能。此数字钟能显示“时、分、秒”的功能,它的计时周期是24 小时,最大能显示23 时59 分59 秒,并能对时间进行调整和校对,相对于机械式的手表其更为准确。 2)系统框图

系统方框图 1 (3)系统组成。 1.秒发生器:由555 芯片和RC 组成的多谐振荡器,其555 上3 的输出频率由接入的电阻与电容决定。 2.校时模块:由74LS03 中的4 个与非门和相应的开关和电阻构成。 3.计数器:由74LS90 中的与非门、JK 触发器、或门构成相应芯片串接得到二十四、六十进制的计数器,再由74LS90 与74LS08 相连接而得到秒、分、时的进分别进位。 4.译码器:选用BCD 锁存译码器4511,接受74LS90 来的信号,转换为7 段的二进制数。

5.显示模块:由7 段数码管来起到显示作用,通过接受CD4511 的信号。本次选用的是共阴型的CD4511 。 二、各部分电路原理。 1.秒发生器:555 电路内部(图2-1)由运放和RS 触发器共同组成,其工作原理由8处接VCC ,C1 处当 Uco=2/3Vcc>u11 时运放输出为1,同理C2 也一样。最终如图3 接口就输出矩形波,而形成的秒脉冲。 图 2-2 555 功能表 2.校时模块:校时模块主要由74LS03中的4个与非门构成(图2-3),由其功能图看得出只要有一个输入端由H 到L 或者从L 到H 都会使输出端发生高低变化。因此通过开关的拨动产生高低信号从而对时、分处的计数器起到调数作用。

EDA数字时钟课程设计报告

EDA技术及应用课程设计说明书 2013 届电子信息工程专业班级 题目数字时钟 学号 姓名 指导教师 二О一五年月日

一、基本原理 一个完整的时钟应由三部分组成:秒脉冲发生电路、计数显示部分和时钟调整部分。 秒脉冲发生电路原理:一个时钟的准确与否主要取决于秒脉冲的精确度。为了保证计时准确我们对系统时钟48MHz进行了48000000分频,从而得到1Hz的秒脉冲。 计数显示部分原理:显示部分是用数码管LED实现的,这里使用的是共阳极的数码管如图所示8个数码管,其中左边两个数码管用来显示时的个位和十位、中间的显示分的个位和十位、最右边两个显示分的个位和十位。 时钟调整部分原理:校时电路里定义key[0]、key[1]和k2、k3分别用于控制时钟的计时开始、清零和调整功能中的时的加1、分的加1处理,从而完成对现在的时间调整。本实验电路校时电路在此完成了暂停、清零、时调整和分调整。

二、硬件设计 芯片图: 图1 数字时钟原理图 程序的调试工作都是在电脑上完成的,通过程序的输入、原理图的建立、管脚分配、编译、仿真、再下载到芯片进行运行。

电路中采用共阳极连接的七段数码管,通过程序的控制扫描驱动来显示时钟的时-分-秒。

程序中的按键设定为K1暂停、K2清零、K3调时、K4调分元件清单: 三、数字时钟的Verilog实现 管脚的分配: 程序: module clock(clk,s1,,s2,key,dig,seg); //模块名clock input clk,s1,s2; //输入时钟 input[1:0]key; //输入按键 output[7:0]dig; //数码管选择输出引脚

基于VHDL语言实现数字电子钟的设计

基于VHDL语言实现数字电子钟的设计 一.设计要求: 1、设计内容 选用合适的可编程逻辑器件及外围电子元器件,设计一个数字电子钟,利用EDA软件(QUARTUS Ⅱ)进行编译及仿真,设计输入可采用VHDL硬件描述语言输入法)和原理图输入法,并下载到EDA实验开发系统,连接外围电路,完成实际测试。 2、设计要求 (1)具有时、分、秒计数显示功能。 (2)具有清零的功能,且能够对计时系统的小时、分钟进行调整。 (3)小时为十二小时制。 二.实验目的: 1.通过这次EDA设计中,提高手动能力。 2.深入了解时事时钟的工作原理,以及时事时钟外围硬件设备的组成。 3.掌握多位计数器相连的设计方法。 4.掌握十进制,六进制,二十四进制计数器的设计方法。 5.继续巩固多位共阴极扫描显示数码管的驱动,及编码。 6.掌握扬声器的驱动。 7.LED灯的花样显示。 8.掌握CPLD技术的层次化设计方法 三.实验方案: 数字系统的设计采用自顶向下、由粗到细, 逐步分解的设计方法, 最顶层电路是指系统的整体要求, 最下层是具体的逻辑电路的实现。自顶向下的设计方法将一个复杂的系统逐渐分解成若干功能模块, 从而进行设计描述, 并且应用EDA 软件平台自动完成各功能模块的逻辑综合与优化, 门级电路的布局, 再下载到硬件中实现设计。因此对于数字钟来说首先是时分秒的计数功能,然后能显示,附带功能是清零、调整时分。通过参考EDA 课程设计指导书,现有以下方案: 1.作为顶层文件有输入端口:时钟信号,清零按键,调时按键,调分按键;输出端口有:用于接数码管的八段码

输出口,扫描用于显示的六个数码管的输出口。 2.底层文件分为: (1)时间计数模块。分秒计数模块计数为60计数,时计数模块为12计数。 (2)显示模块。显示模块由一个六进制计数器模块和一个七段译码器组成。进制计数器为六选一选择器的选择判断端提供输入信号, 六选一选择器的选择输出端分别接秒个位、秒十位、分个位、分十位和时个位、时十位的选通位用来完成动态扫描显示,同时依次输出秒个位、秒十位、分个位、分十位和时个位、时十位数向给译码模块。 (3)报警模块当时间到整点时就报时。输入有时分秒计数,时钟脉冲。 (4)采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以不用此种作为显示.采用LED数码管动态扫描,LED数码管价格适中,对于显示数字最合适,但无法显示图形文字,在显示星期是也只能用数字表示,而且采用动态扫描法与单片机连接时,在编程时比较复杂。所以也不采用了LED数码管作为显示。采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示文字,图形,显示多样,清晰可见,所以在此设计中采用LCD液晶显示屏。 四.实验原理: 1. 实验主控系统原理图: 模块设计原理图:

电子技术课程设计数字时钟

目录 目录 (1) 前言 (2) 内容摘要 (2) 设计要求 (2) 第一章方案设计 (3) 第二章硬件设计及仿真 (4) 2.1振荡器的设计 (4) 2.2分频器的设计 (6) 2.3时间计数器的设计 (7) 2.3.1六十进制计数器 (7) 2.3.2二十四进制计数器 (8) 2.4译码器与显示器的设计 (9) 2.5校时电路 (10) 第三章电路的总体设计 (11) 第四章元器件清单及部分芯片介绍 (12) 4.1元器件清单 (12) 4.2部分芯片功能介绍 (13) 4.2.1 74LS90N (13) 4.2.2 555 (14) 第五章总结 (16) 附录参考文献 (17)

前言 内容摘要 数字钟是一个将“时”,“分”,“秒”显示于人的视觉器官的计时装置。它的计时周期为24小时,显示满刻度为23时59分59秒。一个基本的数字钟电路主要由秒信号发生器、“时、分、秒、”计数器、译码器及显示器组成。由于采用纯数字硬件设计制作,与传统的机械表相比,它具有走时准,显示直观,无机械传动装置等特点。 本设计中的数字时钟采用数字电路实现对“时”、“分”、“秒”的显示和调整。通过采用各种集成数字芯片搭建电路来实现相应的功能。具体用到了555震荡器,74LS90及与非,异或等门集成芯片等。该电路具有计时和校时的功能。 在对整个模块进行分析和画出总体电路图后,对各模块进行仿真并记录仿真所观察到的结果。 实验证明该设计电路基本上能够符合设计要求! 设计要求 (1)、要求电路能够产生定时脉冲; (2)、要求电路能够根据对定时脉冲的计算得到时,分,秒;(3)、要求电路能够产生时,分,秒。

相关文档
最新文档