Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 31.12.2007, 01:08  
orc127
Прохожий
 
Регистрация: 15.04.2005
Сообщений: 7
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
orc127 на пути к лучшему
По умолчанию

На абсолютность не претендую, но у меня это работает... и в протеусе, и на железяке.
Реклама:
orc127 вне форума  
Непрочитано 10.10.2008, 23:27  
Solncevorot
Частый гость
 
Регистрация: 15.08.2006
Сообщений: 23
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Solncevorot на пути к лучшему
По умолчанию Ну а у кого есть???

У кого есть эта самая программа lcd20.exe ????
Почему вопрос о выводе русского текста на LCD оставили нерешенным? Не пойму...

Программку, если можно, перевыложите куда-нибудь, буду очень благодарен.
Solncevorot вне форума  
Непрочитано 11.10.2008, 02:04  
Halex07
Супер-модератор
 
Аватар для Halex07
 
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
Halex07 на пути к лучшему
По умолчанию

Потому что в соответствии с темой ветки вот этот вариант от mrKirill со второй страницы
Код:
#pragma rl+ 
lcd_putsf ("Русский текст"); 
#pragma rl-
до версии 1.25.9 включительно работал железно (см. картинку)
и только во вторых версиях CAVR был похоронен П.Гайдуком, резко невлюбившим русских хакеров.
Да и LCD20 до недавнего времени жила по ссылке. Вот нашел ее в своей помойке, приложил.

-- Прилагается рисунок: --

Прикрепленный файл: 4338791.rar
Halex07 вне форума  
Сказали "Спасибо" Halex07
Fenix88 (30.09.2010)
Непрочитано 11.10.2008, 12:52  
Solncevorot
Частый гость
 
Регистрация: 15.08.2006
Сообщений: 23
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Solncevorot на пути к лучшему
По умолчанию

Цитата:
Потому что в соответствии с темой ветки вот этот вариант от mrKirill со второй страницы
Код:
#pragma rl+ 
lcd_putsf ("Русский текст"); 
#pragma rl-
до версии 1.25.9 включительно работал железно (см. картинку)
Спасибо за программку. Большое спасибо.
А на счет прагмы - у меня не получилось. Версия 1.25.5 строчку прагмы помечает ошибкой. А все дело в том, что на другом форуме написали неправильную прагму, а именно:
Код:
                ВНИМАНИЕ! НЕПРАВИЛЬНЫЙ КОД!
#pragma ruslcd+ 
lcd_putsf ("Русский текст"); 
#pragma ruslcd-
Конечно, она не работала...
Сейчас переделал, и все стало на свои места.
Еще раз спасибо.

Еще хотел вот что спросить, что такое #pragma ? Может быть ее можно перетащить в более поздние версии CVAVR?

-- Прилагается рисунок: --

Прикрепленный файл: 4338791.rar
Solncevorot вне форума  
Непрочитано 11.10.2008, 20:12  
Halex07
Супер-модератор
 
Аватар для Halex07
 
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
Halex07 на пути к лучшему
По умолчанию

Сообщение от Solncevorot
Еще хотел вот что спросить, что такое #pragma ? Может быть ее можно перетащить в более поздние версии CVAVR?
Дословный перевод самим машинным переводчиком Pragma (есть такой компании Трайдент) - псевдокоментарий.

Это директива препроцессора, которая реализует возможности компилятора.Разные версии компиляторов могут иметь различные прапмы. Список доступных обычно в Helpe.
Открываем раздел хелпа The Preprocessor и любуемся на них с примерами применения. Но иногда разработчики ПО лукавят и оставляют кое-что для "домашнего" применения. Та же #pragma rl в хелпе 1.25.х не описана, но работает. Кстати Гайдук не один CAVR слепил, там и "наши" люди помогали. Возможно поэтому она там и была до поры - до времени. А перетащить самому ... это не библиотека, она встроена в компилятор, т.е. в исполняемый файл. Надо ждать пока легальные пользователи кириллического шрифта допекут разработчика и он добавит ее в новую версию.
Halex07 вне форума  
Непрочитано 12.10.2008, 01:04  
Solncevorot
Частый гость
 
Регистрация: 15.08.2006
Сообщений: 23
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Solncevorot на пути к лучшему
По умолчанию

