В строковой константе все видно нормально, а при выводе на терминалку через последовательный порт - латиница нормальная, а вместо кириллицы - закорючки. Не говоря уже об LCD. В других компилляторах пользовался самодельными программами для LCD, с перекодированием, а как красивее сделать для CV? C терминалками проблем вообще не было.
Начиная с CVAVR1.24.4
#pragma rl+
lcd_putsf ("Русский текст")
#pragma rl-
Большое спасибо, помогло! А терминалке у меня был выставлен фонт в кодировке OEM/DOS. При установке фонта в кодировку cyrillic всё стало отображаться правильно.
ksinet
Jun 10 2005, 07:40
Цитата(rmo @ Jun 9 2005, 14:13)
Начиная с CVAVR1.24.4
#pragma rl+
lcd_putsf ("Русский текст")
#pragma rl-
Это конечно хорошо, что есть встроеный перекодировщик.
Но почему а хелпе про эту возможность ничего не сказано?
Какие еще есть скрытые возможности в этом компиляторе?
Цитата(rmo @ Jun 9 2005, 14:13)
Начиная с CVAVR1.24.4
#pragma rl+
lcd_putsf ("Русский текст")
#pragma rl-
Насчет строковых констант все ясно, а как быть с символьными константами типа 'Ш' или 'Ю'?
В смысле
lcd_putchar ('Ш');
?
Цитата(rmo @ Jun 11 2005, 12:56)
В смысле
lcd_putchar ('Ш');
?
Так получается закорючка.
Правильно проходит только прямое указание ASCII кода
lcd_putchar (0xAC);
Действительно,
#pragma rl+
lcd_putchar ('Ш');
#pragma rl-
не работает.
Видимо внутренний перекодировщик обслуживает не все функции.
Точно работают (использую) lcd_putsf (), sprintf ().
#include <stdio.h>
unsigned char lcd_buf[21];
#pragma rl+
lcd_putsf ("Привет");
sprintf (lcd_buf,"Напряжение = %umV",50); // Напряжение = 50mV
#pragma rl-
lcd_gotoxy (0,1);
lcd_puts (lcd_buf);
При выводе символа можно сделать так:
#pragma rl+
lcd_putsf ("Ш");
#pragma rl-
tscheglow
Feb 14 2007, 14:31
Цитата(rmo @ Jun 14 2005, 04:17)

Действительно,
#pragma rl+
lcd_putchar ('Привет');
#pragma rl-
пробую Codevision - пока нравится все больше и больше, особенно уже готовые фишки вроде выше описанной... а нет ли у кого русского описания на библиотеки его, а то чую - много делаю из того что уже сделано
carmaster
Mar 9 2007, 03:46
а я пользовался программой перекодировки- вбиваешь в компилятор закорючки , на lcd получается нормальный текст
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.