дисплей M202MD25C как подключить .

Что-то потеряли? Заходите, будем искать, что ж поделать...
Ответить
Аватара пользователя
vdv22
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт июн 08, 2017 17:52:33

дисплей M202MD25C как подключить .

Сообщение vdv22 »

здравствуйте , есть такое чудо компании FUtaba M202MD25C .Нигде и ничего не могу найти на него.Вроде должен работать по RS232 . По маркировке дисплея , контроллера нет даже упоминаний. Писал в FUtaba а в ответ тишина. Читал что протокол у них как в 1602 HD44780 я с ним знаком хорошо и много чего делал на них , но как и кому посылать команды я пока не разобрался . Прошу помощи!!!
Реклама
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: дисплей M202MD25C как подключить .

Сообщение BlackKilkennyCat »

ну хоть бы фото выложили, пины, деталей на плате дисплее, мож там надпись на микрухе, а не только нашлёпка... а так... ну разве что тут каждый второй с этим дисплеем работал, чё там, подумаешь, копеечная футаба, все сразу с ней после светодиодика :)

мож поможет:
futaba.pdf
(721.92 КБ) 519 скачиваний
Реклама
Аватара пользователя
vdv22
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт июн 08, 2017 17:52:33

Re: дисплей M202MD25C как подключить .

Сообщение vdv22 »

Извиняюсь что не прикрепил фото .
Вложения
WhatsApp Image 2020-11-27 at 21.08.16.jpeg
(109.66 КБ) 534 скачивания
WhatsApp Image 2020-11-27 at 21.08.15.jpeg
(126.2 КБ) 424 скачивания
WhatsApp Image 2020-11-27 at 21.08.17.jpeg
(161.45 КБ) 411 скачиваний
WhatsApp Image 2020-11-27 at 21.08.16 (1).jpeg
(172.44 КБ) 457 скачиваний
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: дисплей M202MD25C как подключить .

Сообщение BlackKilkennyCat »

Ну так это разработка по заказу https://www.dieboldnixdorf.com/ ,а не чисто футабовский продукт. можно попробовать как здесь: https://habr.com/ru/post/392757/
количество джамперов и пинов разъёма совпадают, но можно и проигорировать - на плате вижу подписи сигналов и контрольные точки. Большего особо и не нужно.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
vdv22
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт июн 08, 2017 17:52:33

Re: дисплей M202MD25C как подключить .

Сообщение vdv22 »

Пробежался мультиметром по разъему боковому 14 пин и скажу что он не имеет контактов с обозначенными пятаками .Если пробовать искать их на плате то можно предположить что CLK это тактирование , SI -данные а что такое CTS lat , BK ,SO какой то странный протокол получается...
Реклама
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: дисплей M202MD25C как подключить .

Сообщение BlackKilkennyCat »

это внутренние сигналы.
я бы экспериментировал с Rx Tx Clk
а вообще, проглядел бы пути от штатного разъёма, который, оказывается, по центру с металлическим корпусом.
Но думается мне, что так удаленно ничего не получится: обмениваться какими-то догадками это долго.
Напишите в никсдорфф, может они поделятся спецификацией
Реклама
Аватара пользователя
vdv22
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт июн 08, 2017 17:52:33

Re: дисплей M202MD25C как подключить .

Сообщение vdv22 »

С разъема в центре идет RX/TX на микросхему SP232AEN и с ее выходов 9 и 10 на точки на плате около контроллера .Понимаю что дисплей создан для работы по 232 ,но не могу понять в каком формате запихать туда по TX команды...
Аватара пользователя
zenner
Друг Кота
Сообщения: 5459
Зарегистрирован: Чт апр 29, 2010 01:54:10
Откуда: Сочи

Re: дисплей M202MD25C как подключить .

Сообщение zenner »

Это обычный дисплей покупателя, магазинное оборудование.
https://kassastore.ru/upload/iblock/663 ... 221af9.bmp
https://docviewer.yandex.ru/view/0/?pag ... J9&lang=ru
Инфу по ним рыть нужно. Но народ что-то на них делает
http://monitor.espec.ws/section9/topic180280.html
https://zipstore.ru/blog/displei-pokupatelya-icd2002/
https://habr.com/ru/post/457352/
Аватара пользователя
serg_svd
Собутыльник Кота
Сообщения: 2560
Зарегистрирован: Ср янв 16, 2008 08:34:04
Откуда: KMV

