|
Atmega 48 , 1284P и индикация, Требуются идеи |
|
|
|
Jul 28 2011, 09:42
|

Профессионал
    
Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339

|
Всем , добрейшего .... (утра, дня, вечера)!!! Вот поимел гемморой.... Прикупил в МЕЛТ индикатор MT-20S4S, дабы соединить его с 48-ой и по RS485 c мастером на 1284P Ну что это за индикатор и какие "подводные камешки" встретятся при его использовании, можно почитать из небольшой и длительной переписки с заводом http://www.melt.com.ru/forum/zhk-indikator...t-20s4s-28.htmlЗадача состоит в следующем , 1284Р передаёт информацию , которую выводит в данный момент на свой ЖК , 48-ой ( метров ~ 100-150 - уточняется положение дублёра) повторяет эту инфу на MT-20S4S. И вот тут всё и началось - MT-20S4S не понимает кодировку Windows для русских букв, к тому же русский алфавит не полный. Все буквы имеющие одинаковое написание в английском - удалены ( например С М Н О и т.д.) и разбросаны оба алфавита по разным страницам ROM т.е что бы написать ПАПА надо ещё попереключать страницы командами. Хотел передавать сразу ASCII коды 48-ой , что бы не заморачивать ее своей подпрограммой пееревода. С цифрами и с англ. буковками проблем нет, в этой части у них полное взаимопониманиие, а вот с русскими ....ец - голову сломал. Мои мысли- надо передать префикс - пошли русские , их количество, и их коды , но тогда это надо подзагрузить мастера 1284-ю , дабы она знала кокой код соотвествут букве П для 20S4S - что тоже нефильтикультяпистто. Может , кто уже делал типа такого - поделитесь мыслями
--------------------
Закон Мерфи:
Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
|
|
|
|
|
 |
Ответов
(1 - 4)
|
Jul 28 2011, 10:19
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Ничего не понял, то, что учудили и гонят ориентированный под японскую слоговую азбуку знакогенератор, с русскими буквами на второй странице, это конечно фигово. Но остальные, если пооблемы, если хватает одной, например, WIN кодовой таблицы непонятны. Банальная таблица перекодировки старшей половины кодовой таблицы а которой старший бит отвечает за то, какая из двух кодовых таблиц используется, ну а младшие соответственно буква. Соответственно никаких проблем с "пошли русские , их количество, и их коды"
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Jul 28 2011, 10:36
|

Профессионал
    
Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339

|
Цитата(zltigo @ Jul 28 2011, 14:19)  Ничего не понял, то, что учудили и гонят ориентированный под японскую слоговую азбуку знакогенератор, с русскими буквами на второй странице, это конечно фигово. Но остальные, если пооблемы, если хватает одной, например, WIN кодовой таблицы непонятны. Банальная таблица перекодировки старшей половины кодовой таблицы а которой старший бит отвечает за то, какая из двух кодовых таблиц используется, ну а младшие соответственно буква. Соответственно никаких проблем с "пошли русские , их количество, и их коды" Т.е если я всё правильно понял , Вы предлагаете воспользоваться тем , что в коде русских букв всегда присутствует единица в старшем разряде, а для мастера сделать таблицу перекодировки для 20S4S? Спасибо!!!!!
--------------------
Закон Мерфи:
Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
|
|
|
|
|
Jul 28 2011, 16:30
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
QUOTE (ILYAUL @ Jul 28 2011, 13:36)  Т.е если я всё правильно понял , Вы предлагаете воспользоваться тем , что в коде русских букв всегда присутствует единица в старшем разряде, а для мастера сделать таблицу перекодировки для 20S4S? Спасибо!!!!! Опять я не совсем понял  . 1. Тот, кто получает для отображения байтики получает их, например, в Win кодировке. 2. Отобразитель всегда смотрит текущее состояние кодовой страницы, если для полученного символа нужна другая кодовая таблица, то переключает. 3. Все символы с кодом < 0x80 требуют младшей кодовой страницы и отображаются без перекодировки но при необходимости меняется текущаяя кодовая страница. 4. Все символы с кодом >=0x80 берутся из 128 байтной ( 7 младших бит )таблицы перекодировки. 5. Если из таблицы перекодировки получен символ <= 0x7F, то он считается принадлежащим младшей кодовой странице ( см. п2 ). 6. Если из таблицы перекодировки получен символ >= 0x80, то он считается принадлежащим старшей кодовой странице ( см. п2 ).
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|