Например TDA7294

Форум РадиоКот • Просмотр темы - STM32 новичку в ARM что к чему
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вс окт 06, 2024 15:25:18

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 8464 ]     ... , , , , 424
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вт апр 30, 2024 00:05:20 
Опытный кот
Аватар пользователя

Карма: 5
Рейтинг сообщений: 44
Зарегистрирован: Вт апр 26, 2011 13:58:36
Сообщений: 714
Откуда: Ростовская область
Рейтинг сообщения: 0
Добрый вечер! Пытаюсь разобраться с русским шрифтом на GLCD. В функции вывода символа
Спойлерvoid _DrawChar_5x8(uint16_t x, uint16_t y, uint16_t textcolor, uint16_t textbgcolor, unsigned char c)
{
if((x >= 320) || (y >= 240) || ((x + 4) < 0) || ((y + 7) < 0)) return;

if(c<128) c = c-32;
if(c>=144 && c<=175) c = c-48;
if(c>=128 && c<=143) c = c+16;
if(c>=176 && c<=191) c = c-48;
if(c>191) return;

for (uint8_t i=0; i<6; i++ )
{
uint8_t line;
if (i == 5) line = 0x00;
else line = font[(c*5)+i];
for (uint8_t j = 0; j<8; j++, line >>= 1)
{
if (line & 0x01)
{
if(GUI()->textsize == 1) { tft_PIXEL_draw( x+i, y+j, GUI()->textcolor ); }
else
{
tft_RECT_fill(x+(i*GUI()->textsize), y+(j*GUI()->textsize), GUI()->textsize, GUI()->textsize, GUI()->textcolor);
}
}
else if( GUI()->textbgcolor != GUI()->textcolor )
{
if(GUI()->textsize == 1) { tft_PIXEL_draw(x+i, y+j, GUI()->textbgcolor); }
else
{
tft_RECT_fill(x+(i*GUI()->textsize), y+(j*GUI()->textsize), GUI()->textsize, GUI()->textsize, GUI()->textbgcolor);
}
}
}
}
}
Код:
if(c<128)            c = c-32;
  if(c>=144 && c<=175) c = c-48;
  if(c>=128 && c<=143) c = c+16;
  if(c>=176 && c<=191) c = c-48;
  if(c>191)  return;
Эти строки, что за смещение? Откуда 144,175 если в ASCII кириллица со 192, чего то не в тыкаю. сам файл шрифта 5х7
Спойлер#ifndef FONT5X7_H
#define FONT5X7_H

#include "common.h"

//----------
// Стандартный шрифт ASCII 5x7.
//----------

