Сегодня я поведаю о том, как подключить к Arduino настоящий TFT дисплей. В качестве последнего будем использовать 1.8-дюймовый TFT с SPI интерфейсом, который был куплен мной на ebay за $5.65. Китайский экранчик имеет разрешение 128х160, и (скорее всего) управляется драйвером ST7735R, который обеспечивает отображение 18-битного цвета (262144 оттенков). На плате устройства также размещается регулятор напряжения 5->3.3 и слот для SD карт, который можно использовать для хранения изображений и последующего их вывода на дисплей. ПодключениеНа плате имеется 16 выводов, три из которых не используются. Выводы 11-14 подключены к разъему SD карты.
Программный SPIСуществует два основных варианта подключения Arduino и дисплея через SPI. В первом случае, можно использовать любые из GPIO выводов Arduino, но при этом будет использован медленный программный SPI драйвер. Пример такой схемы подключения представлен ниже.
Аппаратный SPIКак известно, Arduino имеет встроенный аппаратный SPI. На Arduino Nano для этого используются выводы с 10 по 13.
Аппаратный SPI + SD картаКак я уже написал, на плате дисплея есть слот для SD карт. Чтобы была возможность выводить с карты битмапы, слот, также как и сам дисплей, необходимо подключить к SPI шине.
ПрограммаДля управления дисплеем воспользуемся библиотеками Adafruit_ST7735 и Adafruit_GFX. Первая непосредственно дружит с драйвером дисплея, а вторая предоставляет функции для рисования разных геометрических фигур. Для установки этих библиотек, потребуется скачать соответствующие архивы о указанным ссылкам, распаковать их в папку с установленным Arduino IDE: .../arduino/libraries. И не забыть переименовать их, убрав из названия символ "-" (иначе либы не подключатся). После установки указанных библиотек, в списке примеров появится новый раздел Adafruit_ST7735, из которого нам понадобятся только три примера. Для первых двух тестов я снял небольшое кино, с тем чтобы было понятно, как влияет использование аппаратного SPI на скорость отрисовки геометрии. |
События >