原来是这样 啊,,明白了 |
楼主的程序计算出的容量应该是AS(安秒),这一句“capacity=capacity+Idown; //换算为电池容量值”改为 “capacity=capacity+Idown/3.6; //换算为电池容量值” 单位才能用mAh. |
252622979 发表于 2020-2-4 13:20 原来是这样 啊,,明白了 |
252622979 发表于 2020-2-4 13:20 要什么板?? |
cr8526 发表于 2019-10-15 15:10 DUE 好像不行的哦, |
图1 Arduino Pro Mini 测量 2 节 7 号电池电压和容量![]() 图2 硬件连接 Arduino Pro Mini 和 电池 ![]() 图3 APP 实时显示电池电压和容量 ![]() 谢谢您的介绍,按这个原理实现了 Arduino Pro Mini 测量 2 节 7 号电池(电压=2.93V,电量=94%)。算法原理和实验过程,请参考《花 1 小时,开源设计 LoRa 检测电池容量》 https://blog.csdn.net/jiangjunjie_2005/article/details/104070668 |
zhengyouhua 发表于 2019-10-15 18:30 论坛有的,,我看到有显示屏的做法 |
加个显示屏 显示呢 |
我用Arduino DUE板做的,,做不出来,,上面就是错误报警 |
Arduino:1.6.9 (Windows 7), 开发板:"Arduino Due (Programming Port)" Arduino:1: error: 'float time' redeclared as different kind of symbol In file included from c:\users\administrator.user-20161022ou\appdata\local\arduino15\packages\arduino\tools\arm-none-eabi-gcc\4.8.3-2014q1\arm-none-eabi\include\stdlib.h:11:0, from C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Arduino.h:24, from sketch\Arduino.ino.cpp:1: c:\users\administrator.user-20161022ou\appdata\local\arduino15\packages\arduino\tools\arm-none-eabi-gcc\4.8.3-2014q1\arm-none-eabi\include\time.h:47:11: error: previous declaration of 'time_t time(time_t*)' time_t _EXFUN(time, (time_t *_timer)); ^ D:\360娴忚鍣ㄤ笅杞絃BV\绗簲绔犲簲鐢ㄨ繘闃禱5.4娓╂箍搴︽祴閲廫Arduino\Arduino.ino: In function 'void loop()': D:\360娴忚鍣ㄤ笅杞絃BV\绗簲绔犲簲鐢ㄨ繘闃禱5.4娓╂箍搴︽祴閲廫Arduino\Arduino.ino:9:11: warning: pointer to a function used in arithmetic [-Wpointer-arith] Arduino:9: error: assignment of function 'time_t time(time_t*)' Arduino:9: error: cannot convert 'time_t (*)(time_t*) {aka long int (*)(long int*)}' to 'time_t(time_t*) {aka long int(long int*)}' in assignment Arduino:24: error: call of overloaded 'print(time_t (&)(time_t*))' is ambiguous D:\360娴忚鍣ㄤ笅杞絃BV\绗簲绔犲簲鐢ㄨ繘闃禱5.4娓╂箍搴︽祴閲廫Arduino\Arduino.ino:24:18: note: candidates are: In file included from C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Stream.h:26:0, from C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/HardwareSerial.h:24, from C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Arduino.h:195, from sketch\Arduino.ino.cpp:1: C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Print.h:61:12: note: size_t Print::print(char) <near match> size_t print(char); ^ C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Print.h:61:12: note: no known conversion for argument 1 from 'time_t(time_t*) {aka long int(long int*)}' to 'char' C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Print.h:62:12: note: size_t Print::print(unsigned char, int) <near match> size_t print(unsigned char, int = DEC); ^ C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Print.h:62:12: note: no known conversion for argument 1 from 'time_t(time_t*) {aka long int(long int*)}' to 'unsigned char' C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Print.h:63:12: note: size_t Print::print(int, int) <near match> size_t print(int, int = DEC); ^ C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Print.h:63:12: note: no known conversion for argument 1 from 'time_t(time_t*) {aka long int(long int*)}' to 'int' C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Print.h:64:12: note: size_t Print::print(unsigned int, int) <near match> size_t print(unsigned int, int = DEC); ^ C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Print.h:64:12: note: no known conversion for argument 1 from 'time_t(time_t*) {aka long int(long int*)}' to 'unsigned int' C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Print.h:65:12: note: size_t Print::print(long int, int) <near match> size_t print(long, int = DEC); ^ C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Print.h:65:12: note: no known conversion for argument 1 from 'time_t(time_t*) {aka long int(long int*)}' to 'long int' C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Print.h:66:12: note: size_t Print::print(long unsigned int, int) <near match> size_t print(unsigned long, int = DEC); ^ C:\Users\Administrator.USER-20161022OU\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.8\cores\arduino/Print.h:66:12: note: no known conversion for argument 1 from 'time_t(time_t*) {aka long int(long int*)}' to 'long unsigned int' exit status 1 'float time' redeclared as different kind of symbol 在文件 -> 首选项开启 “编译过程中显示详细输出”选项 这份报告会包含更多信息。 |