Страница 11 из 12 ПерваяПервая ... 56789101112 ПоследняяПоследняя
Показано с 101 по 110 из 118
  1. #101
    Новичок
    Регистрация
    01.03.2016
    Сообщений
    7
    Вес репутации
    110

    По умолчанию Re: Дисплей Epson LCD L2F50 от Siemens S65

    Шрифты все работают, меняются в fonts.h.
    Питаюсь добавить русский. Нашел чужой, выводит слова на русском, но через букву добавляет мусор.
    На англ. все в порядке.
    Отключил #define FONT_END7F в fonts.h чтобы от 0x80 до 0xbf были русские буквы.
    В шрифте англ. и русские буквы ни чего лишнего но и знаки и цифры конечно. Все стандартно.
    Как это можно исправить.
    Может в uint8_t S65Display::drawChar(uint8_t x, uint8_t y, char c, uint8_t size, uint16_t color, uint16_t bg_color)
    где то условие поставить, если после 0x80 до 0xbf выводил на экран через букву .
    Только не пойму где, и как это придумать.
    Пока не разобрался как, и какой программой под этот дисплей шрифт сделать.
    Но шрифт нормальный может действительно в uint8_t S65Display::drawChar(uint8_t x, uint8_t y, char c, uint8_t size, uint16_t color, uint16_t bg_color) проблема.
    Подскажите где копать.

    В шрифте 8х8 выводит / палочку перед русской буквой.
    Это 12х15 выводит мусор перед русской буквой.

    Нажмите на изображение для увеличения. 