static const uint8_t font[] = {

0x00, 0x00, 0x00, 0x00, 0x00,
0x3E, 0x5B, 0x4F, 0x5B, 0x3E,
0x3E, 0x6B, 0x4F, 0x6B, 0x3E,
0x1C, 0x3E, 0x7C, 0x3E, 0x1C,
0x18, 0x3C, 0x7E, 0x3C, 0x18,
0x1C, 0x57, 0x7D, 0x57, 0x1C,
0x1C, 0x5E, 0x7F, 0x5E, 0x1C,
0x00, 0x18, 0x3C, 0x18, 0x00,
0xFF, 0xE7, 0xC3, 0xE7, 0xFF,
0x00, 0x18, 0x24, 0x18, 0x00,
0xFF, 0xE7, 0xDB, 0xE7, 0xFF,
0x30, 0x48, 0x3A, 0x06, 0x0E,
0x26, 0x29, 0x79, 0x29, 0x26,
0x40, 0x7F, 0x05, 0x05, 0x07,
0x40, 0x7F, 0x05, 0x25, 0x3F,
0x5A, 0x3C, 0xE7, 0x3C, 0x5A,
0x7F, 0x3E, 0x1C, 0x1C, 0x08,
0x08, 0x1C, 0x1C, 0x3E, 0x7F,
0x14, 0x22, 0x7F, 0x22, 0x14,
0x5F, 0x5F, 0x00, 0x5F, 0x5F,
0x06, 0x09, 0x7F, 0x01, 0x7F,
0x00, 0x66, 0x89, 0x95, 0x6A,
0x60, 0x60, 0x60, 0x60, 0x60,
0x94, 0xA2, 0xFF, 0xA2, 0x94,
0x08, 0x04, 0x7E, 0x04, 0x08,
0x10, 0x20, 0x7E, 0x20, 0x10,
0x08, 0x08, 0x2A, 0x1C, 0x08,
0x08, 0x1C, 0x2A, 0x08, 0x08,
0x1E, 0x10, 0x10, 0x10, 0x10,
0x0C, 0x1E, 0x0C, 0x1E, 0x0C,
0x30, 0x38, 0x3E, 0x38, 0x30,
0x06, 0x0E, 0x3E, 0x0E, 0x06,// Непечатаемые символы таблицы ascii - 32

//156
0x00, 0x00, 0x00, 0x00, 0x00,// (space)
0x00, 0x00, 0x5F, 0x00, 0x00,// !
0x00, 0x07, 0x00, 0x07, 0x00,// "
0x14, 0x7F, 0x14, 0x7F, 0x14,// #
0x24, 0x2A, 0x7F, 0x2A, 0x12,// $
0x23, 0x13, 0x08, 0x64, 0x62,// %
0x36, 0x49, 0x55, 0x22, 0x50,// &
0x00, 0x05, 0x03, 0x00, 0x00,// '
0x00, 0x1C, 0x22, 0x41, 0x00,// (
0x00, 0x41, 0x22, 0x1C, 0x00,// )
0x08, 0x2A, 0x1C, 0x2A, 0x08,// *
0x08, 0x08, 0x3E, 0x08, 0x08,// +
0x00, 0x50, 0x30, 0x00, 0x00,// ,
0x08, 0x08, 0x08, 0x08, 0x08,// -
0x00, 0x60, 0x60, 0x00, 0x00,// .
0x20, 0x10, 0x08, 0x04, 0x02,// /
0x3E, 0x51, 0x49, 0x45, 0x3E,// 0
0x00, 0x42, 0x7F, 0x40, 0x00,// 1
0x42, 0x61, 0x51, 0x49, 0x46,// 2
0x21, 0x41, 0x45, 0x4B, 0x31,// 3
0x18, 0x14, 0x12, 0x7F, 0x10,// 4
0x27, 0x45, 0x45, 0x45, 0x39,// 5
0x3C, 0x4A, 0x49, 0x49, 0x30,// 6
0x01, 0x71, 0x09, 0x05, 0x03,// 7
0x36, 0x49, 0x49, 0x49, 0x36,// 8
0x06, 0x49, 0x49, 0x29, 0x1E,// 9
0x00, 0x36, 0x36, 0x00, 0x00,// :
0x00, 0x56, 0x36, 0x00, 0x00,// ;
0x00, 0x08, 0x14, 0x22, 0x41,// <
0x14, 0x14, 0x14, 0x14, 0x14,// =
0x41, 0x22, 0x14, 0x08, 0x00,// >
0x02, 0x01, 0x51, 0x09, 0x06,// ?
0x32, 0x49, 0x79, 0x41, 0x3E,// @
0x7E, 0x11, 0x11, 0x11, 0x7E,// A (65)
0x7F, 0x49, 0x49, 0x49, 0x36,// B
0x3E, 0x41, 0x41, 0x41, 0x22,// C
0x7F, 0x41, 0x41, 0x22, 0x1C,// D
0x7F, 0x49, 0x49, 0x49, 0x41,// E
0x7F, 0x09, 0x09, 0x01, 0x01,// F
0x3E, 0x41, 0x41, 0x51, 0x32,// G
0x7F, 0x08, 0x08, 0x08, 0x7F,// H
0x00, 0x41, 0x7F, 0x41, 0x00,// I
0x20, 0x40, 0x41, 0x3F, 0x01,// J
0x7F, 0x08, 0x14, 0x22, 0x41,// K
0x7F, 0x40, 0x40, 0x40, 0x40,// L
0x7F, 0x02, 0x04, 0x02, 0x7F,// M
0x7F, 0x04, 0x08, 0x10, 0x7F,// N
0x3E, 0x41, 0x41, 0x41, 0x3E,// O
0x7F, 0x09, 0x09, 0x09, 0x06,// P
0x3E, 0x41, 0x51, 0x21, 0x5E,// Q
0x7F, 0x09, 0x19, 0x29, 0x46,// R
0x46, 0x49, 0x49, 0x49, 0x31,// S
0x01, 0x01, 0x7F, 0x01, 0x01,// T
0x3F, 0x40, 0x40, 0x40, 0x3F,// U
0x1F, 0x20, 0x40, 0x20, 0x1F,// V
0x7F, 0x20, 0x18, 0x20, 0x7F,// W
0x63, 0x14, 0x08, 0x14, 0x63,// X
0x03, 0x04, 0x78, 0x04, 0x03,// Y
0x61, 0x51, 0x49, 0x45, 0x43,// Z (90)
0x00, 0x00, 0x7F, 0x41, 0x41,// [
0x02, 0x04, 0x08, 0x10, 0x20,// "\"
0x41, 0x41, 0x7F, 0x00, 0x00,// ]
0x04, 0x02, 0x01, 0x02, 0x04,// ^
0x40, 0x40, 0x40, 0x40, 0x40,// _
0x00, 0x01, 0x02, 0x04, 0x00,// `
0x20, 0x54, 0x54, 0x54, 0x78,// a (97)
0x7F, 0x48, 0x44, 0x44, 0x38,// b
0x38, 0x44, 0x44, 0x44, 0x20,// c
0x38, 0x44, 0x44, 0x48, 0x7F,// d
0x38, 0x54, 0x54, 0x54, 0x18,// e
0x08, 0x7E, 0x09, 0x01, 0x02,// f
0x08, 0x14, 0x54, 0x54, 0x3C,// g
0x7F, 0x08, 0x04, 0x04, 0x78,// h
0x00, 0x44, 0x7D, 0x40, 0x00,// i
0x20, 0x40, 0x44, 0x3D, 0x00,// j
0x00, 0x7F, 0x10, 0x28, 0x44,// k
0x00, 0x41, 0x7F, 0x40, 0x00,// l
0x7C, 0x04, 0x18, 0x04, 0x78,// m
0x7C, 0x08, 0x04, 0x04, 0x78,// n
0x38, 0x44, 0x44, 0x44, 0x38,// o
0x7C, 0x14, 0x14, 0x14, 0x08,// p
0x08, 0x14, 0x14, 0x18, 0x7C,// q
0x7C, 0x08, 0x04, 0x04, 0x08,// r
0x48, 0x54, 0x54, 0x54, 0x20,// s
0x04, 0x3F, 0x44, 0x40, 0x20,// t
0x3C, 0x40, 0x40, 0x20, 0x7C,// u
0x1C, 0x20, 0x40, 0x20, 0x1C,// v
0x3C, 0x40, 0x30, 0x40, 0x3C,// w
0x44, 0x28, 0x10, 0x28, 0x44,// x
0x0C, 0x50, 0x50, 0x50, 0x3C,// y
0x44, 0x64, 0x54, 0x4C, 0x44,// z (122)
0x00, 0x08, 0x36, 0x41, 0x00,// {
0x00, 0x00, 0x7F, 0x00, 0x00,// |
0x00, 0x41, 0x36, 0x08, 0x00,// }
0x08, 0x08, 0x2A, 0x1C, 0x08,// ->
0x08, 0x1C, 0x2A, 0x08, 0x08,// <-
//96
0x7E, 0x11, 0x11, 0x11, 0x7E,// A (128)
0x7F, 0x49, 0x49, 0x49, 0x30,// Б
0x7F, 0x49, 0x49, 0x49, 0x36,// B
0x7F, 0x01, 0x01, 0x01, 0x01,// Г
0x60, 0x3F, 0x21, 0x3F, 0x60,// Д
0x7F, 0x49, 0x49, 0x49, 0x41,// E
0x63, 0x14, 0x7F, 0x14, 0x63,// Ж
0x49, 0x49, 0x49, 0x49, 0x36,// З
0x7F, 0x10, 0x08, 0x04, 0x7F,// И
0x7F, 0x10, 0x09, 0x04, 0x7F,// Й
0x7F, 0x08, 0x14, 0x22, 0x41,// К
0x40, 0x3F, 0x01, 0x01, 0x7F,// Л
0x7F, 0x02, 0x04, 0x02, 0x7F,// М
0x7F, 0x08, 0x08, 0x08, 0x7F,// H
0x3E, 0x41, 0x41, 0x41, 0x3E,// O
0x7F, 0x01, 0x01, 0x01, 0x7F,// П (143)
0x7F, 0x09, 0x09, 0x09, 0x06,// P
0x3E, 0x41, 0x41, 0x41, 0x22,// C
0x01, 0x01, 0x7F, 0x01, 0x01,// T
0x63, 0x14, 0x08, 0x04, 0x03,// У
0x3E, 0x41, 0x7F, 0x41, 0x3E,// Ф
0x63, 0x14, 0x08, 0x14, 0x63,// X
0x3F, 0x20, 0x20, 0x3F, 0x60,// Ц
0x07, 0x08, 0x08, 0x08, 0x7F,// Ч
0x7F, 0x40, 0x7F, 0x40, 0x7F,// Ш
0x3F, 0x20, 0x3F, 0x20, 0x7F,// Щ (153)
0x01, 0x7F, 0x48, 0x48, 0x30,// Ъ
0x3C, 0x41, 0x42, 0x20, 0x7C,// ѝ
0x7F, 0x08, 0x3E, 0x41, 0x3E,// Ю
0x46, 0x29, 0x19, 0x09, 0x7F,// Я
//30
0x20, 0x54, 0x54, 0x54, 0x78,// а (158)
0x7E, 0x49, 0x45, 0x45, 0x39,// б
0x7C, 0x54, 0x54, 0x58, 0x20,// в
0x7C, 0x04, 0x04, 0x04, 0x04,// г
0x08, 0x14, 0x54, 0x54, 0x3C,// д
0x38, 0x54, 0x54, 0x54, 0x18,// е
0x44, 0x28, 0x7C, 0x28, 0x44,// ж
0x54, 0x54, 0x54, 0x54, 0x28,// з
0x3C, 0x40, 0x40, 0x20, 0x7C,// и
0x3C, 0x41, 0x42, 0x21, 0x7C,// й
0x00, 0x7C, 0x10, 0x28, 0x44,// к
0x40, 0x3C, 0x04, 0x04, 0x7C,// л
0x7C, 0x08, 0x10, 0x08, 0x7C,// м
0x00, 0x7C, 0x10, 0x10, 0x7C,// н
0x38, 0x44, 0x44, 0x44, 0x38,// о
0x00, 0x7C, 0x04, 0x04, 0x7C,// п
0x7C, 0x14, 0x14, 0x14, 0x08,// р
0x38, 0x44, 0x44, 0x44, 0x20,// с (175)
0x04, 0x04, 0x7C, 0x04, 0x04,// т
0x0C, 0x50, 0x50, 0x50, 0x3C,// у
0x38, 0x44, 0x7C, 0x44, 0x38,// ф
0x44, 0x28, 0x10, 0x28, 0x44,// х
0x3C, 0x20, 0x20, 0x3C, 0x60,// ц
0x00, 0x0C, 0x10, 0x10, 0x7C,// ч
0x7C, 0x40, 0x7C, 0x40, 0x7C,// ш
0x3C, 0x20, 0x3C, 0x20, 0x7C,// щ
0x04, 0x7C, 0x50, 0x50, 0x30,// ъ
0x00, 0x7C, 0x50, 0x50, 0x30,// ь
0x7C, 0x10, 0x38, 0x44, 0x38,// ю
0x48, 0x34, 0x14, 0x14, 0x7C,// я (187)
};
#endif // FONT5X7_H


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вт апр 30, 2024 09:30:39 
Встал на лапы
Аватар пользователя

