单片机按键程序程序求解答定金20元,解答完40元。

百度知道 - 信息提示
知道宝贝找不到问题了&_&!!
该问题可能已经失效。
秒以后自动返回问题在程序的开始,求解答大神【单片机吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:143,750贴子:
问题在程序的开始,求解答大神收藏
/**程序写出的一些问题1: 第2和第5位没闪烁2: 按下s2的时候不能控制 sec,min,hour的闪烁3: 按下按键时会因为抖动会在按下的瞬间数码管会全部不显示再恢复显示4: 写了接收串口数据的程序之后会因为程序过长导致数码管动态显示时出现由于时间过长导致的闪烁5:写蜂鸣器程序时程序不能连续间隔的多次发声,只能发出一声**/#include&reg52.h&#define uchar unsigned char#define uint unsigned intsbit s2 = P3^0;sbit s3 = P3^1;sbit s4 = P3^2;sbit s5 = P3^3;sbit deep = P2^3;sbit dula = P2^6;sbit wela = P2^7;bit f1ms, f1s, f20char sec, min ,hour,uchar code duan[] = {0x3f, 0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f, 0x6f, 0x40};uchar code wei[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};uchar xiancun[8] = {1, 2, 10, 4, 5, 10, 7, 8};uchar code table[] = &&;/**定时器0初始化**/void timer0_init(){TMOD = 0x01;TH0 = (65536 - /1000) && 8;TL0 = (65536 - /1000);ET0 = 1;TR0 = 1;}/**定时器0中断服务程序**/void timer0 ()interrupt 1{static uint count1s;static uchar count20TL0 += (65536 - /1000);TH0 = (65536 - /1000) && 8;f1ms = 1;if(++count1s == 1000){count1s = 0;f1s = 1;}if(++count20ms == 20){count20ms = 0;f20ms = 1;}}/**延时函数**/void delay(uchar x){uchar i,for(i = i & 0; i++)for(j = 114; j & 0; j--);}/**数码管任务**/void smg_task(){static uchar i = 0;wela = 1;P0 = 0wela = 0;dula = 1;P0 = duan[xiancun[i]];dula = 0;P0 = 0wela = 1;P0 = wei[i];wela = 0;if(++i &= 8)i = 0;}/**串口初始化**/void UART_init(){TMOD |= 0x20;TH1 = 0TL1 = 0TR1 = 1;SM0 = 1;SM1 = 1;}/**串口数据发送**/void UART_wdata(uchar x){SBUF =while(TI == 0);TI = 0;}/**发送串口数据**/void UART_data(){UART_wdata(table[hour/10]);UART_wdata(table[hour%10]);UART_wdata('-');UART_wdata(table[min/10]);UART_wdata(table[min%10]);UART_wdata('-');UART_wdata(table[sec/10]);UART_wdata(table[sec%10]);}/**存储计时的数据**/void cc_sj(){xiancun[0] = hour/10;//UART_wdata(table[hour/10]);xiancun[1] = hour%10;//UART_wdata(table[hour%10]);//UART_wdata('-');xiancun[3] = min/10;//UART_wdata(table[min/10]);xiancun[4] = min%10;//UART_wdata(table[min%10]);//UART_wdata('-');xiancun[6] = sec/10;//UART_wdata(table[sec/10]);xiancun[7] = sec%10;//UART_wdata(table[sec%10]);}/**数码管计时程序**/void smg_js(){if(f1s == 1){f1s = 0;if(++sec == 60){sec = 0;if(++min == 60){min = 0;if(++hour == 24){hour = 0;}}}}cc_sj();UART_data();}/**按键程序**/void key_task(){if(s2 == 0){delay(100);while(s2 == 0)TR0 = 0;t++;}switch(t){case 1:if(s3 == 0){delay(20);while(s3 == 0);sec++;if(sec == 60){sec = 0;}}if(s4 == 0){delay(20);while(s4 == 0);sec--;if(sec == -1){sec = 59;
//需要改}}if(s5 == 0){TR0 = 1;}case 2:if(s3 == 0){delay(20);while(s3 == 0);min++;if(min == 60){min = 0;}}if(s4 == 0){delay(20);while(s4 == 0);min--;if(min == -1){min = 59;
//需要改}}if(s5 == 0){TR0 = 1;}case 3:if(s3 == 0){delay(20);while(s3 == 0);hour++;if(hour == 24){hour = 0;}}if(s4 == 0){delay(20);while(s4 == 0);hour--;if(hour == -1){hour = 23;
//需要改}}if(s5 == 0){TR0 = 1;}case 4:t = 1;default:}}/**蜂鸣器发声**/void deep_(){uchar i,if(sec == 0&min == 0){x =for(i = i & 0; i--){deep = 0;delay(200);deep = 1;}}}/**主函数**/void main(){timer0_init();UART_init();EA = 1;while(1){key_task();smg_js();smg_task();deep_();}}
登录百度帐号推荐应用51单片机,新手求解答两道题目!!_百度知道
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
51单片机,新手求解答两道题目!!
利用系统板上的8个LED灯,实现花样流水灯表演,可以用按键改变流水灯的样式,实现流失灯样式切换。注意:你的灯的样式要有规律,样式至少3种。并且按下一个按键,发送完整学号(例如: )到PC机。
也可以不用显示学号,按键有效的时候,有蜂鸣器提示音也行。
我有更好的答案
知识用时恨未学啊!估计你是大二大三的学生吧,毕业即失业。书到用时方恨少。孩子,平时又没少玩吧。这种东西,现在努力还来得及。否则,看看书就会了,上网买个开发板,弄1个月基本功能都明白了这明显就是一个课程设计啊
两个题目?第二个,是什么?
框架可以拟一下
为您推荐:
其他类似问题
您可能关注的内容
51单片机的相关知识
换一换
回答问题,赢新手礼包单片机控制电梯程序一些问题,求大神解答_百度知道
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
单片机控制电梯程序一些问题,求大神解答
uchar code Table_of_Digits[]=
//点阵显示数组
0x00,0x3C,0x24,0x24,0x3C,0x24,0x24,0x3C,
0x00,0x3C,0x04,0x04,0x04,0x04,0x04,0x00,
0x00,0x3C,0x20,0x20,0x3C,0x24,0x24,0x3C,
0x00,0x3C,0x20,0x20...
我有更好的答案
p>你好!你有什么问题.jpg" esrc="http.baidu./zhidao/wh%3D600%2C800/sign=18ea76d464d9f2d9dca62b/34fae6cd7b899e516cadd933c8950de7://d.com/zhidao/pic/item/34fae6cd7b899e516cadd933c8950de7.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink"><img class="ikqb_img" src="http?<a href="http://d.hiphotos://d./zhidao/wh%3D450%2C600/sign=72c1d5e98cca37a4bf8cda/34fae6cd7b899e516cadd933c8950de7
大神,抱歉,太晚回复你了。我想要问如何再追加一个电机的转动,电机配合点阵数字?
可以实现,改仿真和程序,图片上面红色数字联系我吧
为您推荐:
其他类似问题
您可能关注的内容
单片机的相关知识
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;单片机驱动28byj48可以运转,换成35byj46 就不行了,求解答_百度知道
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
单片机驱动28byj48可以运转,换成35byj46 就不行了,求解答
单片机驱动28byj48可以运转,换成35byj46 就不行了,求解答哦,用的unl2003a驱动。
我有更好的答案
从这两个电机型号上只能看出尺寸区别,但是看不出来电压区别,所以先检查电压是不是一致。然后看看接线是不是有错。
采纳率:61%
是不是启动频率高啊
为您推荐:
其他类似问题
单片机的相关知识
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;}

我要回帖

更多关于 单片机延时程序 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信