Re: дисплей M202MD25C как подключить .

Сообщение serg_svd »

vdv22, имею аналогичный дисплей. Не могли бы вы проверить, есть ли ШИМ сигнал на затворе мофета рядом с трансформатором. У меня после подачи питания 5 В ток потребления 12-13 мА, статичный и нет ШИМ. Индикации тоже нет. Хотя, по идее, должна быть тестовая информация о дисплее
Аватара пользователя
serg_svd
Собутыльник Кота
Сообщения: 2560
Зарегистрирован: Ср янв 16, 2008 08:34:04
Откуда: KMV

Re: дисплей M202MD25C как подключить .

Сообщение serg_svd »

Нашел я где выводы питания. Подал 12 В. Дисплей кратковременно засвечивает все сегменты и тухнет. Служебную информацию не выводит. Система команд неизвестна, скорость RS232 тоже.
В общем запустил. Решение было тут на форуме.
https://radiokot.ru/forum/viewtopic.php ... 6#p4240386
1. Запаял перемычку J3 (Parity OFF)
2. Сигнал с микроконтроллера подал напрямую на 9 ногу микросхемы *232.
3. При инициализации загрузил таблицу с кириллицей 1B 52 35 (или можно попробовать 1B 52 29
Дисплей оказался BA63, но набор комманд мне непонятен. Он схож с коммандами на дисплей LIUST-51. Я такой давно запускал. А перед этим запускал дисплей с коммандами EPSON и там все совсем по-другому. Комманды между собой несовместимы. У EPSON/POS7300 и подобных для инициализации надо послать в порт 1B 40. А для этого дисплея абсолютно это не надо.
И, судя по даташиту, который можно найти в указанной выше теме, дисплей имеет очень куцый набор команд.
Mr. Monk
Родился
Сообщения: 7
Зарегистрирован: Ср ноя 02, 2022 21:55:40

Re: дисплей M202MD25C как подключить .

Сообщение Mr. Monk »

Приобрел таких немного за дешево, чисто поиграть. Лично мой ведет себя странно.
Про подключение и питание. Здесь кто-то обозначил CN3 на плате:
1. RX платы дисплея
2. пустой (на самом деле TX платы дисплея)
3. + питание
4. - земля
Еще вчера воткнул пятивольтовый блок питания, замкнув тестовую перемычку J6. Дисплей ожил, начал гонять тест. Радости не было предела, ибо нужен только один БП 5 вольт на всё. А вот сегодня этот фокус не прокатил. Странно. Пришлось цеплять 12 вольт.
С платы дисплея 5 вольт на ESP8266 взять не получилось. Схема питания не тянет себя, и еще ESP сверху. :cry:
TX ESP8266 => RX на CN3 работало. Но не долго. Даже получилось применить стандартный Serial со swap() на gpio15. Естественно с перемычкой J3.
А вот потом опять странности. Сначала перестало работать через CN3. Чего же тут странного, если уровни не те. Перекинул(ся) на 9 ногу конвертера 232. Некоторое время на gpio15 работало. Потом перестало. На ноге TX работает.
Ладно, будем как все (постараемся). Берем SoftwareSerial, пробуем со всеми доступными "ногами" ESP. Везде, кроме gpio15, работает. Меняю проц. Те же яйца, вид сбоку. Сюжет!? :shock:
Но человеку дан пытливый ум не только для набивки брюха. :hunger: Читаем РТФМ SoftwareSerial углубленно, делаем выводы, пробуем:

Код: Выделить всё

#include <SoftwareSerial.h>
#define MYPORT_TX D7
#define MYPORT_RX -1
SoftwareSerial myPort;
void setup()
{
  myPort.begin(9600, SWSERIAL_8O1, MYPORT_RX, MYPORT_TX);
Убираем перемычку J3. Работает.

Изображение

Про выбор столбца

Код: Выделить всё

void set_cursor (uint8_t str, uint8_t col) { // установить курсор
// строка , колонка
myPort.write(0x1b);
myPort.write(0x5b);
myPort.write(0x30 + str);
myPort.write(0x3b);
if (col < 10) myPort.write(0x30 + col);
else if (col == 20) {myPort.write(0x32); myPort.write(0x30);}
else {myPort.write(0x31); myPort.write(0x30 + col%10);}
myPort.write(0x48);
}
немного переписал код, иначе такая хрень в виде буквы H появлялась на позициях дальше девятой.

Изображение
Mr. Monk
Родился
Сообщения: 7
Зарегистрирован: Ср ноя 02, 2022 21:55:40

Re: дисплей M202MD25C как подключить .

Сообщение Mr. Monk »

[uquote="Mr. Monk",url="/forum/viewtopic.php?p=4314021#p4314021"]А вот потом опять странности. Сначала перестало работать через CN3.[/uquote] Поправка. Надо быть внимательнее, и не забывать про инвертирование сигнала на COM порту.
Собственно по подключению к ESP8266.
Подключился таки к CN3 на плате:
1. RX платы дисплея
2. пустой (на самом деле TX платы дисплея)
3. + питание
4. - земля

Если использовать стандартный Serial, то код должен быть таким:

Код: Выделить всё

void setup()
{
// HardwareSerial::begin(unsigned long baud, SerialConfig config, SerialMode mode, uint8_t tx_pin, bool invert)
  Serial.begin(9600, SERIAL_8O1, SERIAL_TX_ONLY, 1, true);
  Serial.swap();  //Пины переместятся на GPIO15/D8 (TX) и GPIO13/D7 (RX)
  Serial.flush();
Если использовать SoftwareSerial, то код должен быть таким:

Код: Выделить всё

#include <SoftwareSerial.h>
SoftwareSerial myPort;
void setup()
{
  // begin(baud, config, rxPin, txPin, m_invert);
  myPort.begin(9600, SWSERIAL_8O1, MYPORT_RX, MYPORT_TX, true);
Перемычка J3 не нужна.

Про регулировку яркости. Везде пишут про контакт BK. Решил попробовать. отрезал дорожку от 28 ноги процессора, BK подключил к ESP8266, analogWrite(D7, analog_Write);
Спойлер
В общем работает. Но с нюансами. analogWrite в ESP8266 программный. Прилось выставить частоту analogWriteFreq(5000);, иначе получался стробоскоп.
Аватара пользователя
zenner
Друг Кота
Сообщения: 5459
Зарегистрирован: Чт апр 29, 2010 01:54:10
Откуда: Сочи

Re: дисплей M202MD25C как подключить .

Сообщение zenner »

Нашел статью про часы на этих модулях
https://cxem.net/arduino/arduino250.php ... d693179637
Но не нравится наличие дорогих модулей и датчиков в обвесе.
И ждать их из китая долго. И не присылают иногда вообще.
Mr. Monk
Родился
Сообщения: 7
Зарегистрирован: Ср ноя 02, 2022 21:55:40

Re: дисплей M202MD25C как подключить .

Сообщение Mr. Monk »

[uquote="zenner",url="/forum/viewtopic.php?p=4321388#p4321388"]Нашел статью про часы на этих модулях[/uquote]
Не-а, не на этих.
[uquote="zenner",url="/forum/viewtopic.php?p=4321388#p4321388"]Но не нравится наличие дорогих модулей и датчиков в обвесе.[/uquote]
Смотря что Вам от устройства требуется. Барометры с влажностью - да, не по детски подорожали. Сразу в 10 раз год назад. Сейчас вроде цена падает. Недавно BME280 чуть дороже 200 рублей брал. От RTC можно отказаться при наличии интернета и ESP.
[uquote="zenner",url="/forum/viewtopic.php?p=4321388#p4321388"]И ждать их из китая долго. И не присылают иногда вообще.[/uquote]
Раз на раз не приходится. Бывает, что теряется посылка. У меня за последние 10 лет раза три или четыре точно. А насчет "долго"... Займитесь чем нибудь интересным. Корпус например для часов сделайте. Месяц быстро пролетит.
Аватара пользователя
zenner
Друг Кота
Сообщения: 5459
Зарегистрирован: Чт апр 29, 2010 01:54:10
Откуда: Сочи

Re: дисплей M202MD25C как подключить .

Сообщение zenner »

Спасибо конечно за совет клеить корпуса, но у меня более плотный график и есть чем заняться.
Есть у меня кучка модулей похожих, вот думаю что-то на них сделать интересное.
Но нет нормальных схем в сети на них. Всё что есть, всё ардуиновское или глумное по сути.
На счёт разных модулей- так у них у всех протокол по витой паре практически одинаков.
Mr. Monk
Родился
Сообщения: 7
Зарегистрирован: Ср ноя 02, 2022 21:55:40

Re: дисплей M202MD25C как подключить .

Сообщение Mr. Monk »

В общем сделал автоматическую регулировку яркости.
Напомню, отрезал дорожку от проца к контакту BK, подключил контакт BK к ESP8266.
В setup вставил analogWriteFreq(5000);, иначе стробоскоп на экране.
И куда нибудь в цЫкл:

Код: Выделить всё

analogWrite(D7, 250 - analogRead(A0)/7);
Спойлер
alakond
Родился
Сообщения: 19
Зарегистрирован: Вт май 31, 2016 20:04:06

Re: дисплей M202MD25C как подключить .

Сообщение alakond »

[uquote="Mr. Monk",url="/forum/viewtopic.php?p=4321497#p4321497"]В общем сделал автоматическую регулировку яркости.
Напомню, отрезал дорожку от проца к контакту BK, подключил контакт BK к ESP8266.
В setup вставил analogWriteFreq(5000);, иначе стробоскоп на экране.
И куда нибудь в цЫкл:

Код: Выделить всё

analogWrite(D7, 250 - analogRead(A0)/7);
Спойлер
[/uquote]

Привет. А скетчем для esp8266 поделишься?
Mr. Monk
Родился
Сообщения: 7
Зарегистрирован: Ср ноя 02, 2022 21:55:40

Re: дисплей M202MD25C как подключить .

Сообщение Mr. Monk »

[uquote="alakond",url="/forum/viewtopic.php?p=4695696#p4695696"]Привет. А скетчем для esp8266 поделишься?[/uquote]
Что конкретно интересует? Я его, дисплей, довольно глубоко в скетч интегрировал. Могу вкладку конкретно для дисплея выложить. Может какие-нибудь вопросы по управлению интересуют?
alakond
Родился
Сообщения: 19
Зарегистрирован: Вт май 31, 2016 20:04:06

Re: дисплей M202MD25C как подключить .

Сообщение alakond »

[uquote="Mr. Monk",url="/forum/viewtopic.php?p=4695708#p4695708"][uquote="alakond",url="/forum/viewtopic.php?p=4695696#p4695696"]Привет. А скетчем для esp8266 поделишься?[/uquote]
Что конкретно интересует? Я его, дисплей, довольно глубоко в скетч интегрировал. Могу вкладку конкретно для дисплея выложить. Может какие-нибудь вопросы по управлению интересуют?[/uquote]
Дисплей попал в руки, решил часы сделать. Так что интересует скетч для управления дисплеем. А если наглеть, то сразу скетч под часы.
Mr. Monk
Родился
Сообщения: 7
Зарегистрирован: Ср ноя 02, 2022 21:55:40

Re: дисплей M202MD25C как подключить .

Сообщение Mr. Monk »

[uquote="alakond",url="/forum/viewtopic.php?p=4695709#p4695709"]Дисплей попал в руки, решил часы сделать. Так что интересует скетч для управления дисплеем. А если наглеть, то сразу скетч под часы.[/uquote]
Ну как то так для начала.
Спойлер#ifdef VFDser

void showTime()
{
String outVFD1, outVFD2;
analogWrite(BK_pin, 215 - analogRead(A0)/5); // Яркость

countShT++;

// =============== collectTime(outVFD1);

if (NTPtimeGet || DS3231_present)
{
outVFD1 = FPSTR(day_of_weekVFD[dayOfWeek]);
outVFD1 += addZero(dayOfMonth, 2, " ");
outVFD1 += ".";
outVFD1 += addZero(monthDS, 2, "0");
outVFD1 += ".";
outVFD1 += addZero(yearDS, 2, "0");
outVFD1 += " ";
outVFD1 += addZero(hourDS, 2, "0");
outVFD1 += hither_thither ? ":" : "\376";
outVFD1 += addZero(minuteDS, 2, "0");
outVFD1 += hither_thither ? ":" : "\376";
outVFD1 += addZero(secondDS, 2, "0");
hither_thither = !hither_thither;
}
else
{
outVFD1 = FPSTR(txtVFD[0]); // ВРЕМЯ НЕ ПОЛУЧЕНО
}

//=================
#if defined(Desk_Clock)
//=================

// =============== Первый экран

if (countShT < 7)
{
if (CLIMATE_present)
{
if (Weather_t >= 0) outVFD2 = "+";
outVFD2 += Weather_t;
outVFD2 += F("\370 ");
outVFD2 += Weather_h;
outVFD2 += "%";
}
else
{
outVFD2 = descr_Weather;
outVFD2 += FPSTR(txtVFD[2]); // НЕ ПОДКЛЮЧЕН
countShT = 9;
}
}

// =============== Второй экран

#ifdef BME280
else if (countShT > 6 && countShT < 10)
{
if (CLIMATE_present)
{
outVFD2 = F("Давление ");
outVFD2 += Weather_p;
outVFD2 += F("mHg");
}
else
{
outVFD2 = descr_Weather;
outVFD2 += FPSTR(txtVFD[2]); // НЕ ПОДКЛЮЧЕН
countShT = 9;
}
}
#else
else if (countShT > 6 && countShT < 10)
{
outVFD2 = F("Давление неизвестно");
countShT = 9;
}
#endif

// =============== Третий экран

else if (countShT > 9 && countShT < 13)
{
#if defined(DallaS)
if (DS18B20_present)
{
outVFD2 = descr_DS18B20;
outVFD2 += " ";
if (DS18B20_t >= 0) outVFD2 += "+";
outVFD2 += DS18B20_t;
outVFD2 += F("\370");
}
else
{
outVFD2 = descr_DS18B20;
outVFD2 += FPSTR(txtVFD[2]); // НЕ ПОДКЛЮЧЕН
countShT = 12;
}
#else
#endif
}

// =============== Четвертый экран

else if (countShT > 12 && countShT < 15)
{
if (WiFi.status() == WL_CONNECTED)
{
outVFD2 = WiFi.SSID();
outVFD2 += " ";
outVFD2 += WiFi.RSSI();
outVFD2 += F(" dbm");
}
else
{
outVFD2 = F("Wi-Fi");
outVFD2 += FPSTR(txtVFD[2]); // НЕ ПОДКЛЮЧЕН
countShT = 0;
}
if (countShT == 14) countShT = 0;
}


//=================
#elif defined(Weather_St)
//=================

// =============== Первый экран

if (countShT < 7)
{
#if defined(DallaS)
if (DS18B20_present)
{
outVFD1 = descr_DS18B20;
String DS18B20_tS;
if (DS18B20_t >= 0) DS18B20_tS = "+";
DS18B20_tS += DS18B20_t;
uint8_t i = 0;
uint8_t ii = DS18B20_tS.length() < 6 ? 8 : 9; // количество знакомест в температуре
uint8_t iii = outVFD1.length(); // количество байтов в названии
while (iii--) {if (outVFD1[iii]==0xd1 || outVFD1[iii]==0xd0) i++;} // считаем количество русских букв
iii = NUMofCOL - outVFD1.length() + i - ii; // сколько нужно пустых знакомест в начале?
while (iii--) outVFD1 += " "; // набиваем...
outVFD1 += DS18B20_tS;
outVFD1 += F("\370");
iii = NUMofCOL - outVFD1.length() + i - 1; // сколько нужно пустых знакомест в конце?
while (iii--) outVFD1 += " "; // добиваем...
if (countShT == 1 || countShT == 4) outVFD1 += "/";
else if (countShT == 2 || countShT == 5) outVFD1 += "-";
else if (countShT == 3 || countShT == 6) outVFD1 += "\\";
}
#endif
if (CLIMATE_present)
{
outVFD2 = descr_Weather;
String Weather_tS;
if (Weather_t >= 0) Weather_tS = "+";
Weather_tS += Weather_t;
uint8_t i = 0;
uint8_t ii = Weather_tS.length() < 6 ? 8 : 9; // количество знакомест в температуре
uint8_t iii = outVFD2.length(); // количество байтов в названии
while (iii--) {if (outVFD2[iii]==0xd1 || outVFD2[iii]==0xd0) i++;} // считаем количество русских букв
iii = NUMofCOL - outVFD2.length() + i - ii; // сколько нужно пустых знакомест между?
while (iii--) outVFD2 += " "; // набиваем...
outVFD2 += Weather_tS;
outVFD2 += F("\370");
iii = NUMofCOL - outVFD2.length() + i; // сколько нужно пустых знакомест в конце?
while (iii--) outVFD2 += " "; // добиваем...
}
else
{
outVFD2 = descr_Weather;
outVFD2 += FPSTR(txtVFD[2]); // НЕ ПОДКЛЮЧЕН
}
}

// =============== Второй экран

else if (countShT > 6 && countShT < 10)
{
if (CLIMATE_present)
{
outVFD2 = Weather_h;
outVFD2 += "%";
#ifdef BME280
outVFD2 += F(" ");
outVFD2 += Weather_p;
outVFD2 += F(" mHg");
#endif
}
else
{
outVFD2 = descr_Weather;
outVFD2 += FPSTR(txtVFD[2]); // НЕ ПОДКЛЮЧЕН
}
if (countShT == 9) countShT = 0;
}

#endif

print_on_VFDa(1, outVFD1, " ");
print_on_VFDa(2, outVFD2, " ");
}

void Set_country_code(uint8_t country_code) // ESCRn (1B 52 35)
{
Serial.print(F("\x1BR") + String(country_code)); delay (100);
// выбор кодовой страницы рус - но печатать из под ардуино сможет только после обработки кодером из cp1251 в cp866
}

void CLS() // очистка экрана ESC[2J (1B 5B 32 4A)
{
Serial.print(F("\x1B[2J")); delay (100);
}

void set_cursor (uint8_t _row, uint8_t _column) // установить курсор ESC[row;columnH (1B 5B row 3B column 48)
{
Serial.print(F("\x1B[") + String(_row) + ";" + String(_column) + "H");
}

void print_on_VFD(uint8_t _row, uint8_t _column, const String& txtVFD) // Строка, колонка, текст
{
set_cursor(_row, _column); Serial.print(txtVFD);
}

void print_on_VFDa(uint8_t _row, const String& txtVFD, String what) // Строка, текст, чем забиваем пустоту
{
String utf8_cp866 = UTF8_CP866(txtVFD);
int iii = NUMofCOL - utf8_cp866.length();
if (iii > 0)
{
int left = (iii) / 2;
while (left--) utf8_cp866 = what + utf8_cp866;
while (utf8_cp866.length() < NUMofCOL) utf8_cp866 = utf8_cp866 + what;
}
else
{
utf8_cp866 = utf8_cp866.substring(0, NUMofCOL); // берем с "нулевого" до размера экрана
}
set_cursor(_row, 1); Serial.print(utf8_cp866);
}

void write_on_VFD(uint8_t _row, uint8_t _column, int16_t symbolVFD) // Строка, колонка, текст
{
set_cursor(_row, _column); Serial.write(symbolVFD);
}

String UTF8_CP866(const String& txtVFD)
{
char out[NUMofCOL]; // создали массив символов для вывода
int j=-1;

for (int i=0; i < txtVFD.length() + 1; i++) //-- Пробегаемся по всем символам, учитываем отличия между таблицами
{
j++;
if (txtVFD==0xd0) // коды русских букв все двухбайтовые, первым из которых является 0xd0 (208) или 0xd1 (209)
{
i++; // следующий конвертим
if (txtVFD >= 0x90 && txtVFD <= 0xBF) out[j] = txtVFD - 0x10;
else if(txtVFD == 0x81) out[j] = 0xf0; // буква Ё
}
else if (txtVFD==0xd1)
{
i++; // следующий конвертим
if (txtVFD >= 0x80 && txtVFD <= 0x8F) out[j] = txtVFD + 0x60;
else if(txtVFD == 0x91) out[j] = 0xf1; // буква ё
}
else out[j] = txtVFD[i];
}
return out;
}

void init_VFDser()
{
Serial.begin(9600, SERIAL_8O1, SERIAL_TX_ONLY, 1, true);
Serial.swap(); //Пины переместятся на GPIO15/D8 (TX) и GPIO13/D7 (RX)
Serial.flush();
analogWriteFreq(5000);
analogWrite(BK_pin, 250 - analogRead(A0)/7); // Яркость
CLS();
Set_country_code(0x35);
print_on_VFDa(1, F("Загружается версия"), " ");
print_on_VFDa(2, nSketch, " ");
delay(1000);
}
#endif
Ответить

Вернуться в «Ищу...»