Зарегистрирован: Пн апр 02, 2012 15:56:23
Сообщений: 143
Рейтинг сообщения: 4
Эти строки, что за смещение? Откуда 144,175

Эти смещения здесь для уплотнения шрифта, из таблицы ASCII вырезаны непечатаемые символы. Вам надо добавить еще пару условий для кириллицы, если c равен 192 (буква 'А'), то надо вычесть до её реальной позиции в массиве шрифта.

Но вообще у вас код не соответствует шрифту, так как в массиве представлены ненужные строки (первые 32 символа как минимум), а первое условие считает, что их там нет.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вт апр 30, 2024 11:22:16 
Опытный кот
Аватар пользователя

Карма: 5
Рейтинг сообщений: 44
Зарегистрирован: Вт апр 26, 2011 13:58:36
Сообщений: 714
Откуда: Ростовская область
Рейтинг сообщения: 0
если c равен 192 (буква 'А'), то надо вычесть до её реальной позиции в массиве шрифта.

Да это я понял, что смещение. Только цифры какие то странные и если задать if(c>=192 && c<=223) c = c-64; вообще абра кадабра какая то.
если код смещения
Код:
if(c>=144 && c<=175) c = c-16;
   if(c>=176 && c<=191) c = c-16;
  if(c>191)  return;
