电子制作天地网站欢迎您的光临,欢迎提出宝贵意见或建议。本站信息产业部备案: 粤ICP备05114582号
基于PCF8563时钟芯片的万年历制作
Electronic Calendars

时间:2008-2-24 19:34:23 来源:本站整理 作者:周松岳 编辑: 【关闭


基于PCF8563时钟芯片的万年历制作,Electronic Calendars

关键字:PCF8563时钟芯片的万年历制作

    万年历时钟芯片很多,笔者认为,比起DSl302来说,采用飞利浦公司的PCF8563时钟芯片,LCM1602作显示,可以取得较理想的效果。电路图如图1所示。
    PCF8563是低功耗的CMOS实时时钟/日历芯片,提供1个可编程时钟输出、1个中断输出和掉电检测器,所有的地址和数据通过I2C总线接口串行传递。最大总线速度为400kbit/s,在数据交换时只要按照I2C总线模式进行操作,对时序的要求也不是太高。PCF8563内部寄存器地址与数据格式描述如附表所示。
    本电路采用89S51作主控MCU,PCF8563产生时钟信息,LCM1602液晶模块作显示。Y1为32.768kHz晶振,Y2为12MHz晶振,BT1作为后备电源,保持时钟数据万年不丢失;RP1和RP2是9脚l0kΩ排阻;S1~S4用于调整时间。S2用于进入调整模式;并且每按一次改变调整项目;S1用于退出调整状态,S3、S4用于加1减1操作。
    LCMl602的驱动程序如下,可移植。
#define LCM1602_DB0_DB7  PO    //定义LCM1602的数据总线
sbit LCM1602_RS=P2^6;    //定义LCMl602的RS控制线
sbit LCM1602_RW=P2^5;    //定义LCM1602的RW控制线
sbit LCM1602_E=P2^4;    //定义LCM1602的E控制线
sbit  LCM1602_Busy  =P0^7;//定义LCM1602的测忙线
unsigned char code PCF8563[]={"PCF8563"};
void LCM1602_Delay(unsigned char count)
{
unsigned char I;
while(--count!=0)
{
for(I=0 ;I<125;I++);
}
}
void LCM1602_TestBusy(void)
{
do   
{
LCM1602_DB0_DB7=0xff;
LCM1602_RS=0;
LCM1602_RW=1;
LCM1602_E=0;
LCM1602_Delay(2);
LCM1602_E=1;
}
while(LCM1602_Busy);
}   
void  LCM1602_WriteCMD  (unsigned  char LCM1602_command)
{
LCM1602_DB0_DB7=LCM1602_command;
LCM1602_RS=0;
LCM1602_RW=0;
LCM1602_E=0;
LCM1602_TestBusy();
LCM1602_E=1;
}
  void  LCM1602_WriteData  (unsigned  char LCM1602 data)
{
    LCM1602_DB0_DB7=LCM1602_data;
    LCMl602_RS=1;
    LCM1602_RW=0;   
    LCM1602_E=0;
    LCM1602_TestBusy();
    LCM1602_E=1;
    }
void LCM1602_Int(void)
{
    LCM1602_WriteCMD(0x01);//显示清屏
    LCM1602_WriteCMD(0x38);//显示模式设置:显示2行,每个字符为5x7个像素
    LCM1602_WriteCMD(0x06);//显示光标移动设置:文字不动,光标右移  ·
    LCM1602_WriteCMD(0x0c);//显示开及光标设置:显示开,光标关,闪烁关
    }
void print(unsigned char a,unsigned char *str)
{
    LCM1602_WriteCMD(a);
while(*str!='\0')
{
    LCM1602_WriteData(*str++);
    }
    *str=0;
    }
    void print1(unsigned char a,unsigned char t)(
    LCM1602_WriteCMD(a);
    LCM1602_WriteData(t);
    }
    有兴趣的朋友,可仿制。源程序经过调试,运行正常,效果图如图2所示。

上一篇: 简洁易作的胆功放 下一篇:没有了

◆相关文章◆
◆ 编辑推荐 ◆
用户:
更多评论
您要为您所发的言论的后果负责,故请各位遵纪守法并注意语言文明。60个字以内
留言:
验证码:

免责声明:
●本站所有内容均来自网络,以学习为目的,如果侵犯了您的利益,请来信告知,立即删除,站长邮件为"diy+dzdiy.com",请将"+"变更为"@"
●电子制作存在风险,请注意人身安全,如果您在根据本站电路进行制作过程中发生伤害,本站不负任何责任。

版权所有:www.dzdiy.com ? 2001-2019 本站信息产业部备案: 粤ICP备05114582号