- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
/********************************************************************
* 文件名 : 时钟DS1302LCD.c
* 描述 : 该文件实现用DS1302来实现日历和时钟功能,液晶1602上显示出来。
* 创建人 : 东流,2009年4月10日
* 版本号 : 2.0
***********************************************************************/
#includereg52.h
#includeintrins.h
#define uchar unsigned char//无符号字符0-255
#define uint unsigned int//无符号整型0-65535
#define CYCLE_1_0 0x698 // 1688us
#define CYCLE_1_5 0x9E4 // 2532
#define CYCLE_2_0 0xD30 // 3376us
#define TH_CYCLE_1_0 ( CYCLE_1_0 8 )
#define TH_CYCLE_1_5 ( CYCLE_1_5 8 )
#define TH_CYCLE_2_0 ( CYCLE_2_0 8 )
// 用于解码的变量
unsigned int SAA3010RecvCode = 0; // 保存解码数值(1个控制位 5个地址位 6个命令位)
unsigned char SAA3010BitCount = 0; // 记录已经解码的位数
unsigned char SAA3010State = 0; // 初始状态
sbit relayout0= P1^0;
sbit relayout1= P1^1;
sbit relayout2= P1^2;
sbit relayout3= P1^3;
sbit relayout4= P1^4;
char code Tab[16]=0123456789ABCDEF;
sbit ACC0 = ACC^0;
sbit ACC7 = ACC^7;
sbit P3_2 = P3^2;
sbit P3_4 = P3^4;
sbit T_CLK = P1^6; /*实时时钟时钟线引脚 */
sbit T_IO = P3^5; /*实时时钟数据线引脚 */
sbit T_RST = P1^7; /*实时时钟复位线引脚 */
sbit Add_Key = P3 ^ 6;//加1键,S1
sbit Dec_Key = P3 ^ 7;//减1键,S2
sbit OK_Key = P2 ^ 0;//确定键,S3
sbit Bell_Out = P2 ^ 1;//闹钟管脚输出。低电平有效
sbit DQ = P2^3;//ds1820data
//这三个引脚参考资料
sbit E=P2^7; //1602使能引脚
sbit RW=P2^6; //1602读写引脚
sbit RS=P2^5; //1602数据/命令选择引脚
bit flag,secs=0,mins=0,hours=0,years=0,mons=0,days=0,weeks=0; //闪烁标志位
bit Bell_Swh,Hourb,Minb,Secb,Kgb;//闹钟调时闪烁标志位
bit flag_min = 0,flag_sec = 0;//整点报警标志位
unsigned char id,id2,d,e,S_1302,H_1302,H_Bell,S_Bell; //id为第几个调整对象,
uchar sec, min, hour, day, month, year,week;
/************************************************************/
//函数声明
void delay();
void Delay1(int num);//延时函数
uchar bcdtodec(uchar bcd);
uchar Convert(uchar In_Date);//形参主函数付的值
uchar dectobcd(uchar dec);
void Disp(void);//显示和闪烁函数
void enable(uchar del);
void id_case1_key(void);//id为1时的下一级选择
void L1602_char(uchar hang,uchar lie,char sign);
您可能关注的文档
最近下载
- 水泥厂电气培训课件.pptx
- 体例格式9:工学一体化课程《windows服务器基础配置与局域网组建》任务1学习任务工作页.docx VIP
- 金税四期税务风险预警指标汇总.pdf
- 豆腐柴人工栽培技术.pdf VIP
- 天津市小升初小卷真题小外(天津市外国语大学附属外国语学校)(5套含答 .pdf VIP
- 控制计划(机加).docx VIP
- 土地资源管理学(第二版)张正峰,第一至第十二章知识点.docx VIP
- 专题三 透镜及其应用 2025年中考物理基础知识考点专题练习(含答案).docx VIP
- DL/T 502-2006 火力发电厂水汽分析方法(第1-32部分).pdf VIP
- 施工现场总平面布置培训.pptx VIP
文档评论(0)