Pull to refresh

Comments 8

Arduino ide прекрасно сохраняет bin файлы. Никуда они не пропадают.

bin не пропадают, но там еще куча промежуточных файлов типа .o которые для того и придуманы чтобы не перекомпилировать все файлы с исходниками каждый раз

Хотел еще поблагодарить авторов материалов которые были использованы для вдохновения:

https://habr.com/ru/articles/748198/ практический пример использования упомянутого здесь ESP32-8048S070

https://habr.com/ru/companies/epam_systems/articles/522730/ подробно про программирование ESP32

Поддержка T-Display S3 официально добавлена в Arduino (по крайней мере в текущей версии arduinoesp v3.0.2). Пошивка идет при помощи esptool через виртуальный comport. Для входа в режим прошивки нужно зажать кнопку boot и перезагрузить контроллер. Поскольку это лениво то стало интересно - как бы это автоматизировать. Традиционные способы через встроенный usb порт не работают, но в esptool есть опции для перезагрузки через "usb_reset". Нужно только поправить файл boards.txt в папке arduino - там 3 одинаковые строки для прошивки в разных режимах. а можно ведь туда и прошивание openocd через jtag добавить там где это поддерживается.

Запустил и отладку, уже на другой машин. под Linux и openocd новее. Вышло занятно: через кабель и /dev/ACM оно шьется без вопросов, та вот openocd выдавала массовые ошибки. решилось заменой usb кабеля на более короткий. Отладка прошивки в фреймворке arduino удовольствия не доставила : поскольку там либы без исходников отладчик регулярно уходил в дизасм, и вообще все подтупливало и подвешивалось. а вот чистый esp_idf ходил в отладчике без казусов.

это я все с vs code игрался. решил ради нативного esp_idf попробовать нативный expressif-ide - в девичестве не самый свежий eclipse со свежим плагином от expressif.

вызвали напряги настройки конфига для отладки, доигрался до глюков в eclipse и не работоспособностью прошивки через usb_jtag. Очистил flash через esptool (причем из arduino) и еще раз сменил usb кабель. заработало заотлаживалось. рекомендую почитать https://github.com/espressif/idf-eclipse-plugin/blob/master/README.md

Как уже говорилось , в esp_idf есть пример для работы с дисплеем по интерфейсу 8080 но не для рассматриваемой платы. Пришлось допиливать, и некоторые нюансы были вовсе не очевидны: встроенная PSRAM в ESP32S3 (SPIPSRAM надо отключить), механизмы выделения памяти под буфер экрана, некоторые gpio надо отконфигруировать самому. После этого пример хоть как то заработал, но весьма кривенько. Но эти допилы уже сделали и выложили готовые: https://github.com/krupis/T-Display-S3-esp-idf https://github.com/hiruna/esp-idf-t-display-s3

собственно с gpio в этих примерах разобрались плоховато

для подключения дисплея T-Display-S3  используются следующие сигналы.:

данные D0-D7, стробы WR,RD,DC,CS, сброс RES, управление подсветкой BL (можно сделать ШИМ управление яркостью), а также управление питанием PWRON

Библиотека liblcd которая в esp_idf сама настраивает нужные gpio но не все. RD никак не трогается, по логике он должен быть в "1", в примере lilgo так и сделано, тем не менее в примерах выше, а так же в библиотеке LVGD этот пин устанавливается в состояние подтянутого входа, что, в принципе тоже работает. А вот в библиотеке TFT_eSPI сигнал RD вполне может использоваться по назначению. А вот сигнал WR любят называть PCKL.

Sign up to leave a comment.

Articles