Вольтметер I2C 096
- Войдите на сайт для отправки комментариев
Господа. Суть такая. Значит имеется I2C дисплей, аккум на 3.7 вольта от сотового на 2900 и зарядка от повер банка (такая простятская китайская) на аккум 18650 (по моему на мини ЮСБ). Так вот скетч
#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define OLED_RESET 4
Adafruit_SSD1306 display(OLED_RESET);
void setup() {
// initialize serial communication at 9600 bits per second:
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay();
}
// the loop routine runs over and over again forever:
void loop() {
// read the input on analog pin 0:
display.setCursor(55,10);
display.setTextSize(3);
display.clearDisplay();
display.setTextColor(WHITE);
int sensorValue = analogRead(A0);
// Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 5V):
float voltage = sensorValue * (5.0 / 1023.0);
// print out the value you read:
display.println(voltage);
display.setCursor(0,0);
display.setTextSize(1);
display.println("VOLTMETER_BANK");
display.display();
}
проблема такая: LCD кажет на выходе 5 вольт ровно, а на A0 надо подавать напряжение для того что бы LCD показывал напряжение. Тестором тукаю во всех точках не более 3.7 вольт. Какого Хуанхе? What in mistik?
Дополню отзыв: Подключил напряжение с внешнего источника питания - всё измеряет.
Так, у Вас же питание 3.7В, так? А в скетче Вы почему-то считаете, что оно у Вас 5В.
запомните, когда Вы вызываете analogRead - результат 1023 означает на 5В, а "напряжение пиатния" - уж какое есть. Понятно?
Кстати, напряжение питания тоже можно измерить самой Ардуиной. А когда измерите, уже тогда считать что там с analogRead прилетело.
P.S. Скетч Ваш не особо читал и читать не буду, пока не вставите его как положено.
https://youtu.be/56PudpDXiyM. Вот видео
И, да, если производить замер с "внешнего" источника, то напряжение показывает точно.
Ну, вот просто поймите и запомните фразу, которую я Вам сказал: "когда Вы вызываете analogRead - результат 1023 означает на 5В, а "напряжение пиатния" - уж какое есть".
Поэтому правильный вотльтметр делается так:
1. Замерять напряжение пиатния (и запомнить)
2. замерять что там на пине
3. Расчитать напряжение на пине по той же формуле, но используя в ней не 5В, а реально иземеренное напряжение питания.
Подсоби, друг, конктетным примером/скетчем. А если резистор на A0 переменный? Что то изменется? Если сделать настройку на напряжение которое выходит с аккумулятора? Будет измерять? На 10кОм к примеру
Так примеров же навалом. Вот, например - http://tim4dev.com/arduino-secret-true-voltmeter/ готовое решение
Пойми, я чайник))) Мне нужно готовле решение)) Посему я и обратился на сей светский клуб)))
Пойми, я чайник))) Мне нужно готовле решение)) Посему я и обратился на сей светский клуб)))
у меня на советской кухне жили чайники - спасибо империализму и их химическому оружию. извёл.
Приколист)))
В том примере, что я дал и есть готовое решение. Чего ещё-то надо?
Всё Ок, буду разбираться и писат скетч