毕业设计--基于单片机的智能数字闹钟程序代码.doc

毕业设计--基于单片机的智能数字闹钟程序代码.doc

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
姚辉虎的毕业设计--基于单片机的智能数字闹钟程序代码 程序代码 ? main.c #include <reg51.h> #include <intrins.h> #include <yf.h>? ? unsigned char clock_data[4]; sbit speaker? = P2^4;//? 蜂鸣器 sbit bell = P2^2;?? //铃响 bit bell_on=0; bit key_ok=0; unsigned char bell_time=0x20; uchar week_clock_set; #define FIRST_ADDR 0 //定义全局变量 unsigned char yy,mo,dd,xq,hh,mm,ss;//? 定义时间映射全局变量(专用寄存器) uchar j; /****************************************************************************/ //函数声明 extern? unsigned char read_clock(unsigned char ord); extern void lcdwc(unsigned char cmdcode); extern void hzkdis(unsigned char code *s); extern void hzkdis2(unsigned char *s); extern char Read_One_Byte(unsigned char addr); extern void Write_One_Byte(unsigned char addr,unsigned char thedata); void lcm_w_ss(void); extern void lcdreset(void); extern void Init_DS18B20(void); extern char gotkey(); extern void Init_1302(void); extern unsigned int ReadTemperature(void); extern void write_clock(unsigned char ord, unsigned char dd); extern void disp_hz(uchar x,uchar *c_str,uchar w); extern void delay(unsigned int t); void new_time(void); void read_clockss(x); ? //void lcm_w_temp(void) ; void read_clockS(void) { ?ss = read_clock(0x81);//读取秒数据 ?mm = read_clock(0x83);//读取分钟数据 ?hh = read_clock(0x85);//小时 ?dd = read_clock(0x87);//日 ?mo = read_clock(0x89);//月 ?xq = read_clock(0x8b);//星期 ?yy = read_clock(0x8d);//年 } /*void Set_time(unsigned char sel){ //根据选择调整的相应项目加1并写入DS1302 ? signed char address,item; ? signed char max,mini; ??? if(sel==7)? {address=0x80; max=0;mini=0;}???? //秒 ? if(sel==6)? {address=0x82; max=59;mini=0;}??? //分钟 ? if(sel==5)? {address=0x84; max=23;mini=0;}??? //小时 ? if(sel==3)? {address=0x86; max=31;mini=1;}??? //日 ? if(sel==2)? {address=0x88; max=12;mini=1;}??? //月 ? if(sel==1)? {address=0x8c; max=99; mini=0;}??? //年 ? if(sel==4)? {address=0x8a; max=7;mini=1;}??? //星期 ?? ? //读取1302某地址上的数值转换成10进制赋给item? ? item=((read_clock(address+1))/16)*10 + (read_clock(address+1))%16; ? if(KEY_Y == 0){ ? ?item++;//数加 1?? ? } ? if(KEY_N==

文档评论(0)

精品天地 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档