после 'п' съедаются никак пока не поборю. И похоже кодировка DOS буква 'A' начинается со 128.
Изображение


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вт май 07, 2024 15:04:14 
Опытный кот
Аватар пользователя

Карма: 5
Рейтинг сообщений: 44
Зарегистрирован: Вт апр 26, 2011 13:58:36
Сообщений: 714
Откуда: Ростовская область
Рейтинг сообщения: 0
Спойлер#ifndef FONT5X7_H
#define FONT5X7_H

#include "common.h"

//----------
// Стандартный шрифт ASCII 5x7.
//----------

static const uint8_t font[] = {
//156
0x00, 0x00, 0x00, 0x00, 0x00,// (space)
0x00, 0x00, 0x5F, 0x00, 0x00,// !
0x00, 0x07, 0x00, 0x07, 0x00,// "
0x14, 0x7F, 0x14, 0x7F, 0x14,// #
0x24, 0x2A, 0x7F, 0x2A, 0x12,// $
0x23, 0x13, 0x08, 0x64, 0x62,// %
0x36, 0x49, 0x55, 0x22, 0x50,// &
0x00, 0x05, 0x03, 0x00, 0x00,// '
0x00, 0x1C, 0x22, 0x41, 0x00,// (
0x00, 0x41, 0x22, 0x1C, 0x00,// )
0x08, 0x2A, 0x1C, 0x2A, 0x08,// *
0x08, 0x08, 0x3E, 0x08, 0x08,// +
0x00, 0x50, 0x30, 0x00, 0x00,// ,
0x08, 0x08, 0x08, 0x08, 0x08,// -
0x00, 0x60, 0x60, 0x00, 0x00,// .
0x20, 0x10, 0x08, 0x04, 0x02,// /
0x3E, 0x51, 0x49, 0x45, 0x3E,// 0
0x00, 0x42, 0x7F, 0x40, 0x00,// 1
0x42, 0x61, 0x51, 0x49, 0x46,// 2
0x21, 0x41, 0x45, 0x4B, 0x31,// 3
0x18, 0x14, 0x12, 0x7F, 0x10,// 4
0x27, 0x45, 0x45, 0x45, 0x39,// 5
0x3C, 0x4A, 0x49, 0x49, 0x30,// 6
0x01, 0x71, 0x09, 0x05, 0x03,// 7
0x36, 0x49, 0x49, 0x49, 0x36,// 8
0x06, 0x49, 0x49, 0x29, 0x1E,// 9
0x00, 0x36, 0x36, 0x00, 0x00,// :
0x00, 0x56, 0x36, 0x00, 0x00,// ;
0x00, 0x08, 0x14, 0x22, 0x41,// <
0x14, 0x14, 0x14, 0x14, 0x14,// =
0x41, 0x22, 0x14, 0x08, 0x00,// >
0x02, 0x01, 0x51, 0x09, 0x06,// ?
0x32, 0x49, 0x79, 0x41, 0x3E,// @
0x7E, 0x11, 0x11, 0x11, 0x7E,// A (65)
0x7F, 0x49, 0x49, 0x49, 0x36,// B
0x3E, 0x41, 0x41, 0x41, 0x22,// C
0x7F, 0x41, 0x41, 0x22, 0x1C,// D
0x7F, 0x49, 0x49, 0x49, 0x41,// E
0x7F, 0x09, 0x09, 0x01, 0x01,// F
0x3E, 0x41, 0x41, 0x51, 0x32,// G
0x7F, 0x08, 0x08, 0x08, 0x7F,// H
0x00, 0x41, 0x7F, 0x41, 0x00,// I
0x20, 0x40, 0x41, 0x3F, 0x01,// J
0x7F, 0x08, 0x14, 0x22, 0x41,// K
0x7F, 0x40, 0x40, 0x40, 0x40,// L
0x7F, 0x02, 0x04, 0x02, 0x7F,// M
0x7F, 0x04, 0x08, 0x10, 0x7F,// N
0x3E, 0x41, 0x41, 0x41, 0x3E,// O
0x7F, 0x09, 0x09, 0x09, 0x06,// P
0x3E, 0x41, 0x51, 0x21, 0x5E,// Q
0x7F, 0x09, 0x19, 0x29, 0x46,// R
0x46, 0x49, 0x49, 0x49, 0x31,// S
0x01, 0x01, 0x7F, 0x01, 0x01,// T
0x3F, 0x40, 0x40, 0x40, 0x3F,// U
0x1F, 0x20, 0x40, 0x20, 0x1F,// V
0x7F, 0x20, 0x18, 0x20, 0x7F,// W
0x63, 0x14, 0x08, 0x14, 0x63,// X
0x03, 0x04, 0x78, 0x04, 0x03,// Y
0x61, 0x51, 0x49, 0x45, 0x43,// Z (90)
0x00, 0x00, 0x7F, 0x41, 0x41,// [
0x02, 0x04, 0x08, 0x10, 0x20,// "\"
0x41, 0x41, 0x7F, 0x00, 0x00,// ]
0x04, 0x02, 0x01, 0x02, 0x04,// ^
0x40, 0x40, 0x40, 0x40, 0x40,// _
0x00, 0x01, 0x02, 0x04, 0x00,// `
0x20, 0x54, 0x54, 0x54, 0x78,// a (97)
0x7F, 0x48, 0x44, 0x44, 0x38,// b
0x38, 0x44, 0x44, 0x44, 0x20,// c
0x38, 0x44, 0x44, 0x48, 0x7F,// d
0x38, 0x54, 0x54, 0x54, 0x18,// e
0x08, 0x7E, 0x09, 0x01, 0x02,// f
0x08, 0x14, 0x54, 0x54, 0x3C,// g
0x7F, 0x08, 0x04, 0x04, 0x78,// h
0x00, 0x44, 0x7D, 0x40, 0x00,// i
0x20, 0x40, 0x44, 0x3D, 0x00,// j
0x00, 0x7F, 0x10, 0x28, 0x44,// k
0x00, 0x41, 0x7F, 0x40, 0x00,// l
0x7C, 0x04, 0x18, 0x04, 0x78,// m
0x7C, 0x08, 0x04, 0x04, 0x78,// n
0x38, 0x44, 0x44, 0x44, 0x38,// o
0x7C, 0x14, 0x14, 0x14, 0x08,// p
0x08, 0x14, 0x14, 0x18, 0x7C,// q
0x7C, 0x08, 0x04, 0x04, 0x08,// r
0x48, 0x54, 0x54, 0x54, 0x20,// s
0x04, 0x3F, 0x44, 0x40, 0x20,// t
0x3C, 0x40, 0x40, 0x20, 0x7C,// u
0x1C, 0x20, 0x40, 0x20, 0x1C,// v
0x3C, 0x40, 0x30, 0x40, 0x3C,// w
0x44, 0x28, 0x10, 0x28, 0x44,// x
0x0C, 0x50, 0x50, 0x50, 0x3C,// y
0x44, 0x64, 0x54, 0x4C, 0x44,// z (122)
0x00, 0x08, 0x36, 0x41, 0x00,// {
0x00, 0x00, 0x7F, 0x00, 0x00,// |
0x00, 0x41, 0x36, 0x08, 0x00,// }
0x08, 0x08, 0x2A, 0x1C, 0x08,// ->
0x08, 0x1C, 0x2A, 0x08, 0x08,// <-
//95
0x7E, 0x11, 0x11, 0x11, 0x7E,// A (128) с 0x90 (144) и до 0xAF (175) идут заглавные по порядку «А» — «Я» исключая «Ё»
0x7F, 0x49, 0x49, 0x49, 0x30,// Б
0x7F, 0x49, 0x49, 0x49, 0x36,// B
0x7F, 0x01, 0x01, 0x01, 0x01,// Г
0x60, 0x3F, 0x21, 0x3F, 0x60,// Д
0x7F, 0x49, 0x49, 0x49, 0x41,// E
0x63, 0x14, 0x7F, 0x14, 0x63,// Ж
0x49, 0x49, 0x49, 0x49, 0x36,// З
0x7F, 0x10, 0x08, 0x04, 0x7F,// И
0x7F, 0x10, 0x09, 0x04, 0x7F,// Й
0x7F, 0x08, 0x14, 0x22, 0x41,// К
0x40, 0x3F, 0x01, 0x01, 0x7F,// Л
0x7F, 0x02, 0x04, 0x02, 0x7F,// М
0x7F, 0x08, 0x08, 0x08, 0x7F,// H
0x3E, 0x41, 0x41, 0x41, 0x3E,// O
0x7F, 0x01, 0x01, 0x01, 0x7F,// П (143)
0x7F, 0x09, 0x09, 0x09, 0x06,// P
0x3E, 0x41, 0x41, 0x41, 0x22,// C
0x01, 0x01, 0x7F, 0x01, 0x01,// T
0x63, 0x14, 0x08, 0x04, 0x03,// У
0x3E, 0x41, 0x7F, 0x41, 0x3E,// Ф
0x63, 0x14, 0x08, 0x14, 0x63,// X
0x3F, 0x20, 0x20, 0x3F, 0x60,// Ц
0x07, 0x08, 0x08, 0x08, 0x7F,// Ч
0x7F, 0x40, 0x7F, 0x40, 0x7F,// Ш
0x3F, 0x20, 0x3F, 0x20, 0x7F,// Щ
0x01, 0x7F, 0x48, 0x48, 0x30,// Ъ
0x7F, 0x48, 0x48, 0x30, 0x7F,// Ы
0x00, 0x7F, 0x48, 0x48, 0x30,// Ь
0x22, 0x41, 0x49, 0x49, 0x3E,// Э
0x7F, 0x08, 0x3E, 0x41, 0x3E,// Ю
0x46, 0x29, 0x19, 0x09, 0x7F,// Я (159)
//32
0x20, 0x54, 0x54, 0x54, 0x78,// а (160) в хвосте с 0xB0 (176) до 0xBF (191) маленькие от «а» до «п»
0x7E, 0x49, 0x45, 0x45, 0x39,// б
0x7C, 0x54, 0x54, 0x58, 0x20,// в
0x7C, 0x04, 0x04, 0x04, 0x04,// г
0x08, 0x14, 0x54, 0x54, 0x3C,// д
0x38, 0x54, 0x54, 0x54, 0x18,// е
0x44, 0x28, 0x7C, 0x28, 0x44,// ж
0x54, 0x54, 0x54, 0x54, 0x28,// з
0x3C, 0x40, 0x40, 0x20, 0x7C,// и
0x3C, 0x41, 0x42, 0x21, 0x7C,// й
0x00, 0x7C, 0x10, 0x28, 0x44,// к
0x40, 0x3C, 0x04, 0x04, 0x7C,// л
0x7C, 0x08, 0x10, 0x08, 0x7C,// м
0x00, 0x7C, 0x10, 0x10, 0x7C,// н
0x38, 0x44, 0x44, 0x44, 0x38,// о
0x00, 0x7C, 0x04, 0x04, 0x7C,// п
0x7C, 0x14, 0x14, 0x14, 0x08,// р (176) диапазону 0x80 (128) — 0x8F (143) соответствуют маленькие буквы от «р» до «я»
0x38, 0x44, 0x44, 0x44, 0x20,// с
0x04, 0x04, 0x7C, 0x04, 0x04,// т
0x0C, 0x50, 0x50, 0x50, 0x3C,// у
0x38, 0x44, 0x7C, 0x44, 0x38,// ф
0x44, 0x28, 0x10, 0x28, 0x44,// х
0x3C, 0x20, 0x20, 0x3C, 0x60,// ц
0x00, 0x0C, 0x10, 0x10, 0x7C,// ч
0x7C, 0x40, 0x7C, 0x40, 0x7C,// ш
0x3C, 0x20, 0x3C, 0x20, 0x7C,// щ
0x04, 0x7C, 0x50, 0x50, 0x30,// ъ
0x7C, 0x50, 0x50, 0x30, 0x7C,// ы
0x00, 0x7C, 0x50, 0x50, 0x30,// ь
0x20, 0x44, 0x54, 0x54, 0x38,// э
0x7C, 0x10, 0x38, 0x44, 0x38,// ю
0x48, 0x34, 0x14, 0x14, 0x7C,// я (191)
//32
};
#endif // FONT5X7_H

