Я делаю так:
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено ROMSERVICE 18 марта 2003 г. 00:54
В ответ на: кто делал/как лучше сделать многоязыковую поддержку на LCD ? отправлено Romario 17 марта 2003 г. 21:27

У нас в программаторе AutoProg интерфейс индикатора двуязычный. Там реализовано, примерно как у Вас во втором варианте, только на ассемблере:
я придумал свой формат сообщений: первый байт - длина английского текста, далее - сам англ. текст, затем - русский. Выглядит это примерно так:

TXT_Bad_chip: MESSAGE `Bad\R`chip , `Микросхема\R`неисправна

` - это у меня приказ подпрограмме вывода в индикатор центрировать текст,
\R - перевод строки,
_ - пробел (иначе макрос в RIDE не понимает)

Макрос MESSAGE делает из этого:

0B 0F 42 61 64 0D 0F 63 68 69 70 00 0F 4D B8 BA
70 6F 63 78 65 BC 61 0D 0F BD 65 B8 63 BE 70 61
B3 BD 61 00

Русские буквы здесь уже в кодировке индикатора на HD44780.

А подпрограмма вывода сообщения PRINT, в зависимости от состояния бита RUS, выводит то или другое, отрабатывает центровку и пр. функции:

MOV DPTR,#TXT_Bad_chip
CALL PRINT

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru