电池电量显示
手持仪器经常要显示电池电量的信息,这里我们制作了电池电量的控件,并且支持AD采集,可以使用控制器E1~E6 任意一个扩展口设置成AD模式完成采样
属性:
属性名 | 描述 | 默认值 | 备注 |
---|---|---|---|
x1 | 左上角X1坐标 | 0 | |
y1 | 左上角y1坐标 | 0 | |
x2 | 右下角X2坐标 | 200 | |
y2 | 右下角y2坐标 | 160 | |
status | 状态寄存器 | 128 | 这里设置定时值可以驱动随机数演示 |
status2 | 状态寄存器 | 0 | |
cc | 显示汉字的颜色 | 15 | |
bc | 背景颜色 | 63 | |
lowc | 低电压颜色 | 1 | |
boxc | 正常电压颜色 | 2 | |
chargec | 充电电压颜色 | 4 | |
val | 电量百分比0~100 | 80 | |
ischarge | 充电状态 | 0 | 0-放电中 1-充电中 |
isviewnum | 是否显示电量百分比 | 1 | 0:不显示;1:显示 |
isuseAD | 是否使用扩展IO的AD采集单节锂电 | 0 | 0:不使用;1:使用 |
gpio | 选择gpio路连接电池AD采集电压 | 0 | 0-E1;1-E2;2-E3; 3-E4;4-E5;5-E6 |
直接显示使用
isuseAD=0的时候,可以由软件控制val等各种参数完成显示
电量AD自动采集
isuseAD=1 时,有gpio属性设置端口;本程序主要针对单锂供电,如果是其他电池或者多节锂电池,请自行修改ontimer()中的电量百分比的计算方法。
电路接法需要过电阻分压,否则容易烧毁IO口,切记!!!定时器2.5秒执行一次,内部有计数10,因此大约25秒采集一次电量;