Сензорен екран TFT 2

Този вид ламарина, траш и хардкор!

С този екран без половин литър, за да разбера невъзможно!

Е, аз изрази възмущението си, сега можете да се пристъпи към инструкциите за свързване на сензорен екран за Arduino. Както може би се досещате от заглавието на статията - ще свържете TFT сензорен екран 2,4 инча.

Сензорен екран TFT 2

Взех готова библиотека за работа с едно докосване на екрана - Adafruit_TFTLCD и TouchScreen (те няма да се разпространява, и толкова много в интернет), и се опита да нарисува един пример от извадката.

Не казвам, че бях изненадан, когато нищо не работи, но това бях малко разстроен.

След това, аз се опитах 5 различни библиотеки, но все пак всичко напразно.

Изведнъж, се натъкнах на една библиотека, написан специално за този контролер SPFD5408 - GitHub архив или на нашия уебсайт. Опитах да я стартирате, аз бях освободен, когато екранът се появява надпис, и вече започна да пее, но тогава бях разочарован - на сензорния екран не работи. По-точно тя работи, но само веднъж и невъзпитан човек в определено място. Започнах да грешим на екрана също, но реши да завърши цялата работа чрез и отиде да сравнявате библиотеки кодове.

стандартна библиотека устройство селекция Adafruit_TFTLCD идва със следния код:

Тъй като ние имаме шофьор ILI9341. кода, на теория, трябва да бъде 0x9341. Разбира се, не. Този идентификатор не иска да бъде дефинирана, и така всичкия код се промени на:

Добре, сега нека да се опитаме с пример за показване на изображение от USB устройство.

Кодът в този пример е твърде дълъг, така че ще го оставя на pastebin

Този код вече е определен за нашия дисплей, така че лесно да се създаде един образ в BMP формат 320x240 и я напълнете с пръчката. Попълних в следното изображение:

Сензорен екран TFT 2

И това се е случило, че имам тук:

Сензорен екран TFT 2

Е, много добър. Цвят ясно, и показва, че наред. Дотук добре.

Сега, ние се опитваме да проверим нашата тъчпад в действие.

Този код също е на проби, но той отказва да работи със стандартната TouchScreen.h. Така че аз го заменя с SPFD5408_TouchScreen.h на SPFD5408 библиотека

След като координатите на екрана тичаха кликванията ми, разбрах, че тя не е на екрана, и в библиотеката.

Сензорен екран TFT 2

И аз започнах да се рови в библиотеката код SPFD5408 и неговите примери.

Намерих един куп грешки. Така например, на дисплея не дава ширината и височината на вашата идентификация и много различни данни. В допълнение, х е по някаква причина у. и обратно. Всичко, което е възможно е объркан и объркан.

С една дума, след няколко часа код за коригиране Имам всичко работи, и мога да кажа с чиста съвест да споделя с вас въз основа на примери SPFD5408 библиотека

Тъй като всички примери съм тромава, отново, да ги изпълни по Pastebin (под скици работи само с дисплей 2.4 "(320x240). Ширина и височина zahardkozheny The там.)

Първото нещо, което имаме, е калибриране на дисплея, защото, когато го пробвах на нещо, което да се тегли чертата е имало сантиметра по-долу и в ляво от мястото, където Докоснах с пръст, така че първата ни otkalibruem екран с този код

Първо да се докоснат до 2 точки в различни краища на екрана

Сензорен екран TFT 2
Сензорен екран TFT 2

Тогава ще получим данни:

Сензорен екран TFT 2

Следователно ние трябва само 4 числа. Когато те поставете обясня по-долу.

След докосване на екрана и да се провери къде сме докоснете екрана, синя точка.

Сензорен екран TFT 2

Но като цяло, както и всички. Ние помним нашите данни, както и по-добър запис, и да се обърнат към примера на боя. Коригирана код, можете да намерите връзка, и единственото нещо, което има да се промени, е нашите калибриране на данните. Всички променливи, които сме получили с помощта на калибриране, ние въвеждаме в редове 15-18

След план, и ние получаваме голяма боя;)

Сензорен екран TFT 2

Проверени екрана, сензорът е повреден мислене.
PEINT рисува точки и навсякъде.
Калибрирането - не отговори на екрана ми е натиснат, докато не случайно удари от другата страна на екрана. Оказва се, че първата точка за изпитване в горния ляв ъгъл, а аз натиснете горния десен ъгъл и тестът е успешен.
Обърнат X.
Подозирам, че китайците са били неправилно запоени (слепени) докосване.

Както е правилно да се лекува?

@KblCb: Абонамент за този въпрос. Такако абсолютно същия проблем, 12:59. Как може това да се поправи? И аз не отида там в ъгъла - сензора не е много точна. И разбира се спазват тя работи за първи път, за разлика от AdaFruit.

Благодарим Ви! помогна допълнително добавя български език сега всички са включени!

Когато започнете spfd5408_graphicstest се вижда на екрана, която се променя, но винаги свети бяло.
Мониторингът на пристанището, както следва:
TFT LCD тест
Използването Adafruit 2.8 "TFT Breakout Board Pinout
Benchmark време (микросекунди)
Screen запълване 1785884
Текст 306012
линии 1795820
Хор / Vert Lines 212724
Правоъгълници (контур) 157720
Правоъгълници (пълнеж) 4677436
Кръгове (пълнеж) 2039028
Кръгове (контур) 781 100
Триъгълници (контур) 569 748
Триъгълниците (пълнеж) 2512612
Заоблени rects (контур) 353696
Кръгла rects (пълнеж) 5523208
Готово!