[51单片机]

单键控制LED闪烁

[复制链接]
770|3
手机看帖
扫描二维码
随时随地手机跟帖
xh14061507021| | 2019-4-22 11:03 | 显示全部楼层
加我QQ给你程序1833493142

使用特权

评论回复
ayb_ice| | 2019-4-22 11:03 | 显示全部楼层
本帖最后由 ayb_ice 于 2019-4-22 16:40 编辑

void Delay_10ms(void)
{
        //...
}

sbit LED = P1^0;        //0=ON
sbit KEY = P1^1;        //0=PUSH
bit bBkpKey;
bit bFlag;

void main(void)
{
        while (1)
        {
                //KEy
                bit bTmp = !KEY;
                if (bTmp && !bBkpKey)
                {
                        bFlag = !bFlag;
                }
                bBkpKey = bTmp;
               
                //LED
                if (bFlag)
                {
                        static u8 ucLedTime;
                        ucLedTime++;
                        if (ucLedTime < 100)
                        {
                                LED = 0;
                        }
                        else
                        if (ucLedTime >= 150)
                        {
                                ucLedTime = 0;
                                LED = 1;
                        }
                }
                else
                {
                        LED = 0;
                }
               
                //SYNC
                Delay_10ms();
        }
        
}

使用特权

评论回复
516785076| | 2019-4-22 16:26 | 显示全部楼层
判断按键,进入循环

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

2

帖子

0

粉丝