float на дисплее HD44780

Использование дисплеев и обсуждение пользовательских блоков к ним
Ответить
dim21841
Рядовой
Сообщения: 37
Зарегистрирован: 13.10.2015{, 08:08}
Репутация: 0
Откуда: Бельцы

float на дисплее HD44780

#1

Сообщение dim21841 » 19.11.2015{, 13:04}

Всем привет. вчера столкнулся с проблемой вывода на дисплей HD44780 значение float.
собирал омметр и не мог вывести значения с точкой.
вопрос: почему в программе дисплей выводит только значения string?
в Arduino IDE запросто написал пару строк кода и передал на дисплей и значение с А7 и результат расчёта.

kossn93
Сержант
Сообщения: 151
Зарегистрирован: 05.09.2015{, 14:41}
Репутация: 0
Откуда: Харьков

float на дисплее HD44780

#2

Сообщение kossn93 » 19.11.2015{, 15:32}

переменная float-преобразование строк- вход блока экрана. нет проблем перевести флоат в стринг, или я что-то не понимаю?

dim21841
Рядовой
Сообщения: 37
Зарегистрирован: 13.10.2015{, 08:08}
Репутация: 0
Откуда: Бельцы

float на дисплее HD44780

#3

Сообщение dim21841 » 19.11.2015{, 15:54}

Цитата kossn93 ()200?'200px':''+(this.scrollHeight+5)+'px');">переменная float-преобразование строк- вход блока экрана. нет проблем перевести флоатfloat напрямую в строку не переводится (
вот что я делал:
 


и что получилось:



а вот пример того как я делал по примеру в Arduino IDE:

// ОММЕТР (С)2013 ALEN Studio by Little_Red_Rat
// Омметр на осное ARDUINO
// Подключение делителя напряжения к ARDUINO
// Arduino 5V -> R1 10kOm -> Arduino Analog 0 -> R2 -> Arduino GND
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 9, 4, 5, 6, 7 );

int analogPin = 7; // Анлоговый вход для считывания напряжения с делителя напряжения
float Vout = 0; // Переменная для хранения значения напряжения в средней точки делителя (0-5.0)
float R2 = 0; // Переменная для хранения значения резистора R2

void setup() 

  lcd.begin(16, 2);
Serial.begin(57600); // Подготовка Serial Monitor для вывода информации


void loop() 

Vout = (5.0 / 1023.0) * analogRead(analogPin); // Вычисляем напряжение в средней точки делителя (0-5.0)
R2 = 10000 / ((5.0 / Vout) - 1); // Вычисляем сопротивление R2 (10000 это значение R1 10 кОм) 
Serial.print("Voltage: "); // 
Serial.println(Vout); // Напряжения в средней точки делителя (0-5.0) для справки
Serial.print("R2: "); // 
Serial.println(R2); // Значение сопротивления R2
lcd.setCursor (0, 0);
lcd.print("Voltage: ");
lcd.print(Vout);
lcd.setCursor (0, 1);
lcd.print("R2: ");
lcd.print(R2);

delay(1000); // Пауза 1 сек
}

и вот как это выглядело:

Вложения
9235933.jpg
6216980.jpg
0204645.jpg

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

float на дисплее HD44780

#4

Сообщение Олег » 19.11.2015{, 16:51}

dim21841 писал(а):float напрямую в строку не переводится
В редакторе float к блоку конвертации подключить можно. Обратную конвертацию блок делает. и в описании не написано что float подключать нельзя.

dim21841
Рядовой
Сообщения: 37
Зарегистрирован: 13.10.2015{, 08:08}
Репутация: 0
Откуда: Бельцы

float на дисплее HD44780

#5

Сообщение dim21841 » 19.11.2015{, 17:26}

Цитата Олег ()200?'200px':''+(this.scrollHeight+5)+'px');">Обратную конвертацию блок делает.Хм, и вправду получилось. хотя я вроде пробовал и линии не стыковались(они там разных цветов) и не цеплялись друг к другу. спасибо за совет



вот результат:

Вложения
4971506.jpg
8693431.jpg

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

float на дисплее HD44780

#6

Сообщение Олег » 19.11.2015{, 19:13}

Не всегда с первого раза подцепляется, приходится дублировать. А по-поводу цвета - если блок рассчитан на несколько видов, то один идет по умолчанию и меняется на другой при подключении.
Последний раз редактировалось Олег 19.11.2015{, 22:14}, всего редактировалось 1 раз.

dim21841
Рядовой
Сообщения: 37
Зарегистрирован: 13.10.2015{, 08:08}
Репутация: 0
Откуда: Бельцы

float на дисплее HD44780

#7

Сообщение dim21841 » 19.11.2015{, 21:26}

Олег спасибо учту в будущем Изображение

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

float на дисплее HD44780

#8

Сообщение Олег » 19.11.2015{, 22:18}

Не за что, все мы здесь осваиваем эту классную программу и учимся друг у друга.
Последний раз редактировалось Олег 19.11.2015{, 22:18}, всего редактировалось 1 раз.

dim21841
Рядовой
Сообщения: 37
Зарегистрирован: 13.10.2015{, 08:08}
Репутация: 0
Откуда: Бельцы

float на дисплее HD44780

#9

Сообщение dim21841 » 19.11.2015{, 23:51}

Олег писал(а):все мы здесь осваиваем эту классную программу и учимся друг у друга
Абсолютно согласен и поддерживаю на все 100%!!!  Изображение

Ответить

Вернуться в «Дисплеи и индикаторы»