//----------
//----------
//----------
Практически победил
Код:
//---------- смещение шрифта кириллицы : ----------
      
   if(c<128)            c = c-32; //пропускаем не печатаемые символы   
   if(c>=144 && c<=175) c = c-48; //с 0x90 и до 0xAF идут заглавные по порядку «А» — «Я» исключая «Ё»
   if(c>=128 && c<=143) c = c+16; //диапазону 0x80 — 0x8F соответствуют маленькие буквы от «р» до «я»
  if(c>=176 && c<=191) c = c-48; //в хвосте с 0xB0 до 0xBF маленькие от «а» до «п»
  if(c>191)  return;      
Оказывается расположение строк смещения тоже важно.
Только кириллица всё равно выводится по 2 байта, подскажите как можно вывести символ чтобы 1 байт был?
Пишу в KEIL установлена кодировка russian windows 1251.


Вернуться наверх
 
Дискретные силовые полупроводники SUNCO для широкого применения

Компания SUNCO выпускает такие компоненты, как Si- и SiCFET-транзисторы, дискретные IGBT и IGBT-модули, SiC-диоды, диодные мосты, диоды Шоттки, TVS-диоды, TVS-тиристоры и многое другое, являясь одним из крупнейших в мире производителей дискретных полупроводниковых компонентов с полным циклом производства и продаж. Продукция компании применяется ведущими мировыми производителями. В статье можно ознакомиться с ассортиментом продукции.

Подробнее>>
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 8464 ]     ... , , , , 424

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12


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

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y