单片机按键控制LED灯十种亮度显示的程序

#include<stc12c2052ad.h>//定义头文件 51单片机就用#include<at89c51.h>

sbit d1=P1^7;、、 //定义LED灯1

sbit d2=P1^6; //定义LED灯2

sbit key1=P3^0; //定义按键灯

void delay(unsigned int a){ //延时程序

unsigned int i;

while( a-- != 0){

for(i = 0; i < 100; i++);

}

}
void main(){

while(1){

unsigned int a,b,c,d;

if(key1==0)d++; //按键判断
switch(d) //按键信息比较

{

case 1: b=9;;a=1;break;
case 2: b=8;;a=2;break;
case 3: b=7;;a=3;break;
case 4: b=6;;a=4;break;
case 5: b=5;;a=5;break;
case 6: b=4;;a=6;break;
case 7: b=3;;a=7;break;
case 8: b=2;;a=8;break;
case 9: b=1;;a=9;break;

}

while(key1==0); 判//判断按键是否松开

if(d==10)d=0; //按键9种亮度判断,是否是第9种,如果是,则d=0

for(c=0;c<2;c++){ //亮度模式循环显示

d1=0;

d2=1;

delay(a);

d1=1;

d2=0;

delay(b);

}

}

}

永不止步步 发表于10-29 09:51 浏览65535次
分享到:

已有0条评论

暂时还没有回复哟,快来抢沙发吧

添加一条新评论

只有登录用户才能评论,请先登录注册哦!

话题作者

永不止步步
金币:67410个|学分:307967个
立即注册
畅学电子网,带你进入电子开发学习世界
专业电子工程技术学习交流社区,加入畅学一起充电加油吧!

x

畅学电子网订阅号