1、项目三项目三 电子钟的设计电子钟的设计能力目标1、能够使用单片机的定时/计数器实现定时、计 数等应用。2、能够完成电子钟硬件电路与控制程序的设计、 制作与调试。知识目标1、了解单片机定时器/计数器的内部结构。2、掌握单片机定时器的各种工作方式及特点、 应用场合。3、掌握定时器中断服务程序的编写。如果计数脉冲来自系统时钟,称之为“定时器”,每个机器周期计数器加1; 如果计数脉冲来自外部电路,称之为“计数器” 一旦计数器产生溢出,TF0变为1 ,向CPU发出中断请求 TF0/TF1:定时器/计数器T1和T0的溢出中断标志。为1,表示定时器/计数器的计数值已由全1变为全0,正向CPU发中断请求。 T
2、R0/TR1:定时器/计数器T0和T1的启停控制位:为0时,定时器/计数器停止工作;为1时,启动定时器/计数器工作。 选择定时/计数器的工作方式,M1M0=00,方式001,方式110,方式211,方式3定时方式/计数方式的选择控制位。为0,选定时方式,计数脉冲来自系统时钟的12分频;为 1,选计数方式,计数脉冲来自外部电路 当GATE=0时,只要TR0=1,与门的输出就为1,计数开始。如果GATE为1,只有TR0=1,并且/INT0=1时,才允许计数。C/T=0,选择定时方式C/T=1,选择计数方式GATE=0时,由TR0控制计数器启停GATE=1时,由TR0和INT0一同控制启停TR0=1
3、时,启动定时器定时器溢出时,TF0置1(1)向TMOD寄存器写入工作方式控制字。 (2)将计数器的初值写入TH0、TL0/TH1、TL1。 (3)启动定时器/计数器:将TR0/TR1置1。(4)如果采用中断方式,还应将ET0/ET1、EA置1。 D1 D2 D3 D4 D5 D6 D7 D8 R1470RR2470RR3470RR4470RR5470RR6470RR7470RR8470RVCCP0.0P0.1P0.2P0.0P0.4P0.5P0.6P0.78051D1 D2 D3 D4 D5 D6 D7 D8 R1470RR2470RR3470RR4470RR5470RR6470RR7470R
4、R8470RVCCP0.0P0.1P0.2P0.0P0.4P0.5P0.6P0.78051T1123U1A74LS00456U1B R11 4.7KR124.7KPLUSEVCCPL1、初始化定时器/计数器T1计数工作方式2,即每 次溢出中断后能自动装入计数初值。 2、计数器TH1、TL1的初值预置为0FFH。 3、程序中设置一个位变量,每当计数器T1产生溢 出中断时求反,发光管左移还是右移取决于该 变量是0还是1 。 123 A74LS00456 B PLUSEVCC300R*84.7K4.7K4.7K4.7K4.7KVCCP0.0P0.0P0.2P0.3P0.4P0.5P0.6P0.7P2
5、.0P2.1P2.2INT08052abfcgde 1234567abcdefg8dpdpabfcgde abfcgde abfcgde 4.7KP2.3Q19012R14.7KR2 VCCP1.68051SPKB1定时器T0中断服务程序,用于产生产生与音符频率相应的方波 定时器T1中断服务程序,延时当前节拍所需的时间 KINC(K13) KDEC (K14) R34.7KR24.7KD1 R1510RVCCVCC8052P0.0P2.4P2.5发光管熄灭发光管亮度最低发光管亮度最高定时器T0中断服务程序 abcdefgdpCOM1COM2COM3COM4Q19012R94.7KR1051RVCCP1.0Q1 Q2 Q3 Q4 R12 R11 R10 R9 R1 470R*8R2 R3 R4 R5 R6 R7 R8 P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7VCCP2.0P2.1P2.2P2.3LED1LED2LED3LED48051KSET(K13) KINC(K14) P2.4P2.5R1310KR1410KVCCR1510KKDEC(K15) P2.6P1.0B1 SPK