AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR... |
22.03.2021, 20:27
|
|
Почётный гражданин KAZUS.RU
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,508
Сказал спасибо: 401
Сказали Спасибо 2,218 раз(а) в 1,316 сообщении(ях)
|
Re: Перекодировщик кириллицы для LCD
Да это то понятно. Мы, чай, тоже не лаптем щи хлебаем дисплей-двустрочник 1602 - это вообще наверно первый (после семисегментников) дисплей у многих, кто начинал изучать тему МК. И все человеки понимают, что в этом дисплее кодировка в части национального алфавита сделана ваапще через опу. Есть куча непонятных (для меня - до сих пор непонятных) символов, которые впустую заняли место, предназначенное под русские буквы.
Так вот. Текстовый редактор в IDE использует кодировку в основном CP1251 (но может быть и другую!). Вот как раз про эту кодировку, кодировку из которой будет преобразовываться в кодировку дисплея, и спрашивают местные граждане.
|
|
|
|
22.03.2021, 23:29
|
|
Почётный гражданин KAZUS.RU
Регистрация: 14.11.2008
Адрес: Литва
Сообщений: 1,914
Сказал спасибо: 536
Сказали Спасибо 1,829 раз(а) в 824 сообщении(ях)
|
Re: Перекодировщик кириллицы для LCD
В своей разработке зарядного устройства использовал обыкновенный дисплей 1602, в котором нет кириллицы. Сам дисплей содержит буферное ОЗУ на 8 знаков, в которое можно программно заложить свои символы и выводить на экран дисплея.
В программе FlowCode сделал свою прошивку для контроллера PIC16F873A, в программе создал свои буквы кириллицы и вывожу их на экран дисплея, в котором изначально кириллица отсутствует.
|
|
|
|
23.03.2021, 00:16
|
|
Почётный гражданин KAZUS.RU
Регистрация: 15.11.2010
Сообщений: 2,378
Сказал спасибо: 338
Сказали Спасибо 328 раз(а) в 253 сообщении(ях)
|
Re: Перекодировщик кириллицы для LCD
Сообщение от NewWriter
|
дисплей-двустрочник 1602 - это вообще наверно первый (после семисегментников) дисплей у многих, кто начинал изучать тему МК.
|
меня как-то сразу на SSD1306 занесло... А для таких дисплеев лучшее, что есть - это LCD Image Converter.
Последний раз редактировалось parovoZZ; 23.03.2021 в 00:19.
|
|
|
|
23.03.2021, 12:35
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.01.2008
Адрес: Москва Щукино
Сообщений: 1,478
Сказал спасибо: 359
Сказали Спасибо 860 раз(а) в 361 сообщении(ях)
|
Re: Перекодировщик кириллицы для LCD
Сообщение от NewWriter
|
Текстовый редактор в IDE использует кодировку в основном CP1251 (но может быть и другую!).
|
А какие могут быть другие варианты? ДОС и КОИ-8 умерли. Русские буквы, насколько я понимаю, только в CP1251 и в юникоде. Какие IDE используют юникод? У меня блокнот иногда ругается при сохранении текста, взятого из Интернета через "копипаст", мол это юникод, что-то там потеряете. Тем не менее все правильно сохраняет. А больше я с ним не сталкивался.
То, что не является русскими буквами (латиницу и знаки препинания), кодировщик просто тупо перенесет один к одному, так что можно писать вперемешку.
Я ж говорил, что это абсолютно то же самое, что распространенный LCD20,exe, только без ошибки с буквой "Э". Если бы я мог ее исправить, то и не писал бы ничего.
|
|
|
|
23.03.2021, 12:56
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.01.2008
Адрес: Москва Щукино
Сообщений: 1,478
Сказал спасибо: 359
Сказали Спасибо 860 раз(а) в 361 сообщении(ях)
|
Re: Перекодировщик кириллицы для LCD
Сообщение от Shahabbas
|
... сделал свою прошивку для контроллера PIC16F873A
|
Наверное если бы я делал что-то серьезное, я бы так и поступил. Но мои одноразовые тяп-ляп поделки этого не требуют. Им достаточно Bascom-а и процессоров Atmel. Или Ардуино. И текста на английском. Просто в этот раз шлея под хвост попала: вот вынь да положь, хочу, чтобы по-русски аппарат изъяснялся.
Вот так это выглядит в программе:
Locate 1, 1
Lcd " *a¿apeÇ Kugoo" ' Батарея Kugoo
Locate 2, 1
Lcd "ºo½¿po»Ä pa·pÇãa" ' контроль разряда
Locate 3, 1
Lcd " Ha¶¼¸¿e 'c¿ap¿'" ' Нажмите 'старт'
Locate 4, 1
Lcd " À¿o²Ã ½aÀa¿Ä" ' чтобы начать
И так на дисплее:
Последний раз редактировалось spamkerdyk; 23.03.2021 в 13:08.
|
|
|
|
23.03.2021, 14:03
|
|
Почётный гражданин KAZUS.RU
Регистрация: 15.11.2010
Сообщений: 2,378
Сказал спасибо: 338
Сказали Спасибо 328 раз(а) в 253 сообщении(ях)
|
Re: Перекодировщик кириллицы для LCD
Сообщение от spamkerdyk
|
Какие IDE используют юникод?
|
Я все IDE перевожу на юникод, ибо гитхаб другое не воспринимает. Но там, где работа с перекодировкой для МК - там CP1251, ибо однобайтовый))
|
|
|
|
23.03.2021, 15:49
|
|
Прописка
Регистрация: 17.11.2009
Сообщений: 128
Сказал спасибо: 15
Сказали Спасибо 30 раз(а) в 16 сообщении(ях)
|
Re: Перекодировщик кириллицы для LCD
Исходный текст не обязательно ведь под IDE подстраивать (которое вообще может отсутствовать). Тут и другие критерии выбора могут быть. А когда нужно для LCD, то не обязательно такие каракули в тексте иметь, пусть и с комментариями. Перекодировщик обычно много места не занимает.
|
|
|
|
23.03.2021, 20:16
|
|
Почётный гражданин KAZUS.RU
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,508
Сказал спасибо: 401
Сказали Спасибо 2,218 раз(а) в 1,316 сообщении(ях)
|
Re: Перекодировщик кириллицы для LCD
Да, на перекодировщик "на лету" немного там тратится.
if(ch ›= 'А' /*русское*/ ) transcode_table[ch - 'А' /*русское*/ ]
и таблица перекодировки на 66 символов.
Ах, да, там еще два символа Ё и ё, у них код не по порядку.
|
|
|
|
25.03.2021, 12:55
|
|
Частый гость
Регистрация: 20.11.2011
Адрес: Казань
Сообщений: 36
Сказал спасибо: 65
Сказали Спасибо 13 раз(а) в 11 сообщении(ях)
|
Re: Перекодировщик кириллицы для LCD
Сообщение от spamkerdyk
|
А какие могут быть другие варианты?
...
Какие IDE используют юникод?
|
в KEIL можно использовать только UTF-8.
Все другие варианты приводят к кракозябрам. Вот такой он нарядный.
Для меня UTF-8 единственный выход - у меня интерфейс с 5 (пока что) языками.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 02:01.
|
|