Сообщение от viknik8
|
Как это объяснить не заю.
|
"Заю, заю" - зайка моя!!! Ш
ютка. Всё-таки надо когда-нибудь проявлять и в
Ынимательность при чтении даташитов. Дело в том, что кодовая таблица русифицированного стандартного HD44780 (Seiko, Epson, Hitachi, Samsung) строго одна. В
МЭЛТ-овских знаковых ЖКИ применен контроллер
КБ1013ВГ6 (Российский "Ангстрем"). Он, в общем-то, полностью аналогичен HD44780 или Самсунговскому KS0066U, но(!!!). Тута наши производители впервые пошли дальше, чем первоисточник. Обратите внимание на команду
Function Set. В оригинальных контроллерах бит DB1 в этой команде вообще не задействован и команда определяет только тип интерфейса (8/4 разрядов -
DL - бит DB4), число строк (2/1 -
N - бит DB3) и матрицу (5x7 / 5х10 точек -
F - бит DB2). На этом всё!
У ангстремовского контроллера в расширенном варианте имеется еще управление кодовой страницей (страница 1/2 бит DB1) и инверсия дисплея (бит DB0). Даташиты я выкладывал в
FAQ п.8.14 можете сравнить самостоятельно. Вариант для России у Ангстрема и МЭЛТ - кодировка
S03 - две отличающиеся страницы. Ну и обратите внимание на даташит своего дисплея -
http://www.melt.com.ru/docs/MT-10S1.pdf - там тоже две кодовые страницы, отличающиеся друг от друга, и обе с русским шрифтом. Страница 0 (по умолчанию) использует кодировку совпадающую со стандартной русифицированной HD44780, а вторая страница - отличается. Делайте выводы, а точнее смотрите то, что Вы используете в Протеусе. Так что сам Протеус здесь ни при чем, что Вы заложите утилитой
charset.exe в LCDALFARUS.DLL - то он Вам и выдаст.
Сразу предупреждаю, что использовать обе страницы и переключение битом DB1 в Протеусе не получится, что-нибудь одно. В
шелезяке можете изголяться по полной программе с обеими страницами.
ЗЫ Кстати, Тени стоило бы помыслить над тем, что кодовые страницы могут переключаться "на лету". Пора бы уже и доработать LCDALFA.DLL. Про символьные ЖК уж ладно, устарело, но сейчас стали очень популярны OLED c аналогичными HD44780 контроллерами. Так вот там в команде
Function Set биты DB1 и DB0 позиционируются как FT1 и FT0 (Font Table) и позволяют переключать целых 4 кодовых страницы, в т.ч. и русифицированнную.
Вот, например, у Winstar контроллер WS0010, аналогичный используют и другие "братья наши многочисленные" -
Newhaven Display,
Raystar Optronics. Inc. Наверное и родину Протеуса - United Kingdom они тоже не обошли вниманием. Может есть смысл доработать модель для универсальности?