标题:
矩阵键盘控制led灯闪烁
[打印本页]
作者:
mapengtao.c
时间:
2017-3-13 17:17
标题:
矩阵键盘控制led灯闪烁
P3=0xdf;
temp=P3;temp&=0x0f;
if(temp!=0x0f)
{
delay(5);
temp=P3;
temp&=0x0f;
if(temp!=0x0f)
{
temp=P3;
switch(temp)
{
case 0xde:P0=0x55;break;//s15
case 0xdd:P0=0xaa;break;//s14
case 0xdb:P0=0x0f;break;//s13
case 0xd7:P0=0xf0;break;//s12
}
while(temp!=0x0f)
{
temp=P3;
temp&=0x0f;
}
}
}
现在知识控制了几个灯的亮灭,可是要想实现s12控制8个led灯闪烁,该怎么实现呢,还需要重新建立一个函数吗
作者:
imxuheng
时间:
2017-3-13 19:10
s12按下就开启定时器,定时器控制灯闪烁
作者:
SSSAA
时间:
2017-3-13 19:18
增加个定时器控制就可以了
作者:
le51
时间:
2017-3-13 19:21
#include<reg52.h>
sbit S1=P1^0; //붨òå
sbit led0=P2^0;
sbit led1=P2^1;
sbit led2=P2^2;
sbit led3=P2^3;
sbit led4=P2^4;
sbit led5=P2^5;
sbit led6=P2^6;
sbit led7=P2^7;
void delay(void)//Ñóê±×óoˉêy
{
unsigned int i;
for(i=5000;i>0;i--)
;
}
void main(void)
{
while(1)
{
if(S1==0)
{
delay();
if(F0==0)
{
F0=1;
led0=~led0;
led1=~led1;
led2=~led2;
led3=~led3;
led4=~led4;
led5=~led5;
led6=~led6;
led7=~led7;
}
}
else
{
F0=0;
}
}
}
这样应该也可以
作者:
xcj
时间:
2017-3-18 11:05
评论拿黑币
作者:
yamato2011
时间:
2017-3-18 12:53
按下S12直接调用一个while循环,在里面延时执行就可以了
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1