[an error occurred while processing this directive]
А причем здесь, собственно, язык С? (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Peter K. 27 ноября 2002 г. 07:10
В ответ на: ? К знатокам С, хелп плиз. Как сделать перекодировку русских фонтов для ЖКИ? отправлено Новичок в С 27 ноября 2002 г. 06:41

Если имеются ввиду LCD дисплеи типа PC1602 и подобные, то какие-то процедуры перекодировки это лишняя трата времени и памяти программ. У меня сделано так:

// Соответствие символов и кодов индикатора

// Русские символы большие
#define AA 0x41
#define BB 0xa0
#define VV 0x42
#define GG 0xa1
#define DD 0xe0
#define EE 0x45
#define YO 0xa2
#define ZH 0xa3
#define ZZ 0xa4
#define II 0xa5
#define JJ 0xa6
#define KK 0x4b
#define LL 0xa7
#define MM 0x4d
#define NN 0x48
#define OO 0x4f
#define PP 0xa8
#define RR 0x50
#define SS 0x43
#define TT 0x54
#define UU 0xa9
#define FF 0xaa
#define HH 0x58
#define TS 0xe1
#define CH 0xab
#define SH 0xac
#define SHCH 0xe2
#define TZ 0xad
#define YI 0xae
#define MZ 0x62
#define EA 0xaf
#define YU 0xb0
#define YA 0xb1

// Русские символы малые

#define aa 0x61
#define bb 0xb2
#define vv 0xb3
#define gg 0xb4
#define dd 0xe3
#define ee 0x65
#define yo 0xb5
#define zh 0xb6
#define zz 0xb7
#define ii 0xb8
#define jj 0xb9
#define kk 0xba
#define ll 0xbb
#define mm 0xbc
#define nn 0xbd
#define oo 0x6f
#define pp 0xbe
#define rr 0x70
#define ss 0x63
#define tt 0xbf
#define uu 0x79
#define ff 0xe4
#define hh 0x78
#define ts 0xe5
#define ch 0xc0
#define sh 0xc1
#define shch 0xe6
#define tz 0xc2
#define yi 0xc3
#define mz 0xc4
#define ea 0xc5
#define yu 0xc6
#define ya 0xc7

//пробел
#define SPC 0x20

//стрелки
#define arr_up 0xd9
#define arr_dwn 0xda


Строки задаю так:
из английских символов
const char sSetup[] = {'S', 'e', 't', 'u', 'p', ':', SPC, SPC, 0};

из русских символов
const char sObormot[] = {OO, bb, oo, rr, mm, oo, tt, SPC, 0};


Тот же принцип и для варианта программы на ассемблере.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru