ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
8 сентября
96400 Топик полностью
LordN (05.08.2007 20:57, просмотров: 1) ответил Dany на rezident? А можно пожалуйста поподробней, про свой putchar.
просто на сях эт примерно так выглядит <c>//************************************************************ void putch(unsigned char Symb) //************************************************************ { unsigned char x; while((x = LcdRdAdr()) & 0x80) continue; LCD_RS = 0; if(Symb == '\f') x = LCD_CLEAR; else // Очистка экрана. if(Symb == '\n') x = (x + 0x40) | 0x80; else // Новая строка. if(Symb == '\r') x = (x & 0x40) | 0x80; else // Начало строки. if(Symb == '\b') x = --x | 0x80; else // Откат. // Используем массив кодов русских букв для LCD, // перекладываем Symb в х, чтоб не потерять английский и проч. символ, потом, // если код ASCII символа попадает в коды ASCII русских букв (диапазон 192 - 255), // в х записываем значение указателя на элемент массива, по адресу // получаемого из суммы начального адреса массива и кода ASCII символа и отнимаем // значение кода ASCII русской буквы 'А' = 192!!! LCD_RS = 1; if(Symb >= 192) x = LCD_RUS_CODE[Symb - 192]; // это собственно сам перекодировщик else x = Symb; } LcdWrite(x); } </c>