可调时钟闹钟(Adjustable clock alarm clock).docVIP

  • 2
  • 0
  • 约8.35千字
  • 约 25页
  • 2017-10-05 发布于河南
  • 举报

可调时钟闹钟(Adjustable clock alarm clock).doc

可调时钟闹钟(Adjustable clock alarm clock)

可调时钟闹钟(Adjustable clock alarm clock) #包括 reg52。” #包括数学。” #包括 absacc。” #包括 DS1302。h // DS1302驱动程序 #包括 lcd_1602a。h // lcd1302驱动程序 / / ========================== #定义unsigned char函数 # unsigned int定义单元 / / ========================== P1 ^了K1 = 3; 公司K2 = P1 ^ 5; 公司K3 = P1 ^ 1; 公司^哔= P3 7; key1函数; 函数tab_time [ 8 ] = { 0,0,10,0,0,10,0,1 };//时间 函数tab_ymdw [ 12 ] = { 2,0,0,2,11,0,0,11,0,2,12,0 };//年月日星期 函数tab_num [ ] =“0123456789”; 函数tab_week [ 21 ] =“monteuwedthufrisatsun”; 函数tab_ap [] =“ampm”; 函数tab_t [] =“T”,tab_d [] =“D”,alarm_time [ ] = { 0,15,7 }; / / -------------------------- / / -------函数声明-------- 无效lcd_disp(); 无效trans(); 无效key(); 延时(个); 无效display_set(函数,函数,函数); 无效music(); display_char1(void函数,函数); display_char2(void函数,函数); / / ========================== / / ------主函数----------- 无效main() { / / / / DS1302初始化ds1302_init(); write_command(0x01);/ /液晶清屏 initial_lcd(); 延迟(10);// LCD1602初始化 (1) { ds1302(); key(); trans(); 如果(!KEY1) lcd_disp(); 如果(tab_1302 [ 0 ] = = alarm_time [ 0 ]和[ 1 ] tab_1302 = = alarm_time [ 1 ]和[ 2 ] tab_1302 = = alarm_time [ 2 ]) music(); } } / / =============显示函数============ 无效display_char2(函数的函数的ADR,DAT) { write_command(0x80 + 0x40 +阿霉素); write_data(DAT); } 无效display_char1(函数的函数的ADR,DAT) { write_command(0x80 +阿霉素); write_data(DAT); } / / =============音乐播放=========================== 无效music() {单位UL,N,P = 20; 而(P) { 对于(UL = 0;UL<150;UL + +) { 对于(n=0;n<30;n + ++); 哔哔声; } 延迟(200); 对于(UL = 0;UL<150;UL + +) { 对于(n=0;n<30;n + ++); 哔哔声; } 延迟(800); } } / / ==================设定显示函数========================= 无效display_set(函数的函数的函数P,ADR,DAT) { 函数时,GE,I,J; 施= DAT / 10; GE = DAT的占10;/ /分离日期的十位和个位数 如果(p=1=13) { write_command(0xC0 + 13); 对于(i = 0;i 3;i +) { //星期 J =阁;/ /星期 write_data(tab_week [(J-1)* 3 +我]); } } 否则如果(!P) write_command(0x80 +阿霉素); 其他的 write_command(0xC0 +阿霉素); write_data(0x30 +石); write_data(0x30 +葛); } / / -----------------数据转换函数--------------------------- 无效trans() { tab_time [ 0 ] = tab_1302 [ 2 ] / 10 / /小时十位; tab_time [ 1 ] = tab_1302【2】% 10;/

文档评论(0)

1亿VIP精品文档

相关文档