Перейти к содержанию
    

Вывод на индикатор русских шрифтов

Господа подскажите как правильно организовать вывод на ЖКИ индикатор русских шрифтов.

MPLAB 8.30 + Hi-Tech pic 9.83

Записываю строковую константу в память программ

const char Neim[ ] ="Привет";

В программе вывожу через sprintf(buff, Neim);

На индикаторе все появляется прекрасно, но компилятор ругается

выдает предупреждение illegal character.

Неприятно плевать на предупреждения компилятора.

(В компиляторе 9.82 тоже самое)

Спасибо! Прошу прощения если чего плохо сформулировал желающие могут по пинать я необидчив.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хм, любопытно.

Вы хотите сказать, что если пишете

const char Neim[ ] ="Привет";

то видите предупреждение от компилятора, а если напишете

const char Neim[ ] ="Privet";

то предупреждения нет ?

 

Ну и приведите пожалуйста полный текст варнинга. обычно эта строка еще что-то содержит кроме двух указанных слов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Раньше в компиляторе 9.60

Спасала такая конструкция:

const char Naim[ ] = {''Привет"};

Это не совсем правильно но компилятор не ругался и все проходило

Новый компил ругается и на эту конструкцию.

 

Warning [228] D:\Pic\C\Pellet_Now_N\Pellet V5_0.c; 140.21 illegal character (0xEF)

0хEF это маленькая буква п са мо слово там начиналось с нее.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

достал старый проект, добавил вашу строку, не вижу никаких предупреждений

post-15025-1332834283_thumb.png

 

Как видно из картинки, оно скомпилировалось и размещено в памяти. Ну а что мплаб не отображает кириллицу правильно- это другой вопрос.

 

Сам очень редко кириллицу использую, но что помню- плохо например пикад реагировал на "я" в тексте, да и кажется с ИАРом была такая же заморочка. но чтобы на пустом месте варнинг- это странно.

Хотя, с другой стороны, это может быть настраиваемо в компиляторе, и у Вашей версии дефолтовые настройки другие чем у меня. Например, стандартно классический Си может с подозрением воспринимать любой символ из верхней половины таблицы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

… illegal character (0xEF) … 0хEF это маленькая буква п

Возможно это из-за того, что если в начале текста есть сигнатура 0xEF 0xBB 0xBF, то этот текст в формате UTF-8 (Unicode).

Компилятор ругается на любую кириллицу или только на 0хEF (в первом байте) ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да ругается на любую кириллицу даже если вначале идет латиница то он ругнется на первую встреченную букву кириллици

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Warning [228] D:\Pic\C\Pellet_Now_N\Pellet V5_0.c; 140.21 illegal character (0xEF)

0хEF это маленькая буква п са мо слово там начиналось с нее.

Будьте любезны, приведите строку исходника и строку варнинга при компиляции ЭТОЙ ПРИВЕДЕННОЙ строки исходника.

 

а может, уши из другого места растут. например, прагма какая-нибудь в исходнике. Повторюсь, на 9.51 ничего подобного не наблюдается.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Незнаю как в вашей студии, но для себя я давно сделал транслятор кодов русских символов в коды понятные LCD на базе HD44780 и вывожу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Действительно интересно что это может быть

 

компиляция в 9.60 проблем нет

а в 9.83 выдает предупреждение

post-3260-1332936317_thumb.jpg

post-3260-1332936345_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...