自己做的网站程序怎么发布,合肥城乡建设局官网,个人网站建设联系电话,潜江58同城目录
具体实现功能
设计介绍
资料内容
全部内容
资料获取 具体实现功能
具体功能#xff1a; #xff08;1#xff09;实时显示当前时间#xff08;年月日时分秒星期#xff09;#xff0c;LED模式指示灯亮。 #xff08;2#xff09;按下“打铃”和“打铃-”按键…目录
具体实现功能
设计介绍
资料内容
全部内容
资料获取 具体实现功能
具体功能 1实时显示当前时间年月日时分秒星期LED模式指示灯亮。 2按下“打铃”和“打铃-”按键可查看24个打铃时间模式指示灯灭此时可通过4个按键调整打铃时间的时和分。 3打铃时间到可实现蜂鸣器响、播放音乐1分钟、打开/关闭宿舍灯、路灯、教学楼灯等功能详见打铃时间表。 仿真演示视频 基于51单片机的校园打铃及灯控制系统-仿真视频 设计介绍 51单片机简介
51单片是一种低功耗、高性能CMOS-8位微控制器拥有灵巧的8位CPU和可编程Flash使得51单片机为众多嵌入式控制应用系统提供灵活、高效的解决方案。
本设计所使用的芯片可兼容以下所有的51系列单片机包括AT系列和STC系列。 资料内容
仿真实现protues8.7
本设计利用protues8.7软件实现仿真设计具体如图。 程序Keil5
本设计利用KEIL5软件实现程序设计。
主函数如下
///
/***************主函数*****************/
void main()
{uchar k0,m0;uchar week0;beep1;init_read();//初始化Ds1302ReadTime();TIME[0]0X7F;Ds1302Init(); lcd_init(); //调用液晶屏初始化子函数InitialSound();led10; //打开LCD的背光电源led40;led30;led20;limit[0]7;limit[1]40;limit[2]8;limit[3]10;limit[4]8;limit[5]25;limit[6]9;limit[7]10; limit[8]9;limit[9]20; limit[10]10;limit[11]5;limit[12]10;limit[13]25; limit[14]11;limit[15]10;limit[16]11;limit[17]20; limit[18]12;limit[19]5;limit[20]14;limit[21]20; limit[22]14;limit[23]30;limit[24]15;limit[25]15;limit[26]15;limit[27]25;limit[28]16;limit[29]10;limit[30]16;limit[31]30; limit[32]17;limit[33]15;limit[34]17;limit[35]25;limit[36]18;limit[37]10;limit[38]19;limit[39]20;limit[40]19;limit[41]30;limit[42]21;limit[43]10;limit[44]21;limit[45]40;limit[46]23;limit[47]00;while(1){led11; led!flag;//点亮指示灯if(!key6 (k!6))//组号1{k6;flag0;if(num25)num;if(num25){num0;flag1;//显示当前时间}}if(!key1 (k!1))//组号-1{k1;if(num1)num--;else{flag1;//显示当前时间}}if(!key2 (k!2))//时1{k2;if(led)shi_jia();else{m(TIME[2]4)*10(TIME[2]0X0F);if(m23)m;elsem0;TIME[2](m/104)m%10;Ds1302Init();}}if(!key3 (k!3))//时-1{k3;if(led)shi_jian();else{m(TIME[2]4)*10(TIME[2]0X0F);if(m0)m--;elsem23;TIME[2](m/104)m%10;Ds1302Init();}}if(!key4 (k!4))//分1{if(led)fen_jia();else{m(TIME[1]4)*10(TIME[1]0X0F);if(m59)m;elsem0;TIME[1](m/104)m%10;Ds1302Init();}k4;}if(!key5 (k!5))//分-1{if(led)fen_jian();else{m(TIME[1]4)*10(TIME[1]0X0F);if(m0)m--;elsem59;TIME[1](m/104)m%10;Ds1302Init();}k5;}if(P30xff)k0;Ds1302ReadTime();//读取时间if(flag0){if(num1){write_sfm(0,num);//闹钟编号write_sfm(3,limit[0]);//时write_sfm(6,limit[1]);//分}else if(num2){write_sfm(0,num);//闹钟编号write_sfm(3,limit[2]);//时write_sfm(6,limit[3]);//分 }else if(num3){write_sfm(0,num);//闹钟编号write_sfm(3,limit[4]);//时write_sfm(6,limit[5]);//分 }else if(num4){write_sfm(0,num);//闹钟编号write_sfm(3,limit[6]);//时write_sfm(6,limit[7]);//分 }else if(num5){write_sfm(0,num);//闹钟编号write_sfm(3,limit[8]);//时write_sfm(6,limit[9]);//分 }else if(num6){write_sfm(0,num);//闹钟编号write_sfm(3,limit[10]);//时write_sfm(6,limit[11]);//分 }else if(num7){write_sfm(0,num);//闹钟编号write_sfm(3,limit[12]);//时write_sfm(6,limit[13]);//分 }else if(num8){write_sfm(0,num);//闹钟编号write_sfm(3,limit[14]);//时write_sfm(6,limit[15]);//分 }else if(num9){write_sfm(0,num);//闹钟编号write_sfm(3,limit[16]);//时write_sfm(6,limit[17]);//分 }else if(num10){write_sfm(0,num);//闹钟编号write_sfm(3,limit[18]);//时write_sfm(6,limit[19]);//分 }else if(num11){write_sfm(0,num);//闹钟编号write_sfm(3,limit[20]);//时write_sfm(6,limit[21]);//分 }else if(num12){write_sfm(0,num);//闹钟编号write_sfm(3,limit[22]);//时write_sfm(6,limit[23]);//分 }else if(num13){write_sfm(0,num);//闹钟编号write_sfm(3,limit[24]);//时write_sfm(6,limit[25]);//分 }else if(num14){write_sfm(0,num);//闹钟编号write_sfm(3,limit[26]);//时write_sfm(6,limit[27]);//分 }else if(num15){write_sfm(0,num);//闹钟编号write_sfm(3,limit[28]);//时write_sfm(6,limit[29]);//分 }else if(num16){write_sfm(0,num);//闹钟编号write_sfm(3,limit[30]);//时write_sfm(6,limit[31]);//分 }else if(num17){write_sfm(0,num);//闹钟编号write_sfm(3,limit[32]);//时write_sfm(6,limit[33]);//分 }else if(num18){write_sfm(0,num);//闹钟编号write_sfm(3,limit[34]);//时write_sfm(6,limit[35]);//分 }else if(num19){write_sfm(0,num);//闹钟编号write_sfm(3,limit[36]);//时write_sfm(6,limit[37]);//分 }else if(num20){write_sfm(0,num);//闹钟编号write_sfm(3,limit[38]);//时write_sfm(6,limit[39]);//分 }else if(num21){write_sfm(0,num);//闹钟编号write_sfm(3,limit[40]);//时write_sfm(6,limit[41]);//分 }else if(num22){write_sfm(0,num);//闹钟编号write_sfm(3,limit[42]);//时write_sfm(6,limit[43]);//分 }else if(num23){write_sfm(0,num);//闹钟编号write_sfm(3,limit[44]);//时write_sfm(6,limit[45]);//分 }else if(num24){write_sfm(0,num);//闹钟编号write_sfm(3,limit[46]);//时write_sfm(6,limit[47]);//分 }else{;}}else{write_sfm(6,(TIME[0]4)*10(TIME[0] 0x0f));//秒从第二行第8个字后开始显示调用时分秒显示子函数write_sfm(3,(TIME[1]4)*10(TIME[1] 0x0f));//分从第二行第5个字符后开始显示write_sfm(0,(TIME[2]4)*10(TIME[2] 0x0f));//小时从第二行第2个字符后开始显示//显示日、月、年数据write_nyr(9,(TIME[3]4)*10(TIME[3] 0x0f));//日期从第二行第9个字符后开始显示write_nyr(6,(TIME[4]4)*10(TIME[4] 0x0f));//月份从第二行第6个字符后开始显示write_nyr(3,(TIME[6]4)*10(TIME[6] 0x0f));//年从第二行第3个字符后开始显示week (TIME[5]4)*10(TIME[5] 0x0f)-1;if(week7){week1;}if(week1){week7;}write_nyr(12,week);//日期从第二行第9个字符后开始显示}bell_if();//响铃}
}
程序运行结果如图 全部内容
全部资料包括程序keil5、protues仿真protues8.7、设计说明、答辩PPT、开发资料、资料使用介绍、仿真视频、最小系统介绍视频等。 资料获取 https://docs.qq.com/doc/DT2NwdVByRkRTWXNP