OpenEdv-开源电子网

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

if内的语句可以执行,为什么else if 也满足时,后面的语句却不执行

[复制链接]

9

主题

22

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2016-12-29
在线时间
13 小时
发表于 2017-12-6 20:58:09 | 显示全部楼层 |阅读模式
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

4

主题

211

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2600
金钱
2600
注册时间
2016-7-6
在线时间
546 小时
发表于 2017-12-6 20:58:10 | 显示全部楼层
else if(2681 > battery && battery >= 2482)
把复杂的事,做简单!
回复

使用道具 举报

9

主题

22

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2016-12-29
在线时间
13 小时
 楼主| 发表于 2017-12-6 20:59:18 | 显示全部楼层
[mw_shl_code=c,true]        ADCx_Init(GPIOA,ADC_Pin3,DMA_ENABLE);
//        while(1)
//        {
   
          battery = ADC1_Val[3];
               
                 if(2482 > battery )
                {
                        GPIO_ResetBits(GPIOB,GPIO_Pin_5);
                        Delay(0xfffff);
                }
       
                else if(2681 > battery >= 2482)
                        k = 1;
               
                else if(2879 > battery >= 2681)
                        k = 2;
               
                else if(3078 > battery >= 2879)
                        k = 3;

                else if(3276 > battery >= 3078)
                        k = 4;
               
                else if(3475 > battery >= 3276)
                        k = 5;

                while(i<k)
                {
                        GPIO_ResetBits(GPIOB,GPIO_Pin_5);
                        Delay(0xfffff);
                        GPIO_SetBits(GPIOB,GPIO_Pin_5);
                        Delay(0xfffff);
                        i++;
                }
                GPIO_SetBits(GPIOB,GPIO_Pin_5);
                Delay(0xffffff);[/mw_shl_code]
回复

使用道具 举报

9

主题

22

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2016-12-29
在线时间
13 小时
 楼主| 发表于 2017-12-6 21:00:49 | 显示全部楼层
battery小于2482的时候可以执行if后面的语句,但是其他值的时候却不能执行
回复

使用道具 举报

24

主题

695

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1666
金钱
1666
注册时间
2016-4-29
在线时间
266 小时
发表于 2017-12-6 21:05:33 | 显示全部楼层
楼主给我讲解一下   else if(2681 > battery >= 2482)   是什么意思
回复

使用道具 举报

9

主题

22

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2016-12-29
在线时间
13 小时
 楼主| 发表于 2017-12-6 21:09:03 | 显示全部楼层
d1z1y2 发表于 2017-12-6 21:05
楼主给我讲解一下   else if(2681 > battery >= 2482)   是什么意思

就是想判断battery在不在2482~2681的区间里面
回复

使用道具 举报

24

主题

695

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1666
金钱
1666
注册时间
2016-4-29
在线时间
266 小时
发表于 2017-12-6 21:10:38 | 显示全部楼层
madao14751 发表于 2017-12-6 21:09
就是想判断battery在不在2482~2681的区间里面

楼主去好好看看书,书里有你的答案
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-11 23:11

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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