数码之家

 找回密码
 立即注册
搜索
查看: 111|回复: 9

[C51] 许老师电桥getAD2这段代码啥意思?

[复制链接]
发表于 昨天 22:02 | 显示全部楼层 |阅读模式
其中getAD2是返回ADC转换值的函数,那么采样250次并累加后不是应该除以250才得到平均值吗?他这里加上12再除以25是啥意思,看不懂啊,有懂的大神请讲讲

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
发表于 昨天 22:26 | 显示全部楼层
加上12再除以25,是四舍五入
回复 支持 反对

使用道具 举报

发表于 昨天 22:36 | 显示全部楼层
原单片机的AD转换是10位,通过过采样实现12位分辨力。你现在用的单片机本身就是12位,直接算一个平均值就行。仅供参考。
回复 支持 反对

使用道具 举报

 楼主| 发表于 昨天 22:37 | 显示全部楼层
xixia001 发表于 2025-6-8 22:36
原单片机的AD转换是10位,通过过采样实现12位分辨力。你现在用的单片机本身就是12位,直接算一个平均值就行 ...

那我也想过采样一下实现14位分辨力,这里应该怎么写?
回复 支持 反对

使用道具 举报

发表于 昨天 22:43 | 显示全部楼层
猪小呆 发表于 2025-6-8 22:37
那我也想过采样一下实现14位分辨力,这里应该怎么写?

你看看这个

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复 支持 反对

使用道具 举报

发表于 昨天 22:50 | 显示全部楼层
原来许老师代码这么烂:(c+12)/25  = c/25+0.48 = c/25 (float 转 int ,小数部分被舍去)
回复 支持 反对

使用道具 举报

 楼主| 发表于 昨天 22:55 | 显示全部楼层
kpj001 发表于 2025-6-8 22:50
原来许老师代码这么烂:(c+12)/25  = c/25+0.48 = c/25 (float 转 int ,小数部分被舍去) ...

那不这样的话有更好的方法吗?
回复 支持 反对

使用道具 举报

发表于 昨天 23:05 | 显示全部楼层
为什么这里,之家,很少人像你一样,仿制许老师的电桥?

而其他模拟产品,什么电子负载,,可调电源,很多人都做过,

也许这里的水平,很少是职业的?很少是职业研发的?
回复 支持 反对

使用道具 举报

 楼主| 发表于 昨天 23:12 | 显示全部楼层
梅花一党 发表于 2025-6-8 23:05
为什么这里,之家,很少人像你一样,仿制许老师的电桥?

而其他模拟产品,什么电子负载,,可调电源,很多 ...

估计是许老师电桥太低级了大家看不上?也只有我这种啥都不懂的小白对啥都感兴趣想试试,连STC的专业人士梁工几年前就说要搞电桥了到现在也没下文
回复 支持 反对

使用道具 举报

发表于 6 小时前 | 显示全部楼层
猪小呆 发表于 2025-6-8 22:55
那不这样的话有更好的方法吗?

这里只是说这句代码烂,注释更烂,和非线性没半毛钱干系。
但是。。。应该不影响使用的,你看不懂就看不懂,又不影响编译上传。
仿制别人的东西不要追求看懂每一句,一旦真看懂了,也就那样。。。嗯。。。朦胧产生美
回复 支持 反对

使用道具 举报

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

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-6-9 06:26 , Processed in 0.156000 second(s), 9 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

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