А зачем тебе ее конвертировать? Разве Serial.println ее не отображает?
А зачем тебе ее конвертировать? Разве Serial.println ее не отображает?
Serial.println - отображает данные только на компьютере при
открыти мониторинига последовательной шины , а мне надо выводить их на дисплей.
Ну так я и хочу посмотреть как ты пытаешся это сделать.
У меня нет времени на изучение твоей библиотеки, поэтому и прошу выожить твой код для анализа
В библиотеке наверняка должна быть функция для вывода переменной на экран
Последний раз редактировалось Chip; 09.11.2011 в 15:04.
Библиотека не моя, а отсюда- http://www.watterott.net/projects/s65-shield?
Так мне и надо, чтоб кто-то подсказал: можно ли с помощью этой библиотеки выводить на дисплей переменные.
Или есть ли другая библиотека для LPH88?
Можно только строковые. В примерах есть.
Или символ void drawChar(uint8_t x, uint8_t y, char c, uint8_t size, uint16_t color, uint16_t bg_color)
Преобразование из числа в символ Чип показывал выше.
Последний раз редактировалось zhserg; 09.11.2011 в 18:13.
avaclub.ru
Intel D525MW, 2Gb, SSD 40Gb, 7' noname, ATX DC-DC 160W MINI-ITX, GM-2 USB GPS Receiver MTK2, USB ELM327 V1.4
Может поможете с выводом на дисплей?
Вот кусок скетча:
void ArmDown()
{
int alimit=digitalRead(Amotorlimpin);
int armcurrent; //--Ток двигателя
while (alimit==1)
{
armcurrent = analogRead(Amotorcurpin);
if (armcurrent>150)
{
Serial.print("armcurrent:");
Serial.println(armcurrent);
break;
}
Т. е. на Serial Monitor на компьютере выводятся значения, считываемые с аналогового выхода Amotorcurpin.
Надо тоже самое выводить на дисплейчик
Можно сделать так, например:
char str[5];
sprintf(str, " %03i", armcurrent);
lcd.drawText(10, 50, str, 2, RGB( 0,255, 0), RGB(0,0,0));
avaclub.ru
Intel D525MW, 2Gb, SSD 40Gb, 7' noname, ATX DC-DC 160W MINI-ITX, GM-2 USB GPS Receiver MTK2, USB ELM327 V1.4
Спасибо за ответ. А можно немного пояснений на простом примере:
С комментариями, если можно.
#include <S65Display.h>
S65Display lcd;
void setup() {
Serial.begin(9600);
}
void loop() {
int armcurrent = analogRead(A0); //показания аналогово выхода
Serial.println(armcurrent, DEC);
char str[5]; // объявляем текстовую строку как массив "str" из 5-ти символов без присваивания значений -?
sprintf(str, " %03i", armcurrent); // - ?
lcd.drawText(10, 50, str, 2, RGB( 0,255, 0), RGB(0,0,0)); // ?
}
Последний раз редактировалось sega66; 10.11.2011 в 16:04.
А чего же тут комментировать?
Про фунцию sprintf читай в мануалах на С, С++.
lcd.drawText - это вывод текстовой переменной str на дисплей из указанной библиотеки с координатами x=10, y=50, масштаб шрифта 2, цвет букв - RGB( 0,255, 0) (зеленый), фон - RGB(0,0,0) - черный.
Длину массива в твоем случае можно уменьшить до 3.
avaclub.ru
Intel D525MW, 2Gb, SSD 40Gb, 7' noname, ATX DC-DC 160W MINI-ITX, GM-2 USB GPS Receiver MTK2, USB ELM327 V1.4
Спасибо zhserg! Все работает.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)