打印
[51单片机]

如何用单片机设计数字万年历。

[复制链接]
1668|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yu2818679526|  楼主 | 2013-8-5 20:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 yu2818679526 于 2013-8-8 17:05 编辑

数字万年历
ATMEL公司生产的AT89C52单片机采用高性能的静态80C51设计,欲先进工艺制造,并带有非易失性FLASH程序储存器。它是一它是一种高性能,低功耗的8CMOS微处理芯片,。主要性能特点有:
18KB Flash ROM,可以擦除1000次以上。数据保存10年,
2256字节内部RAM
3)电源控制模式:时钟可停止和恢复;空闲模式;掉电模式。
46个中断源
54个中断优先级
648I/O
7)全双工增强型UART
8316位定时/计数器,T9T1和增加的T2
9)全静态工作方式:0~24MHz
单片机是一种时序电路 必须有脉冲信号才能工作 在它的内部有一个时钟产生电路 有两种振荡方式 :一种是内部振荡方式 只要接上两个电容和一个晶振即可;另一种是外部振荡方式 采用外部振荡方式时 需在 XTL2 上加外部时钟信号 详细的内容将在以后的课程中专门介绍
PSEN(29 脚):片外 ROM 选通信号 低电平有效
ALE/PROG(30 脚):地址锁存信号输出端/EPROM 编程脉冲输入端。
RST/VPD(9 脚):复位信号输入端/备用电源输入端。
EA/VPP(31):内/外部 ROM 选择端。
P0 口(39-32 脚):双向 I/O
P1 口(1-8 脚):准双向通用 I/0
P2 口( 21-28 脚):准双向 I/0
P3 口 (10-17 脚):多用途口
时钟电路DS1302
1.DS1302的性能特性
1)实时时钟,可以对秒 分 时 日 周 月以及带润年补偿的年进行计算
2)用于高速数据暂存的310*8RAM
3)最少引脚的串行I/O
42.5~5.5V电压的工作范围
5)在2.5V是耗电小于300nA
6)用于时钟或RAM数据读/写的单字节或多字节数据转送方式
7)简单的3线接口
8)可选的慢速充电的能力
DS1302时钟芯片包括实时时钟/日历和31字节的静态RAM 。它经过一个简单的串行接口与微处理器通信。实时时钟/日历提供秒 分 时 日 周 月和年等信息。对小于31天的月和月末的日期会自动进行调整,还包括闰年校正的功能。时钟的运行可以采用24H或带AM(上午)/PM(下午)的12H格式。采用3线接口与CPU 进行同步通信,并可以采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302有主要电源/后备电源双电源引脚:Vcc1在单电源与电池供电的系统中提供低电源,并提供低功率的电池备份;Vcc2在双电源系统中提供主电源,在这中运用方式中,Vcc1连接到备份电,以便在没有主电源的情况下能保存时间信息以及数据。DS1302Vcc1Vcc2中较大的供电。当Vcc2大于Vcc1+0.2V时,Vcc2DS1302供电;当Vcc2小于Vcc1时,DS1302Vcc1供电。
2. DS1302数据操作原理
复位和时钟控制:
    数据传输的启动是由 /RST置为高电平开始的,/RST 启动控制逻辑,允许地址 / 命令序列进入移位寄存器,一个时钟周期是一个下降沿跟随一个上升沿 。数据输入时,在时钟上升沿数据必须有效,如果/RST 变低,所有数据传送即被终止,I/O引脚到一个高阻状态。 在电源冲电过程中,/RST 必须保持逻辑 0,直到 Vcc2大于 2.0V /RST01 的过程中,SCLK 必须是逻辑 0
