Добрый день. Столкнулся с такой проблемой, что при размещении данных во флеш-памяти, символы кириллицы конвертируются в неизвестную мне кодировку независимо от того, какая кодировка выбрана в настройках проекта. В данный момент у меня выбрана кодировка Windows-1251. Есть массив
Код:
|
rom const byte MainMenu[17] = " ОСНОВНОЕ МЕНЮ "; |
Но когда он доходит до функции
Код:
|
Converter(StartPos,(void*)MainMenu, 16); |
то вместо русских символов там содержится ерунда. То же самое, когда пытаюсь в функцию явно передать в виде параметра строку
Код:
|
Converter(StartPos,"*ОСНОВНОЕ МЕНЮ*", 16);
void Converter (byte adr, const rom char *screen, byte size)
{
byte newScr[33], i = 0, pos = StartPos;
char a = 0;
for (i = 0; i ‹ size; i++)
{
a = screen[i];
if ((screen[i] ›= 128) && (screen[i] ‹= 137))
{
flBlink = 1;
pos += i;
}
newScr[i] = tableLCD[screen[i]];
}
viewStr(adr, (void*)newScr, size);
if (flBlink == 1) { Blink(); positionLCD(pos); flBlink = 0; }
else { NoBlink(); pos = StartPos; }
} |
Подскажите, пожалуйста, может быть где-то в настройках самого компилятора еще можно выставить кодировку?