求基于51单片机P01,P2 LED接数码管,用三极管驱动的电子时钟程序,大神求救啊!
程序名称:5 1 微控制器数字管电子时钟组装程序计划简介:2 4 小时电子时钟,8 位数字管显示,显示时间,分钟,第二个显示格式:2 3 -5 9 -5 9 (1 0位数)(1 0位时间)0,0,0未显示)端口的输出段选择信号,P2 端口P1 .0的输出位选择信号写为“时间调整”按钮,而P1 .1 的写入如下。gian gx.net ****** *********************************************** ****************************************************** ****************************************************** ****************************************************** ****************************************************** ****************************************************** ****************************************************** ****************************************************** ****************************************************** ****************************************************** ****************启用VR6 ,#0用于控制旅行时间的参考时钟源,#0;第二位1 0位注册OB2 2 H,#0单位注册2 3 H,#0; 单位寄存器在MOV2 5 H,0中清除。
1 0位寄存器为MOV2 5 H,0。
ljmpdisplaytimer_0:clrea engr6 movth0,#03 ch movtl0,#0b0h;位是6 ,清晰的MOV2 1 H,#00H inc2 2 h min:Mova,2 2 H cjnea,#1 0,如果数字等于1 0,clear mov2 2 h,#00h inc2 3 h inc2 3 h cjnea,#6 ,#6 等于6 ; ,清除MOV2 3 H,#00h inc2 4 h时间:Mova,2 5 H CJNEA,#2 ,如果1 0位数字等于2 ,1 位数字,2 4 H CJNEA,#4 ,如果1 位数等于4 ; ,#1 0,如果一个数字等于1 0,则#00H inc2 5 h ljmpexit退出:刷新后,显示:movdptr,#table mova,2 0h movca, @a+dptr movpp0,clrp2 .7 lcalldelay setbp2 .7 #0BFH MOVP0,clrp2 .5 lcalldelay setbp2 .5 ; MOVCA, @A+DPTR MOVP0,CLRP2 .3 LCALLDELAY SETBP2 .3 ; A+DPTR MOVP0,CLRP2 .0使用Table1 消除LCALLDELE。
ay setb2 .0; 8 0H,9 0H:DB0FFH,0F9 H,0A4 H,0B0H,9 9 H,9 2 H,8 2 H,0F8 H,如果该位是0,则不会显示边缘
51单片机设计数码管显示时钟的程序怎么写
#include51单片机求这个时钟的c语言程序
以下C5 1 微控制器是具有四位数数字管的电子时钟程序(C语言)。/****在此程序中,晶体振荡器为1 2 MHz,时间控制采用了定时的阻塞控制方法。
**** // ****模式和时间调整用于查询。
****/#包括
而(key0 == 0)display001 (); //等待键发布。
, if(key0 == 0){display001 ();if(key0 == 0)modstate ++; //这两个句子都添加到延迟的1 0ms软件反利益设计中。
而(key0 == 0)display002 (); //等待键发布。
} if(key1 == 0){display001 (); if(key1 == 0){小时++; 如果(小时> = 2 4 )小时= 0; 而(key1 == 0)display001 ();}} if(key2 == 0){display001 (); if(key2 == 0){hour-; 如果(小时> = 2 4 )小时= 0; 而(key2 == 0)display001 ();}; , if(key0 == 0){display002 (); if(key0 == 0)modstate = 0; //这两个句子都添加到延迟的1 0ms软件反利益设计中。
而(key0 == 0)display(); //等待键发布。
} if(key1 == 0){display002 (); if(key1 == 0){min ++; 如果(min> = 6 0)min = 0; 而(key1 == 0)display002 ();}} if(key2 == 0){display002 (); if(key2 == 0){min-; 如果(min> = 6 0)min = 0; Whereas (key2 == 0) display002 ()}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} }}}}}}}}}}}}}}}
51单片机控制数码管显示时钟,独立按键怎么弄
独立密钥的处理相对简单,通常通过IO连接单独控制。主要步骤包括消除和识别钥匙的紧迫和起重状态。
例如,您可以按以下方式实现它:sbitkey = p1 ^0; if(key == 0){delay(1 0); if(key == 0){keyVal = 1 ; while(key == 0);}}这里定义了一个键sbitkey = p1 ^0; 添加了1 0毫秒的延迟以消除重要的抖动。
再次识别关键条件。
最后,输入循环并等到键发布。
在实际应用中,关键处理不仅限于它。
还必须考虑到密钥和长期出版社的几下单击。
例如,可以添加计数器以查看按下按钮的频率,或者可以添加计时器以确定长时间记录按钮。
为了确保程序的鲁棒性,还建议在关键处理的每个步骤中添加合适的错误测试和出色的治疗方法。
例如,检查延迟功能后的关键条件是否仍为0,以防止外部干扰引起的错误判断。
在5 1 个微控制器控制数字管显示时钟的项目中,密钥处理是必不可少的部分。
上述方法可以有效地实现按钮的检测和反应,该操作为时钟功能提供了可靠的操作控制。
编程时,您还必须确保避免关键烦恼对程序的影响。
它可以通过硬件电路进行设计,例如 简而言之,尽管独立按钮的处理很简单,但在实施程序的稳定性和可靠性时仍必须小心。