Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR...

 
Опции темы
Непрочитано 24.03.2024, 20:08  
eddy
Почётный гражданин KAZUS.RU
 
Аватар для eddy
 
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,627
Сказал спасибо: 115
Сказали Спасибо 814 раз(а) в 591 сообщении(ях)
eddy на пути к лучшему
По умолчанию Re: Дисплей 3.5 на ILI9341 + atmega128

Devil Byte, ну напиши ты элементарный интерфейс к SPI. По уарту даешь команду - пишешь что-то в SPI. И экспериментируй. Я именно так и начинал работу с экранчиком.
А чужие "библиотеки" не используй, если не в силах понять, что они делают! Как минимум - почитай их исходники. Думаю, увидев этот адов быдлокод, сразу поймешь, что не стоит вообще даже длинной палкой это УГ тыкать. За вечер сам напишешь код, нежели будешь неделю биться, пытаясь чужой прикрутить (ну и чужой явно будет жирней).
Самый адов ад, что я видел для работ с экранами - это "библиотеки" от адафрут. Отличный прямо-таки эталон, как ни в коем случае писать нельзя.
Реклама:
__________________
Союз Советских Социалистических Округов Северной Америки
eddy вне форума  
Сказали "Спасибо" eddy
Devil Byte (25.03.2024)
Непрочитано 24.03.2024, 20:14  
Devil Byte
Временная регистрация
 
Регистрация: 07.03.2019
Сообщений: 87
Сказал спасибо: 11
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Devil Byte на пути к лучшему
По умолчанию Re: Дисплей 3.5 на ILI9341 + atmega128

eddy, Да я понял тебя, просто я заказл монохромы, но они не дошли до моего отлета, а этот пришел, но он ска пока сложный для меня. думал может будут какие то наработки, но походу вернусь к нокловскому дисплею пока. хотя в некотором случае мне не хватает места на нем
Devil Byte вне форума  
Непрочитано 24.03.2024, 21:52  
eddy
Почётный гражданин KAZUS.RU
 
Аватар для eddy
 
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,627
Сказал спасибо: 115
Сказали Спасибо 814 раз(а) в 591 сообщении(ях)
eddy на пути к лучшему
По умолчанию Re: Дисплей 3.5 на ILI9341 + atmega128

Сообщение от Devil Byte Посмотреть сообщение
отлета
Чего-чего?
Что до нокиевского - достаточно простая штука: не нужно париться со спрайтами 8×8 или 16×16 для цвета.
Кстати, погуглил: в 328 аврке всего лишь 2кБ ОЗУ. Этого вообще никак не хватит для работы с цветным экранчиком.
__________________
Союз Советских Социалистических Округов Северной Америки

Последний раз редактировалось eddy; 24.03.2024 в 21:59.
eddy вне форума  
Непрочитано 24.03.2024, 22:15  
Devil Byte
Временная регистрация
 
Регистрация: 07.03.2019
Сообщений: 87
Сказал спасибо: 11
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Devil Byte на пути к лучшему
По умолчанию Re: Дисплей 3.5 на ILI9341 + atmega128

