数字钟的设计_毕业设计(编辑修改稿)内容摘要:
其中,秒钟调整按键的功能是当闹钟时间 调整 开关闭合时调整闹钟时间的秒位,XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 1 2 3 4 5 6 7 8 U1 AT89C51 SW1 SWSPST 反之对时间值的秒位进行调整,分钟调整按键的功能是当 闹钟时间调整开关 闭 合时调整闹钟时间的分位,反之对时间值的分位进行调整,时钟调整按键的功能是当 闹钟时间调整开关 闭合时调整闹钟时间的时位,反之对时间值的时位进行调整。 各按键每按一次 +1,当秒位和分位加到 60 自动转化为 0,当时位加到 24 自动转化为 0。 键盘的硬件电路设计只能保证八个按键信号的可靠进入,要想完成键盘的输入功能,还要靠软件编程来具体实现。 当时间值调整准确,按下时钟运行按键启动定时器中断开始准确计时。 数码管显示电路设计 在目前的扫描显示电路中为了节省成本广泛使用七段数码管显示,其工业控制、仪表仪器等都应用七段数码 管做显示输出。 用十进制数码管直观显示数字系统的运行数据,常常是主要的显示手段,数码管每个线段都是一个发光二极管 LED( Light Emitting Diode)组成的。 因其驱动电压小、功耗低、寿命长和可靠性高等优点广泛显示电路中。 七段数码管显示就是将七个发光二极管 LED(加小数点为八个)按一定的方式排列起来,七段 a、 b、 c、 d、 e、 f、 g(小数点 DP)各对应一个发光二极管,利用不同发光段的组合,显示不同的阿拉伯数字或字符,要使数码管显示,必须具备两个条件: COM 端接地; 2. 要使( a,b,c,d,e,f,g,dp)某些 端 口 接 高电。 (a) 显示器 (b) 段组合图 图 八段数字显示器及发光段组合图 以共阴极数码管为例 fabcdegDPd c DPCOMeg baCOMf 7 段数码管的段码为 7 位, 8 段数码管的段码为 8 位,用一个字节即可表示。 段码字节中代码位与各段发光二极管的对应关系如下: 段码 D7 D6 D5 D4 D3 D2 D1 D0 段名 dp g f e d c b a 显示十六进制数的段码值如下图所示: 显示数字 七段共阴极段码 八段共阴极段码 八段共阴极倒置段码 0 3FH BFH BFH 1 06H 86H B0H 2 5BH DBH DBH 3 4FH CFH F9H 4 66H E6H F4H 5 6DH EDH EDH 6 7DH FDH EFH 7 07H 87H B8H 8 7FH FFH FFH 9 6FH EFH FDH 本设计需设置 6 个数码管,其中时个位与倒置的分十位结合显示数字及“:”,分个位与秒十位结合显示数字及“:”。 在使用中,为了 给发光二极管加驱动电压,它们应有一个公共引脚,公共引脚共有 共阴极和共阳极 两种连接方法, 如图下图所示。 ( a)共阳极接法 (b) 共阴极接法 其中 共阴极接法把发光二极管的阴极连在一起构成阴极公共引脚,使用时阴极COMCOMaabbccddeeffggDPDP 公共引脚接地,这样阳极引脚上加高电平的发光二极管就导通点亮;共阳极接法则是把发光二极管的阳极连在一起作为阳极公共引脚,使用时阳极公共引脚接 +5V,这样阴极引脚上加低电平的发光二极管即可导通点亮。 此图 各数码 管的 a,b,c,d,e,f,g,DP 端分别接 ,,。 自秒个位,秒十位,分个位,分十位,时个位,时十位起数码管的 COM 端分别接,,,对应数码管连接方法如下: X T A L 218X T A L 119A L E30EA31P S E N29RS T9P 0 .0 /A D 039P 0 .1 /A D 138P 0 .2 /A D 237P 0 .3 /A D 336P 0 .4 /A D 435P 0 .5 /A D 534P 0 .6 /A D 633P 0 .7 /A D 732P 1 . 01P 1 . 12P 1 . 23P 1 . 34P 1 . 45P 1 . 56P 1 . 67P 1 . 78P 3 .0 /R X D10P 3 .1 /T X D11P 3 .2 /I NT 012P 3 .3 /I NT 113P 3 .4 /T 014P 3 .7 / R D17P 3 . 6 / W R16P 3 .5 /T 115P 2 .7 /A 1 528P 2 .0 / A 821P 2 .1 / A 922P 2 .2 /A 1 023P 2 .3 /A 1 124P 2 .4 /A 1 225P 2 .5 /A 1 326P 2 .6 /A 1 427U1A T 8 9 C5 1234567891R P 1RE S P A C K 8 蜂鸣器电路设计 本设计中当闹钟预设时间与当前显示时间值相同时驱动蜂鸣器连续工作 1 分钟,起到提醒时间的作用,给人们的工作、学习、生活带来方便。 将蜂鸣器一端与 相连,另一端与 VCC 相连,当 =0 时,蜂鸣器开始工作。 具体连接电路如下图所示: X T A L 218X T A L 119A L E30EA31P S E N29RS T9P 0 .0 /A D 039P 0 .1 /A D 138P 0 .2 /A D 237P 0 .3 /A D 336P 0 .4 /A D 435P 0 .5 /A D 534P 0 .6 /A D 633P 0 .7 /A D 732P 1 . 01P 1 . 12P 1 . 23P 1 . 34P 1 . 45P 1 . 56P 1 . 67P 1 . 78P 3 .0 /R X D10P 3 .1 /T X D11P 3 .2 /I NT 012P 3 .3 /I NT 113P 3 .4 /T 014P 3 .7 / R D17P 3 . 6 / W R16P 3 .5 /T 115P 2 .7 /A 1 528P 2 .0 / A 821P 2 .1 / A 922P 2 .2 /A 1 023P 2 .3 /A 1 124P 2 .4 /A 1 225P 2 .5 /A 1 326P 2 .6 /A 1 427U1A T 8 9 C5 1B U Z 1B UZ Z E RV C CR31kQ12 N22 2 2S W 2S W S P S T 3 软件设计 根据设计方案要求,应用 Keil 软件和 Proteus 软件对电路进行仿真,实现设计的要求,具备对时间即时的显示,对时间和闹铃的设定。 该课题的软件设计采用模块化设计的思想即将程序划分为若干个相对独立的功能模块,画出每一个功能模块的详细流程图,并根据流程图编写程序,最后按照软件设计的总体结构框图,将各模块连接成一个完整的主程序。 本设计中 主要模块包括 初始化参数设置、按键处理、数码管显示模块及蜂鸣器工作模块, 下面对软件各部分程序进行简要介绍: 初始化参数设置如下: include define uchar unsigned char define uint unsigned int uchar code table1[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}。 uchar code table2[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef}。 uchar code table3[]={0xbf,0xb0,0xdb,0xf9,0xf4,0xed,0xef,0xb8,0xff,0xfd}。 uchar dis[6] ={0,0,0,0,0,0}。 uchar shihao, second,minite,hour,bsel。 uchar tsecond=0。 uchar tminite=0。 uchar thour=0。 uint i,j,m,n。 sbit P1_0=P1^0。 sbit P1_1=P1^1。 sbit P1_2=P1^2。 sbit P1_3=P1^3。 sbit P1_4=P1^4。 sbit beep=P3^6。 void display()。 void ndisplay()。 void tiaoshi()。 void ntiaoshi()。 定时器 0 服务程序 毫秒计数 10ms 定时器计数 +1 毫秒计数到 100 次 =1s。 重装定时常数,秒计数 +1 秒计数 =60s。 秒计数 =0,分计数 +1 分计数 =60min。 分计数 =0,时计数 +1 时计数 =0 中 断返回 时计数 =24h。 N Y 时钟计时程序流程图 本程序利用定时器中断实现数字钟的时钟计时。 : 程序分析 一次 10ms 定时结束,增加一个计数变量 shihao( 0—— 100); 当 shihao 增加到 100, second+1,shihao 清零; 当 second 增加到 60, minite+1, second 清零; 当 minite 增加到 60, hour+1, minite 清零; 当 hour 增加到 24, hour 清零; (1) TMOD:定时器 T0 方式 1, TMOD=0x01。 (2) 计算初值: fosc=12MHZ,机器周期为 1us。 一次定时时间 =10ms,T0 定时 10ms=10ms/1us=10000,即 TH0=(6553610000)/256。 TH1=(6553610000)%256。 (3) 中断方式:允许定时器 T0 中断。 EA=1。 ET0=1。 具体程序如下 :。数字钟的设计_毕业设计(编辑修改稿)
相关推荐
抗干扰能力强。 如图下图 AT89C51 单片机 直接 DS1302 的 RST 端,上电后, AT89C51 的 脚自动输出高电平, 作为串行时钟接口, 作为始终数据的 I/O。 DS1302 的晶振选用 32768Hz,电容推荐值为 6pF。 因为振荡频率较低,也可以不接电容,对计时精度影响不大。 10 图 23 时钟电路 DS1302 时钟芯片包括实时时钟 /日历和 31 字节的静态
ELSIF(rst=39。 039。 )THEN tem1=0000。 tem2=0000。 ELSIF(clk39。 event AND clk=39。 139。 )THEN IF tem1=1001 THEN tem1=0000。 IF tem2=0101 THEN tem2=0000。 co=39。 139。 ELSE tem2=tem2+1。 co=39。 039。 END IF。
集成环境包括用于目标设备(如 PDA 和 Smartphone)的工具。 Web 窗体 Web 窗体是用于创建可编程网页的 技术。 Web 窗体将自己呈现为浏览器兼容的 HTML 和脚本,这使任何平台上的任何浏览器都可以查看 Web 页。 Windows 窗体 Windows 窗体用于在 .NET Framework 上创建 Microsoft Windows 应用程序。
24MHz,它决定了单片机电路产生的时钟信号震荡频率,在本系统中选择的是 12MHz,因而时钟信号的震荡频率为 12MHz。 复位电路 单片机在启动运行时都需要复位,使 CPU 和系统中的其他部件都处于一个确定的初始状态,并从这个状态开始工作。 其复位电路图如图 10 所示。 2 2 uR22 0 0 22uFC1GND1KR1Res3200R00Res3RETSSWPB 图 10
6 / W R16P 3 .5 /T 115P 2 .7 /A 1 528P 2 .0 / A 821P 2 .1 / A 922P 2 .2 /A 1 023P 2 .3 /A 1 124P 2 .4 /A 1 225P 2 .5 /A 1 326P 2 .6 /A 1 427U2A T 8 9 C 5 2X1C R Y S T A LC12 2 p FC22 2 p FC31 0 u F
时间。 加在 RST端的高电平信号要维持足够长的时间才能保证系统可靠复位。 一般来说复位方式有上电自动复位和按钮复位两种。 图 33是 AT89c51 单片机的上电复位和按钮复位组合电路。 图 33 复位电路 A/D转化 模块 现实中大多数都是模拟量,这样并不能被我们直接采用,所以人们研制了数字量的器件,它能把模拟的物理量转变成我们能够利用的数字量,这是单片机几桶收集整理转变数据的关键