Перенос кода Arduino LiquidCrystal_1602_RUS на проект Atmel Studio

Нет ответов
DangerD
Offline
Зарегистрирован: 23.08.2014
День добрый, никогда раньше не сталкивался с программированием под микроконтроллеры.
В общем надо в готовый проект https://github.com/stawel/cheali-charger впилить библиотеку с поддержкой русских символов:
 
Скетчи готовой либы для ардуины и для атмел студии немного отличаются:
 
В итоге я вконец с этим всем запутался...
 
в либе русской есть функция:
void LiquidCrystal_1602_RUS::print(const wchar_t *_str){
в cheali-charger:
uint8_t LiquidCrystal::print(const char str[])
уже типы не совпадают
 
В итоге застрял на этом:
D:/Cheali/cheali-charger-master/src/core/drivers/LiquidCrystal.cpp: In member function 'uint8_t LiquidCrystal::print(const char*)':
D:/Cheali/cheali-charger-master/src/core/drivers/LiquidCrystal.cpp:359:12: warning: case label value exceeds maximum value for type
       case 1041: //╨С
 
uint8_t LiquidCrystal::print(const char str[])
{
  uint8_t rus_[8];
  int current_char  = 0;
  int size = 0;

  //Определяем длину строки (количество символов)
  /*while(str[size] != NULL)
  {
    size++;
  }*/
  size = strlen(str);
  
  while(current_char < size)
  {
    switch(str[current_char])
    {
      //Русский алфавит, требующий новых символов
      //Единовременно может быть заменено только 8 символов
      case 1041: //Б
        memcpy_PF(rus_, (uint32_t)rus_B, 8);
        CharSetToLCD((uint8_t *)rus_, &index_rus_B);
      break;

 

 
Валится на case 1041
Как букву в этот код перевести?