Скидки, ограниченное предложение! Полный список акционных товаров

Урок 9. Русский язык на OLED дисплее 128X64

Необходимые детали
Видео уроки

Пришло время рассказать Вам, как можно обучить Ваш OLED дисплей писать русскими буквами.


Вы могли наблюдать, что в предыдущих уроках №7 и №8 уже использовался русский шрифт. Теперь мы рассмотрим его более подробно.

В этом уроке нам понадобится:

Для реализации проекта нам необходимо установить библиотеки:

Сборка:

OLED дисплей подключаем к arduino следующим образом:

Arduino Uno Экран 0.96 128X64 OLED
5V или 3.3V VCC
GND GND
Pin 9 SCL
Pin 8 SDA

Для удобства подключения можно использовать макетную плату.

Скетч:

Теперь приведем пример, в котором мы выведем на дисплей русский алфавит. Не забудьте предварительно установить библиотеку OLED I2C OLED_I2C с поддержкой Русского и Украинского языка.

#include <OLED_I2C.h> 
OLED  myOLED(8, 9, 8); // SDA - 8pin, SCL - 9pin
extern uint8_t RusFont[]; // Русский шрифт
void setup()
{
  myOLED.begin();
}
void loop()
{
  myOLED.clrScr(); // Стираем все с экрана
  myOLED.setFont(RusFont);
  myOLED.print("Heccrbq ihban", CENTER, 0); // Выводим надпись "Русский язык"
  myOLED.print("F < D U L T : P B Q", CENTER, 12); // Выводим надпись "А Б В Г Д Е Ж З И Й"
  myOLED.print("R K V Y J G H C N E", CENTER, 22); // Выводим надпись "К Л М Н О П Р С Т У"
  myOLED.print("A { W X I O } S M", CENTER, 32); // Выводим надпись "Ф Х Ц Ч Ш Щ Ъ Ы Ь"
  myOLED.print("~ > Z", CENTER, 42); // Выводим надпись "Э Ю Я"
  myOLED.print("Fqfhlebyj - he", CENTER, 56 ); // Выводим надпись "Айардуино ру"
  myOLED.update(); // Обновляем информацию на дисплее
  delay(3000); // Пауза 3 секунды
  myOLED.clrScr(); // Стираем все с экрана
  myOLED.print("Heccrbq ihban", CENTER, 0); // Выводим надпись "Русский язык"
  myOLED.print("f , d u l t p p b q", CENTER, 12); // Выводим надпись "а б в г д е ж з и й"
  myOLED.print("r k v y j g h c n e", CENTER, 22); // Выводим надпись "к л м н о п р с т у"
  myOLED.print("a [ w x i o ] s m", CENTER, 32); // Выводим надпись "ф х ц ш щ ъ ы ь"
  myOLED.print("` . z", CENTER, 42); // Выводим надпись "э ю я"
  myOLED.print("Fqfhlebyj - he", CENTER, 56 ); // Выводим надпись "Айардуино ру"
  myOLED.update();// Обновляем информацию на дисплее
  delay(3000); // Пауза 3 секунды
}

Скачать данный скетч можно по ссылке: Файл к уроку №9

Рассмотрим некоторые моменты более подробно.

Для выбора русского шрифта нам необходимо сперва подключить его в начале скетча

extern uint8_t RusFont[]; // Русский шрифт

После чего он будет нам доступен.

Для того, что бы написать русскими буквами, нам необходимо выбрать шрифт, для этого необходимо написать следующую строчку

  myOLED.setFont(RusFont);

Теперь мы можем вывести русский шрифт, но тут есть небольшая хитрость.

Нам нужно включить английскую раскладку клавиатуры, но печатать, смотря на русские буквы на клавиатуре.

Например:

 myOLED.print("Heccrbq ihban", CENTER, 0); // Выводим надпись "Русский язык"

После чего не забывайте делать вывод на экран.

  myOLED.update();// Обновляем информацию на дисплее

На всякий случай приведем таблицу соответствия символов


Русская буква Код, заглавной буквы Код, прописной буквы
А, а F f
Б, б < ,
В, в D d
Г, г U u
Д, д L l
Е, е T t
Ж, ж : ;
З, з P p
И, и B b
Й, й Q q
К, к R r
Л, л K k
М, м V v
Н, н Y y
О, о J j
П, п G g
Р, р H h
С, с C c
Т, т N n
У, у E e
Ф, ф A a
Х, х { [
Ц, ц W w
Ч, ч X x
Ш, ш I i
Щ, щ O o
Ъ, ъ } ]
Ы, ы S s
Ь, ь M m
Э, э ~ `
Ю, ю > .
Я, я Z z

В результате:



Обсуждение

Присоединяйся

Другие уроки

На главную