Название:	DSCN117.jpg 
Просмотров:	2259 
Размер:	280.1 Кб 
ID:	18871
    Последний раз редактировалось VetalST; 02.03.2016 в 22:46.

  2. #102
    Новичок
    Регистрация
    06.02.2018
    Сообщений
    4
    Вес репутации
    0

    По умолчанию Re: Дисплей Epson LCD L2F50 от Siemens S65

    А для LS020 есть у кого библиотека ? Я взял библиотеку L2F50 и заменил там L2F50 на LS020 не работает )

  3. #103
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,382
    Вес репутации
    10

    По умолчанию Re: Дисплей Epson LCD L2F50 от Siemens S65

    В шапке темы есть либа

  4. #104
    Новичок
    Регистрация
    06.02.2018
    Сообщений
    4
    Вес репутации
    0

    По умолчанию Re: Дисплей Epson LCD L2F50 от Siemens S65

    В шапке есть "Исправленная и рабочая библиотека для LCD L2F50 еще одна библиотека с исправленным выводом текста от VetalST" но нет на LS020 и написано что простая замена не помогла " поменял нужные строчки либы вместо LS020 заменил на L2F50 , но диплей никак не хотел работать "

  5. #105
    Новичок
    Регистрация
    06.02.2018
    Сообщений
    4
    Вес репутации
    0

    По умолчанию Re: Дисплей Epson LCD L2F50 от Siemens S65

    "Тестовая программа для вывода изображений через USB . В программе можно задать паузу между выводами картинок и скорость порта в файле config.ini
    Изображения с разрешением 176х132 можно положить в любом количестве в папку с программой и они будут автоматически прокручены через ардуино и ЖКИ"

    В какую папку с программой ? ардуино ?

  6. #106
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,382
    Вес репутации
    10

    По умолчанию Re: Дисплей Epson LCD L2F50 от Siemens S65

    В ардуино код, программа на ПК. Которая тоже есть в шапке темы
    Программа работает только с ардуиной у которой FTDI USB мост
    Последний раз редактировалось Chip; 07.02.2018 в 14:47.

  7. #107
    Новичок
    Регистрация
    06.02.2018
    Сообщений
    4
    Вес репутации
    0

    По умолчанию Re: Дисплей Epson LCD L2F50 от Siemens S65

    В какой папке на ПК должна быть программа ?

  8. #108
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,382
    Вес репутации
    10

    По умолчанию Re: Дисплей Epson LCD L2F50 от Siemens S65

    Не имеет значение

  9. #109
    Новичок
    Регистрация
    30.03.2018
    Сообщений
    1
    Вес репутации
    0

    По умолчанию Re: Дисплей Epson LCD L2F50 от Siemens S65

    С кирилицей по прежнему никак?, или есть варианты?

  10. #110
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,382
    Вес репутации
    10

    По умолчанию Re: Дисплей Epson LCD L2F50 от Siemens S65

    Копать нужно в эту сторону http://compcar.ru/forum/showthread.p...l=1#post110401
    http://compcar.ru/forum/showthread.p...l=1#post110395
    http://compcar.ru/forum/showthread.p...ll=1#post91484


    Вытащил из либы функции, с которыми нужно разбираться
    PHP код:
    uint8_t S65Display::drawChar(uint8_t xuint8_t ychar cuint8_t sizeuint16_t coloruint16_t bg_color

      
    uint8_t rethw// h,w sind Laufvariablen für Höhe und Weite 
    #if FONT_WIDTH <= 8 
      
    uint8_t data
    #elif FONT_WIDTH <= 16 
      
    uint16_t data
    #elif FONT_WIDTH <= 32 
      
    uint32_t data
    #endif 
      
    uint8_t ijwidthheight
      const 
    prog_uint8_t *ptr, *ptr_tmp

      
    i      = (uint8_t)c
    #if FONT_WIDTH <= 8 
      
    ptr    = &font_PGM[(i-FONT_START)*(8*FONT_HEIGHT/8)]; 
    #elif FONT_WIDTH <= 16 
      
    ptr    = &font_PGM[(i-FONT_START)*(16*FONT_HEIGHT/8)]; 
    #elif FONT_WIDTH <= 32 
      
    ptr    = &font_PGM[(i-FONT_START)*(32*FONT_HEIGHT/8)]; 
    #endif 
      
    width  FONT_WIDTH
      
    height FONT_HEIGHT

      if(
    size <= 1
      { 
        
    ret x+width
        if(
    ret S65_WIDTH
        { 
          return 
    S65_WIDTH+1
        } 

        
    setArea(xy, (x+width-1), (y+height-1)); 

        
    s65_drawStart(); 
        
    ptr_tmp ptr
        for(
    w=widthw!=0w--) //  
        

        
    ptr    ptr_tmp
        
    //Serial.print("w="); Serial.println(w); delay(50); 
        
    for(hheighth!=0h--)  
        { 
        
    #if FONT_WIDTH <= 8 
            
    data pgm_read_byte(ptr); ptr+=1
        
    #elif FONT_WIDTH <= 16 
            
    data pgm_read_word(ptr); ptr+=2
        
    #elif FONT_WIDTH <= 32 
            
    data pgm_read_dword(ptr); ptr+=4
        
    #endif 
         
            
    if(CHECK_BIT(data,w)) // hier Sprung in die Funktion CHECK_BIT(var,pos)  
                                  // die ist in S6%Dislay.h angelegt 
                                  // und sieht so aus: 
                                  // #define CHECK_BIT(var,pos) ((var & (1 << pos)) == (1 << pos)) 

                

                
    s65_draw(color); 
                } 
                else 
                { 
                
    s65_draw(bg_color); 
                } 
            } 
        } 
        
    s65_drawStop(); 
      } 
      else 
      { 
        
    ret x+(width*size); 
        if(
    ret S65_WIDTH
        { 
          return 
    S65_WIDTH+1
        } 

        
    s65_setArea(xy, (x+(width*size)-1), (y+(height*size)-1)); 

        
    s65_drawStart(); 
          
    ptr_tmp ptr
        for(
    w=widthw!=0w--) //  
        

        
    ptr    ptr_tmp
        
    //Serial.print("w="); Serial.println(w); delay(50); 
        
    for(hheighth!=0h--) 
        { 
        
    #if FONT_WIDTH <= 8 
          
    data pgm_read_byte(ptr); ptr+=1
        
    #elif FONT_WIDTH <= 16 
          
    data pgm_read_word(ptr); ptr+=2
        
    #elif FONT_WIDTH <= 32 
          
    data pgm_read_dword(ptr); ptr+=4
        
    #endif 
         
         
              
    if(CHECK_BIT(data,w)) 
              { 
                for(
    j=sizej!=0j--) 
                { 
                  
    s65_draw(color); 
                } 
              } 
              else 
              { 
                for(
    j=sizej!=0j--) 
                { 
                  
    s65_draw(bg_color); 
                } 
                } 
                } 
              
        } 
        
    s65_drawStop(); 
      } 

      return 
    ret



    uint8_t S65Display::drawText(uint8_t xuint8_t ychar *suint8_t sizeuint16_t coloruint16_t bg_color

      while(*
    != 0
      { 
        
    drawChar(xy, *s++, sizecolorbg_color); 
        if(
    S65_WIDTH
        { 
          break; 
        } 
      } 

      return 
    x

    Я бы поправил, но без дисплея это просто не возможно
    Последний раз редактировалось Chip; 30.03.2018 в 11:07.

Страница 11 из 12 ПерваяПервая ... 56789101112 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

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