Top.Mail.Ru
Ответы

Как сделать вывод значения с тензодатчика на I2C lcd дисплей?

Есть код:
#include "HX711.h" // Подключаем библиотеку HX711 rob tillaart
#include <LiquidCrystal_I2C.h>
HX711 scale; // Создаём объект scale
LiquidCrystal_I2C lcd(0x3F, 16, 2);
#define DT A0 // Указываем номер вывода, к которому подключен вывод DT датчика HX711
#define SCK A1 // Указываем номер вывода, к которому подключен вывод SCK датчика HX711
float calibration_factor = 4; // Вводим калибровочный коэффициент
float units; // Задаём переменную для измерений в граммах
float ounces; // Задаём переменную для измерений в унциях
void setup()
{
Serial.begin(57600); // Инициируем работу последовательного порта на скорости 9600 бод
lcd.init();
lcd.backlight();
scale.begin(DT, SCK); // Инициируем работу с датчиком
scale.set_scale(); // Выполняем измерение значения без калибровочного коэффициента
scale.tare(); // Сбрасываем значения веса на датчике в 0
scale.set_scale(calibration_factor); // Устанавливаем калибровочный коэффициент
}
void loop() {
Serial.print("Reading: "); // Выводим текст в монитор последовательного порта
for (int i = 0; i < 10; i ++) { // Усредняем показания, считав значения датчика 10 раз
units = + scale.get_units(), 10; // Суммируем показания 10 замеров
}
units = units / 10; // Усредняем показания, разделив сумму значений на 10
ounces = (units * 0.035274)*10; // Переводим вес из унций в граммы
Serial.print(ounces); // Выводим в монитор последовательного порта вес в граммах
Serial.println(" grams"); // Выводим текст в монитор последовательного порта
lcd.print(ounces) ;

}
но значение не выводит

По дате
По рейтингу
Аватар пользователя
Знаток
2мес

Во-первых поменяй 57600 на 9600 в

  • Serial.begin(57600); // Инициируем работу последовательного порта на скорости 9600 бод

Потом посмотри будут ли у тебя выводится значения в сериал порте. Как сделаешь напиши что получилось

Аватар пользователя
Мыслитель
2мес

Кури маны до просвятления.