Halex07
Кстати, да, в help`е я нашу прагму не нашел, то-то было удивление.
Видел в инете еще один совет как сделать отображение русских текстов на жки возможным, но он, как оказалось, был ложным. Советовали подправить библиотеку lcd.lib , а конкретно, заменить строку
_lcd_write_data(0x2;
на:
_lcd_write_data(0x2A);

Это оказалась чушь. Во всяком случае, у меня на CVAVR не сработало, да и выглядит совет, мягко говоря, неубедительно.

А в чем же прелесть этой самой прагмы? Почему бы не сделать простой #include?
Или прагма - это попытка защитить некоторое хитрое решение задачи от копирования сторонними разработчиками?

Еще есть вопросик.
Если возникнет надобность использовать, все-таки, новую версию CVAVR, как можно реализовать там вывод русских слов на жки?
Вывод отдельных символов - это понятно.
Код:
flash char Decode2Rus[255-192+1]= { 
0x41,0xA0,0x42,0xA1,0xE0,0x45,0xA3,0xA4,
0xA5,0xA6,0x4B,0xA7,0x4D,0x48,0x4F,0xA8,
0x50,0x43,0x54,0xA9,0xAA,0x58,0xE1,0xAB,
0xAC,0xE2,0xAD,0xAE,0xAD,0xAF,0xB0,0xB1,
0x61,0xB2,0xB3,0xB4,0xE3,0x65,0xB6,0xB7,
0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0x6F,0xBE,
0x70,0x63,0xBF,0x79,0xE4,0x78,0xE5,0xC0,
0xC1,0xE6,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7 };

#define _ALTERNATE_PUTCHAR_
void putchar(char c)
{                                          
if(c›=192)
lcd_putchar(Decode2Rus[c-192]); 
else lcd_putchar(c);                      
}
// а в программе так:
putchar('Ж');
А как на счет целых слов?
И вообще, в каком типе переменных можно хранить целое слово? Это что-то типа массива должно быть?
Solncevorot вне форума  
Непрочитано 12.10.2008, 12:25  
avr123-nm-ru
Почётный гражданин KAZUS.RU
 
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
avr123-nm-ru на пути к лучшему
По умолчанию

Сообщение от Solncevorot
в каком типе переменных можно хранить целое слово? Это что-то типа массива должно быть?
Строковые переменный - http://avr123.nm.ru/05a.htm
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
avr123-nm-ru вне форума  
Непрочитано 12.10.2008, 12:33  
Solncevorot
Частый гость
 
Регистрация: 15.08.2006
Сообщений: 23
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Solncevorot на пути к лучшему
По умолчанию

Сообщение от avr123-nm-ru
Сообщение от Solncevorot
в каком типе переменных можно хранить целое слово? Это что-то типа массива должно быть?
Строковые переменный - http://avr123.nm.ru/05a.htm
Спасибо. А если содержание строковой переменной заранее неизвестно, то в квадратных скобках не ставится количество элементов, так?
А если я хочу вывести на LCD содержание строковой переменной, то как мне не вывести ноль, который, как у вас на сайте написано, дописывается в конце каждой строки?
Solncevorot вне форума  
Непрочитано 12.10.2008, 15:07  
urry
Почётный гражданин KAZUS.RU
 
Аватар для urry
 
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 106 раз(а) в 66 сообщении(ях)
urry на пути к лучшему
По умолчанию

Код:
unsigned char array[]={'1','2',0};
unsigned x=0;
do{
 out=array[x];
 x++;
}(while (!array[x]);
Аль через указатели
Код:
void out_str(unsigned char *str)
{
do{
 out=*str;
 str++;
}(while (!*str);
urry вне форума  
Непрочитано 12.10.2008, 15:18  
Solncevorot
Частый гость
 
Регистрация: 15.08.2006
Сообщений: 23
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Solncevorot на пути к лучшему
По умолчанию

urry
Ну хорошо, а если в конце слова должен быть ноль, например, petya0, то как тогда?
А можно каким-то образом из переменного массива узнать кол-во его элементов?
Solncevorot вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
CodeVisionAVR, LCD + русские буквы jogick Микроконтроллеры, АЦП, память и т.д 8 05.07.2009 12:47
как вывести буквы на дисплей andron-kip Микроконтроллеры, АЦП, память и т.д 4 27.10.2008 00:28
подскажите как вывести значение ацп на индикатор ctefan Микроконтроллеры, АЦП, память и т.д 13 06.04.2007 10:59
как вывести на LCD данные из буфера? goooblin Микроконтроллеры, АЦП, память и т.д 11 02.04.2007 10:01
Как вывести из ступора DS1307? Muzicant Микроконтроллеры, АЦП, память и т.д 4 09.10.2006 19:28


Часовой пояс GMT +4, время: 18:53.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot