【C51】:基于51单片机的多功能时钟设计

#基于51单片机的时钟设计

此文章为某年某月某次单片机作业,一点拙见

首先:再keil上写下代码,用protues调试(不懂得百度搜索“keil与protues联机调试”)
使用的芯片和器件图中自己找
这次没有使用38译码器,直接将数码管引脚全部放在单片机上
在这里插入图片描述
不多说,上部分代码和图:
全部代码在另一个博文,关注后在本人主页可查看哦!!!
全部代码在另一个博文,关注后在本人主页可查看哦!!!
全部代码在另一个博文,关注后在本人主页可查看哦!!!

/***************主函数***************/

void main()
{						
TMOD=0x01; 	 
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;  /*10ms*/
EA=1;
ET0=1;
TR0=1;
	
	
 while(1)
 {
    static uChar h=0;
    
    if(Key4==0)                 //K4功能:12小时/24小时/日期切换
      {
       Delay(10); 
       if(Key4==0)
		 	  {
           while(!Key4);
           h++;
			  }
      }
		if(h%3==0)
      {
       Dispaly1(second,minute,hour);      //显示24小时制
       Keyscan1(); 
      }  
    if(h%3==1)
      {
       Dispaly1(second,minute,hour-12);   //显示12小时制
       Keyscan1(); 
      }  
    if(h%3==2)
      {
       Dispaly2(year,month,day);          //显示日期
       Keyscan2();
      }
     if(Key3==0)
      { 
       Delay(d); 
       if(Key3==0)
       while(!Key3);
		   flag++;
      }			
    	
	   if(flag%2==0)  //记录K3按下后flag加一
		 {
			 flag1=0;     
	   }
	   if(flag%2==1)
	   {
	   	flag1=1;		
	   }
			
/***********闹钟设定时间21:31开始响,无人应答30s后关闭*/
		 
		if(minute==31&&(second>0&&second<30)&&hour==21&&flag1==0)
			Buzzer=0;//蜂鸣器响
		else
			Buzzer=1;//蜂鸣器关
  }
}
————————————————
版权声明:本文为CSDN博主「傅里叶也头大」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_43625266/article/details/104999242

在这里插入图片描述

//******************************************************************//

承接stm32单片机、STC系列单片机设计、嵌入式问题咨询

联系QQ:2424644692

//******************************************************************//

喜欢请点赞哦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值