Arduino的锂电源板,专门为Arduino设计的锂电池充电板,Arduino的不间断供电电源,能够为Arduino提供5V的电能,同时自带的锂电池可充电,带有锂电池充电电路,锂电池保护电路,锂电池升压电路,同时还可以作为一个普通的5V电源使用。
有时,我们会对电池电压非常感兴趣,因为电池电压与电池容量有关,当锂电池输出电压很低时,意味着电池里的电也即将用完,这时,测量电池电压就有了必要。
在Arduino Power Shield 中,我们设置了电压测量插针BAT_TST,当需要Arduino 使用模拟引脚测量电池电压时,只需将BAT_TST 引脚短路即可,这时,锂电池的正极,就连接到了Arduino 上的ANALOG 引脚中的A0引脚。
BAT_TST 引脚的短路可以使用跳帽或者杜邦线连接等方法。
接好后,即可编写程序。程序非常简单,只需读取模拟A0 口的电压,后在串口输出即可,程序如下。
const int analogInPin = A0; //A0 口 float voltage; //电压变量 int A0Value = 0; void setup() { Serial.begin(9600); //波特率设置 } void loop() { A0Value = analogRead(analogInPin); //读取A0 口的AD 转换数据到变量A0Value 中 voltage = float(A0Value * 5.1 / 1023); //将AD 读出的值转换为电压值,除以1023 是因为这里的AD 转换器是10 位的, 满量程为1023 //乘以5.1 是因为Power Shield 供电大概在5.1V Serial.print("Battery Voltage = " );//Serial 口输出 Serial.print(voltage); Serial.print("V\n "); delay(2000); }
运行程序,Arduino 串口监视器显示如下:
此程序也可嵌入到各种程序中,在电池电压降到一定程序时,执行相应的动作。电池电压在3.2V~3.3V 时,即可认为电池电压低,电量即将耗尽。