为了提高对32位地址的寻址能力(地址/命令位1~~5=逻辑1)可以把时钟/日历或RAM寄存器规定为多字节方式。为6规定时钟或RAM,而位0规定读或写。在时钟/日历寄存器中的地址9~31RAM寄存器中的地址31不能存储数据。早多字节方式中,读或写从地址0的位0开始。必须按数据传输的次序写最先的8个寄存器。但是,当以多字节方式写RAM时,为了传输数据不必写所以的31字节。不管是否写了全部31字节,所写的每一字节都将传送至RAM
DS1302共有12个寄存器,其中有7个寄存器与日历 时钟相关,存放的数据位为BCD码形式。其日历、时间寄存器及控制字见表2,其中奇数为读操作,偶数为

   时钟暂停:秒寄存器的位7定义时钟暂停位。当他为1时,DS1302停止振荡,进入低功耗的备份方式。通常在对DS1302进行写操作时(如进行时钟调整程序),停止振荡。当它为0时,时钟将开始启动。
    AM-PM/12-24小时方式;时寄存器的位7定义为1224小时方式选择位。它为高电平时,选择12小时方式。在此方式下,位5AM/PM位,此位是高电平时表示PM,低电平时表示AM。在2小时方式下,位5第二个10[时位(20~23h)。
    DS1302的晶振选用32.768kHz,电容推荐值为6Pf,因为振荡频率较低,也可以不接电容,对计时精度影响不大。
显示电路的设计
在时间显示电路的设计中可以有两种方案可以选择。一种方案是:采用液晶(LCD)显示器。液晶显示器功耗低、轻便防震,但亮度不够高,而且造价相对较高为降低成本故不采用。另一种方案是:采用数码管(LED)显示。数码管体积小、亮度高、重量轻等优点由与本次设计不是很复杂采用方案二。
简单的LED显示器有LED状态显示器(俗称发光二极管)、LED七段显示器(俗称数码管)和LED十六段码显示器。发光二极管用于显示系统的两种状态:数码管用于显示数字;LED十六段显示器用于字符显示。下面重点介绍LED七段显示器。
1.数码管结构
数码管由8个发光二极管(以下简称字段)构成,通过不同的组合可用来显示数字0~9,字符A~F 、H、L、P、R、U、Y等符号及小数点"."。码管有分为共阳极和共阴极两种类型。
    数码管中8个发光二极管的阳极(二极管正端)连在一起。通常,公共阳极接高电平(一般接电源),其它管脚接段驱动电路输出端。当某段驱动电路的输入端为低电平时,该端所连接的字段导通并点亮。根据发光字段的不同组合可显示出各种数字或字符。此时,要求段驱动电路能吸收额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。
共阴极数码管中8个发光二极管的阴极(二极管负端)连在一起。通常,公共阴极接低电平(一般接地),其它管脚接段驱动电路输出端。当某段驱动电路的输出端为高电平时,该端所连接的字段导通并点亮。根据发光字段的不同组合可显示出各种数字或字符。同样,要求段驱动电路能提供额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。在这次设计中,所选用的电阻为510欧姆,共21个。
此设计的显示电路的设计采用普通的共阳数码管显示,采用动态扫描,以减少硬件电路。考虑到一次扫描19位数码管显示时会出闪烁情况,设计时19个数码管分三排同时扫描。第一排6个数码管分别为千年,百年,十年,年,十月,月,第二排6个数码管分别为十时,时,十分,分,十秒,秒。第三排7个数码管分别为星期,阴历十月,阴历月,阴历十日,阴历日,十日,日。显示时采用串行口输出段码,用3片74LS164来驱动3排数码管,这样扫描一次只需要7ms。
    74LS164内部为8D触发器,用以实现数据的串行移位,74LS164特性见表3。单片机以串行口方式0(移位寄存方式)输出数据,374LS164作为3排共阳数码管的串/并转换显示接口。74LS164TTL单向8位移位寄存器,可以实现串行输入,并行输出。其中A B(第1 2脚)为串行数据输入端,2个引脚按逻辑“与”运算规律输入信号,共一个输入信号时可以并接,共同作为输入脚。CP(第8脚)为时钟输入端,可以连接到串行口的TXD端。每一个时钟信号的上升沿加到CP端时,移位寄存器移一位。8个时钟脉冲过后,8位二进制数全部移入74LS164中。MR脚(第9脚)为复位端,当该脚为低电平时。移位寄存器各位复0;只有当它为高电平时,时钟脉冲才起作用。Q1~Q8(第3~610~13引脚)并行输出端分别接数码管的h~a(因为串行口从地位开始传送)各端对的引脚上。在给出了8位脉冲后,最先进入74LS164的第一个字节数据到达最高位。再来一个脉冲,第一个脉冲就会从最高位移出,进入下个74LS164的第一位。374LS164首位相串,而时钟则接在一起。这样,当输入8个脉冲时,从单片机RXD端输出的第一字节数据就进入了第一片74LS164中,而当第二个8个脉冲到来后,第一字节数据就进入了第二片74LS164,而随后的第二直接数据进入第一片74LS164。这样,当第38个脉冲完成后,首先送出的数据被送到最下面的164(第3片)中,其它数据依次出现在第二和第一片74LS164中,实现了数据在74LS164中的串行输入,并行输出。在方式0的状态下,串行口为同步移位寄存器方式,其波特率是固定的,为Fosc/12.数据由RXD(P3.0)端输入或输出,同步移位脉冲由TXD(P3.1)端输出。发送,接收数据时低位在先。所以,根据硬件电路图在编写程序时,查共阳数码管的段码的二进制数据应该将正常的共阳数码管0~9的二进制值按位反序排序,如原来的二进制为11000000(C0H),要改为00000011(03H),就能使数码管正常显示。
为了提供共阳LED数码管的驱动电压,用三极管8550作电源驱动输出。采用12MHz晶振,有利于提高秒计时的精确性。




相关帖子

沙发
xyz549040622| | 2013-8-5 23:50 | 只看该作者
好扯的提问,先百度去

使用特权

评论回复
板凳
林志财| | 2013-8-6 00:06 | 只看该作者
有没有人有电饭煲上的开关电源电路图

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

36

帖子

0

粉丝