Сообщение от eddy Посмотреть сообщение
2кБ ОЗУ. Этого вообще никак не хватит для работы с цветным экранчиком.
У меня 4кб, atmega128. Сейчас нашел в коробке экран 2.2 дюйма.
BD663474
Смог его запустить, получается выводить текст. Но пока не понял как изменить размер шрифта, я так понимаю что ее прийдется дописать(. но в целом при запуске теста дисплея для меня приемлемая скорость отработки
Вложения:
Тип файла: zip ДСВ22.zip (5.1 Кб, 0 просмотров)

Последний раз редактировалось Devil Byte; 24.03.2024 в 22:59.
Devil Byte вне форума  
Непрочитано 25.03.2024, 05:32  
NewWriter
Заблокирован
 
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,486
Сказал спасибо: 396
Сказали Спасибо 2,220 раз(а) в 1,319 сообщении(ях)
NewWriter на пути к лучшему
По умолчанию Re: Дисплей 3.5 на ILI9341 + atmega128

Сообщение от Devil Byte Посмотреть сообщение
Но пока не понял как изменить размер шрифта,
Ну как - просто найти другой шрифт (массив шрифта) другого размера. Или сделать свой шрифт с помощью программулины-генератора шрифтов. Например, DotFactory.
NewWriter вне форума  
Сказали "Спасибо" NewWriter
Devil Byte (25.03.2024)
Непрочитано 25.03.2024, 06:39  
Devil Byte
Временная регистрация
 
Регистрация: 07.03.2019
Сообщений: 87
Сказал спасибо: 11
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Devil Byte на пути к лучшему
По умолчанию Re: Дисплей 3.5 на ILI9341 + atmega128

Сообщение от NewWriter Посмотреть сообщение
просто найти другой шрифт Или сделать свой шрифт .
Вчера попытался написать функцию увеличения через коэффициент.

Нажмите, чтобы открыть спойлер
PHP код:
void PutCharLarge(uint16_t Xposuint16_t Yposuint8_t ASCIuint16_t charColoruint16_t bkColoruint8_t scale) {
    
uint16_t ijkl;
    
uint8_t buffer[16], tmp_char;
    
uint8_t width scale;
    
uint8_t height 16 scale// для простоты масштабирования в 2 раза

    
GetASCIICode(bufferASCI); // функция для получения битовой карты символа

    
for (0‹ 16i++) {
        for (
0‹ scalek++) { // добавляем цикл для масштабирования по вертикали
            
tmp_char buffer[i];
            for (
0‹ 8j++) {
                for (
0‹ scalel++) { // добавляем цикл для масштабирования по горизонтали
                    
if ((tmp_char ›› (j)) & 0x01) {
                        
LCD_SetPoint(Xpos scale lYpos scale kcharColor);
                        } else {
                        
LCD_SetPoint(Xpos scale lYpos scale kbkColor);
                    }
                }
            }
        }
    }
}

void GUI_TextLarge(uint16_t Xposuint16_t Yposuint8_t *struint16_t Coloruint16_t bkColoruint8_t scale) {
    
uint8_t TempChar;
    do {
        
TempChar = *str++;
        
PutCharLarge(XposYposTempCharColorbkColorscale);
        
Xpos += scale// увеличиваем шаг для X координаты согласно масштабу шрифта
        
        // переход на новую строку или обработка других условий, если нужно 

Но во первых, я смог только увеличить шрифт кратно, и такое чувство что когда ставишь два, то он его раза в 4 увеличивает. ну и плюс это сказалось на производительности. лучше в общем найти готовый шрифт
Devil Byte вне форума  
Непрочитано 25.03.2024, 11:52  
sanya
Временная регистрация
 
Регистрация: 10.11.2016
Сообщений: 53
Сказал спасибо: 6
Сказали Спасибо 16 раз(а) в 13 сообщении(ях)
sanya на пути к лучшему
По умолчанию Re: Дисплей 3.5 на ILI9341 + atmega128

Сообщение от eddy Посмотреть сообщение
Кстати, погуглил: в 328 аврке всего лишь 2кБ ОЗУ. Этого вообще никак не хватит для работы с цветным экранчиком.
Это почему не хватит?
sanya вне форума  
Непрочитано 25.03.2024, 12:14  
sanya
Временная регистрация
 
Регистрация: 10.11.2016
Сообщений: 53
Сказал спасибо: 6
Сказали Спасибо 16 раз(а) в 13 сообщении(ях)
sanya на пути к лучшему
По умолчанию Re: Дисплей 3.5 на ILI9341 + atmega128

Сообщение от eddy Посмотреть сообщение
// ну и не пройду мимо и еще раз пристыжу: позорище-то какое! Ни документацию ТС не в состоянии почитать, ни код написать…
Вот Вы других стыдите, а похоже сами даташит на дисплей не разу не заглядывали. Про регистры "окна вывода" похоже не слыхали, и оперируете только буфером вывода. Т.е. обновляете весь экран целиком при каждом выводе?
sanya вне форума  
Непрочитано 25.03.2024, 12:21  
DanilinSA
Почётный гражданин KAZUS.RU
 
Регистрация: 25.11.2010
Адрес: г. Дзержинск Нижегородская обл.
Сообщений: 1,714
Сказал спасибо: 130
Сказали Спасибо 1,108 раз(а) в 527 сообщении(ях)
DanilinSA на пути к лучшему
По умолчанию Re: Дисплей 3.5 на ILI9341 + atmega128

Смотря для чего. И как организовать вывод. Если делать "в лоб" с организацией видеостраницы - естественно не хватит. А если обрисовывать поэтапно - все будет нормально.
Я в такой ситуации разбил экран на зоны и отрабатывал каждую зону путем прямой записи в память видеоэкрана.
DanilinSA вне форума  
Непрочитано 25.03.2024, 12:24  
eddy
Почётный гражданин KAZUS.RU
 
Аватар для eddy
 
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,627
Сказал спасибо: 115
Сказали Спасибо 814 раз(а) в 591 сообщении(ях)
eddy на пути к лучшему
По умолчанию Re: Дисплей 3.5 на ILI9341 + atmega128

Сообщение от sanya Посмотреть сообщение
Т.е. обновляете весь экран целиком при каждом выводе?
Конечно: это проще, чем прикидывать, какая область у тебя обновилась - еще один буфер заводить придется с флагами. Да и что там пересылать-то? DMA запустил на два буфера, оно и "само", разве что в прерываниях на половину передачи выставляет флаг для заполнения второго буфера.

Сообщение от sanya Посмотреть сообщение
Это почему не хватит?
Ну вот пусть даже будет экран 128×128 пикселей. Для битовой информации получаем 16·128=2кБ памяти + на цветовые спрайты 256 байт + два буфера по 256 байт для передачи по SPI данных в формате экрана.
__________________
Союз Советских Социалистических Округов Северной Америки
eddy вне форума  
 

Закладки

Метки
atmega128, lcd
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
arduino mega 2560 и ILI9341 как симулировать? ruvdos Proteus 0 02.12.2020 02:55
Дисплей ILI9341 на STM32F429 по SPI radian ARM 4 12.11.2017 05:55
Дисплей BL12864CYPNH потух Касьян Песочница (вопросы новичков) 0 28.06.2014 00:47
Текстовый дисплей PILZ PX 150-40-RFL ratfor1 Производственное оборудование 2 21.12.2013 00:16
Разбили дисплей анемометра Sopromat2 Измерительное оборудование 11 01.02.2012 21:47


Часовой пояс GMT +4, время: 02:54.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot