OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4487|回复: 2

为什么我的程序卡在下面这个控制流水灯的while(1)出不来。

[复制链接]

1

主题

2

帖子

0

精华

新手入门

积分
14
金钱
14
注册时间
2022-4-24
在线时间
2 小时
发表于 2022-4-24 16:09:23 | 显示全部楼层 |阅读模式
int main(void)
{
        vu8 key=0;       
        delay_init();                     //延时函数初始化          
        LED_Init();                             //LED端口初始化
        KEY_Init();          //初始化与按键连接的硬件接口
        LED0=0;                                        //先点亮红灯
        while(1)
         {
                key=KEY_Scan(0);//得到键值
                   if(key)
                {                       
                        switch(key)
                        {                               
                               
                                case WKUP_PRES:        //控制流水灯
                                        while(1)
   {       
                                 LED0=!LED0;
                                delay_ms(500);
                                 LED1=!LED1;
                                delay_ms(500);
   }
                                case KEY2_PRES:        //控制LED0翻转
                                        LED0=!LED0;
                                   break;
                               
                                case KEY1_PRES:        //控制LED1翻转         
                                        LED1=!LED1;
                                        break;
                                case KEY0_PRES:        //同时控制LED0,LED1翻转
                                        LED0=!LED0;
                                        LED1=!LED1;
                                        break;
                         }
                  }
                }
        }

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

14

主题

821

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2070
金钱
2070
注册时间
2021-7-17
在线时间
647 小时
发表于 2022-4-25 15:59:56 | 显示全部楼层
while(1)不是死循环吗?怎么跳出来呢,可以把1改为条件,不是1就退出了
回复 支持 反对

使用道具 举报

1

主题

2

帖子

0

精华

新手入门

积分
14
金钱
14
注册时间
2022-4-24
在线时间
2 小时
 楼主| 发表于 2022-4-25 22:07:46 | 显示全部楼层
ChenRyan 发表于 2022-4-25 15:59
while(1)不是死循环吗?怎么跳出来呢,可以把1改为条件,不是1就退出了

大佬,
麻烦说一下咋改?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-25 21:00

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表