В том и цимус и мистика
VFD.write(248);
VFD.write('C');
эта конструкция выводит знак градуса и буквы "С" (ну с ней совсем все просто),
а эта: VFD.print("\248") - нет
и эта VFD.print('\248') - нет
если работать не с объектом класса, а просто с софтпортом, то результат тот же.
хотя, работа с кодами, так уж получилось, в моей реализации текстовых часов основная и это точно рабочая конструкция
вот, например дни недели
char* dayName[]={
"\202\216\221\212\220\205\221\205\215\234\205", // воскресенье - 0
"\217\216\215\205\204\205\213\234\215\210\212", // понедельник - 1
"\202\222\216\220\215\210\212", // вторник - 2
"\221\220\205\204\200", // среда - 3
"\227\205\222\202\205\220\203", // четверг - 4
"\217\237\222\215\210\226\200", // пятница - 5
"\221\223\201\201\216\222\200" // суббота - 6
}
и они выводятся функцией print.
print при выводе строки добавляет в нее признак окончания строки, скорее всего пара символов градус + окончание строки является служебной или "глючной", оттого и странный косяк. Но выход есть, градус можно выводить через write.
Пока "огорчает" что не получилось используя команды записи пользовательских символов от от кода с пакманом, что-то записать. Это следующая задачка.
Добавлено after 17 minutes 3 seconds:OlegRu писал(а):а через printf нет.
Вот так попробуй - в стиле библиотеки с гит хаба ..
sprintf (buffer, "you have %d hours to come to me",time);
VFD.print (buffer)
Сам не пробовал, но думаю должно прокатить..
char* buffer;
sprintf (buffer, "%c C", 248);
VFD.print (buffer);
выдает пустоту. ну да ладно, решение есть, хоть и не изящное