OpenEdv-开源电子网

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

求教,程序不能正常做加法问题

[复制链接]

89

主题

172

帖子

0

精华

高级会员

Rank: 4

积分
607
金钱
607
注册时间
2015-9-7
在线时间
141 小时
发表于 2020-10-27 16:42:30 | 显示全部楼层 |阅读模式
1金钱
#define ADC_NUM 50
void DC_IN_VOL()
{
        uint16_t i=0;
        static uint32_t resvl;
        resvl=10;
        for(i=0;i<ADC_NUM;i++)
        {
        resvl+=100;
        }
        resvl=resvl/100;
        resvl=2495*resvl/ADC_Value[0];
        resvl=resvl*14.333f;
        DC_vol=resvl;
        if(DC_vol<Under_VL)
        {
                VL_flag=1;
        }
        else
                VL_flag=0;
         //加上二極管壓降
}
此函数resvl数值一直为0,没有增加,赋值也赋不了,这是为什么? freertos 系统中

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

使用道具 举报

12

主题

3401

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8684
金钱
8684
注册时间
2020-5-11
在线时间
4167 小时
发表于 2020-10-27 16:51:18 | 显示全部楼层
先注意避免除数为0,如/ADC_Value[0];
然后把函数中的东西去掉只写一句对resvl赋值的语句试试。
你这里的static看起来没用,

resvl=resvl/100;
resvl=2495*resvl/ADC_Value[0];
resvl=resvl*14.333f;
DC_vol=resvl;
这四句其实可以写成一句
专治疑难杂症
回复

使用道具 举报

22

主题

2251

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4480
金钱
4480
注册时间
2013-4-22
在线时间
337 小时
发表于 2020-10-27 20:50:48 | 显示全部楼层
调试一下看看哪一步变的0
回复

使用道具 举报

3

主题

821

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3369
金钱
3369
注册时间
2011-11-10
在线时间
207 小时
发表于 2020-10-27 23:17:28 | 显示全部楼层
程序没问题。ADC_Value[0]的数值估计搞错了,太大了吧?
回复

使用道具 举报

3

主题

808

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3888
金钱
3888
注册时间
2017-3-7
在线时间
1694 小时
发表于 2020-10-28 07:58:40 | 显示全部楼层
应该是ADC_Value较大,你除之后取整为0
回复

使用道具 举报

3

主题

93

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1088
金钱
1088
注册时间
2018-12-24
在线时间
113 小时
发表于 2020-10-28 09:33:36 | 显示全部楼层
单步调试大法
回复

使用道具 举报

10

主题

271

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1236
金钱
1236
注册时间
2015-5-14
在线时间
352 小时
发表于 2020-10-28 11:29:51 来自手机 | 显示全部楼层
原子有一版不带系统的407lwip历程,我就用这个做的项目
回复

使用道具 举报

10

主题

271

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1236
金钱
1236
注册时间
2015-5-14
在线时间
352 小时
发表于 2020-10-28 11:30:21 来自手机 | 显示全部楼层
不好意思,发错了
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-21 04:27

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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