реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Вывод на индикатор русских шрифтов
Andrey_M
сообщение Mar 27 2012, 06:55
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 56
Регистрация: 11-03-05
Из: Подмосковье
Пользователь №: 3 260



Господа подскажите как правильно организовать вывод на ЖКИ индикатор русских шрифтов.
MPLAB 8.30 + Hi-Tech pic 9.83
Записываю строковую константу в память программ
const char Neim[ ] ="Привет";
В программе вывожу через sprintf(buff, Neim);
На индикаторе все появляется прекрасно, но компилятор ругается
выдает предупреждение illegal character.
Неприятно плевать на предупреждения компилятора.
(В компиляторе 9.82 тоже самое)
Спасибо! Прошу прощения если чего плохо сформулировал желающие могут по пинать я необидчив.
Go to the top of the page
 
+Quote Post
Ruslan1
сообщение Mar 27 2012, 07:24
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



Хм, любопытно.
Вы хотите сказать, что если пишете
Код
const char Neim[ ] ="Привет";

то видите предупреждение от компилятора, а если напишете
Код
const char Neim[ ] ="Privet";

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

Ну и приведите пожалуйста полный текст варнинга. обычно эта строка еще что-то содержит кроме двух указанных слов.
Go to the top of the page
 
+Quote Post
Andrey_M
сообщение Mar 27 2012, 07:25
Сообщение #3


Участник
*

Группа: Свой
Сообщений: 56
Регистрация: 11-03-05
Из: Подмосковье
Пользователь №: 3 260



Да это именно так
Go to the top of the page
 
+Quote Post
Ruslan1
сообщение Mar 27 2012, 07:28
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



Цитата(Andrey_M @ Mar 27 2012, 10:25) *
Да это именно так

полный текст строки варнинга?
Go to the top of the page
 
+Quote Post
Andrey_M
сообщение Mar 27 2012, 07:33
Сообщение #5


Участник
*

Группа: Свой
Сообщений: 56
Регистрация: 11-03-05
Из: Подмосковье
Пользователь №: 3 260



Раньше в компиляторе 9.60
Спасала такая конструкция:
const char Naim[ ] = {''Привет"};
Это не совсем правильно но компилятор не ругался и все проходило
Новый компил ругается и на эту конструкцию.

Warning [228] D:\Pic\C\Pellet_Now_N\Pellet V5_0.c; 140.21 illegal character (0xEF)
0хEF это маленькая буква п са мо слово там начиналось с нее.
Go to the top of the page
 
+Quote Post
Ruslan1
сообщение Mar 27 2012, 07:52
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



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


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

Сам очень редко кириллицу использую, но что помню- плохо например пикад реагировал на "я" в тексте, да и кажется с ИАРом была такая же заморочка. но чтобы на пустом месте варнинг- это странно.
Хотя, с другой стороны, это может быть настраиваемо в компиляторе, и у Вашей версии дефолтовые настройки другие чем у меня. Например, стандартно классический Си может с подозрением воспринимать любой символ из верхней половины таблицы.
Go to the top of the page
 
+Quote Post
ae_
сообщение Mar 27 2012, 16:16
Сообщение #7


Участник
***

Группа: Свой
Сообщений: 462
Регистрация: 2-04-07
Из: Иркутск
Пользователь №: 26 695



Цитата(Andrey_M @ Mar 27 2012, 16:33) *
… illegal character (0xEF) … 0хEF это маленькая буква п

Возможно это из-за того, что если в начале текста есть сигнатура 0xEF 0xBB 0xBF, то этот текст в формате UTF-8 (Unicode).
Компилятор ругается на любую кириллицу или только на 0хEF (в первом байте) ?
Go to the top of the page
 
+Quote Post
Andrey_M
сообщение Mar 27 2012, 18:33
Сообщение #8


Участник
*

Группа: Свой
Сообщений: 56
Регистрация: 11-03-05
Из: Подмосковье
Пользователь №: 3 260



Да ругается на любую кириллицу даже если вначале идет латиница то он ругнется на первую встреченную букву кириллици
Go to the top of the page
 
+Quote Post
Ruslan1
сообщение Mar 27 2012, 19:01
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



Цитата(Andrey_M @ Mar 27 2012, 10:33) *
Warning [228] D:\Pic\C\Pellet_Now_N\Pellet V5_0.c; 140.21 illegal character (0xEF)
0хEF это маленькая буква п са мо слово там начиналось с нее.

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

а может, уши из другого места растут. например, прагма какая-нибудь в исходнике. Повторюсь, на 9.51 ничего подобного не наблюдается.
Go to the top of the page
 
+Quote Post
Слесарь
сообщение Mar 27 2012, 21:22
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 884
Регистрация: 7-11-09
Из: Ростовская обл.
Пользователь №: 53 484



Незнаю как в вашей студии, но для себя я давно сделал транслятор кодов русских символов в коды понятные LCD на базе HD44780 и вывожу.
Go to the top of the page
 
+Quote Post
Andrey_M
сообщение Mar 28 2012, 12:12
Сообщение #11


Участник
*

Группа: Свой
Сообщений: 56
Регистрация: 11-03-05
Из: Подмосковье
Пользователь №: 3 260



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

компиляция в 9.60 проблем нет
а в 9.83 выдает предупреждение
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 21:33
Рейтинг@Mail.ru


Страница сгенерированна за 0.01425 секунд с 7
ELECTRONIX ©2004-2016