|
本帖最后由 XTXB 于 2019-8-19 10:55 编辑
入坑多年,还没玩过比较器,加上坛友们一直心心念念着带AD的8脚STC,闲来无事,用不带AD的STC15W204S做了个板子测量电池电压,100mv无压力,感觉够用了。
占用资源:比较器+定时器+2个端口。
端口: CMP+ P55
P54通过1.5M电阻给1uf电容充电,P55比较电容电压。串口1输出。其他管脚接LED-,低电平点亮。
功能:测量单片机供电电压,将充电时间值adc_val通过串口发送出,用10个LED光柱显示3.3V-4.2V电压。
原理:
P54输出高电位,通过1M电阻给1u电容充电,P55检测电容电压,与内部BGV Vbgv比较,达到翻转时,记下充电时间T,
T与电源电压V相关:T=—R*C*ln((V-Vbgv)/V)
单位:T 秒;R 欧姆;C 法拉;V 伏特;ln 自然对数
如果R=1.5M C=1uf Vbgv=1.2V V=4.2V T=-(1.5*1000000)*(1/1000000)ln((4.2-1.2)/4.2)=0.504(秒)
实际充电时间比这个要小,因为在短时间内电容不可能完全放完所有电荷,本试验中根据实际测量的时间标定所需分度值。
步骤:
1 DC_IN为低电平,将电容的电放掉。
2 延时2秒。
3 DC_IN为高电平,充电时间计数器adc_val_cnt复位,在定时器0中开始计数。
4 比较翻转,记录adc_val_cnt值到adc_val。
5 将计数值adc_val通过串口发送出,用10个LED光柱显示3.3V-4.2V电压。
6 开始下一次测量。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
|