Заставляем Mbed Nucleo F401RE работать с LCD TFT HX8347

Я новичок в этом.

У меня 2,8-дюймовый ЖК-экран TFT (HX8347), и в настоящее время я пытаюсь заставить его работать с моим Nucleo F401RE.

Я импортировал библиотеку, расположенную здесь: https://developer.mbed.org/users/Suky/code/LCDTFT/

Я удалил код для рисования изображений (он не нужен, и он выдает ошибку).

Проблема в том, что, похоже, в примере кода используется другой набор определений для контактов.

#include "mbed.h"
#include "LCDTFT.h"

BusOut  MyBus(p13,p14,p15,p16,p17,p18,p19,p20,p30,p29,p28,p27,p26,p25,p24,p23);
LCDTFT  MyLCD(p5,p6,p7,p22,p21,&MyBus);

Это вызывает ошибку, поскольку значения "p" не существуют. Итак, я решил, что это «D0», «D1», .... Но я совсем не уверен, даже какое отображение (оно идет на 30 ??).


person HedgepigMatt    schedule 21.06.2016    source источник


Ответы (1)


Некоторые исследования

Имена {p13, p14, p15 ...} взяты из файла PinNames.h.

Для справки вы можете посмотреть, как они определены для популярной платы LPC1768:

// mbed DIP Pin Names
p5 = P0_9,
p6 = P0_8,
p7 = P0_7,
p8 = P0_6,

Для NUCLEO_F401RE {p1, p2, ...} не определены, но {PA_0, PA_1, ...} определены.

PA_0  = 0x00,
PA_1  = 0x01,
PA_2  = 0x02,
PA_3  = 0x03,

Решение

Вам необходимо указать правильные имена контактов.

Конструктор LCDFT из заголовочного файла библиотеки:

LCDTFT(PinName PIN_RD,PinName PIN_WR,PinName PIN_RS,PinName PIN_CS,PinName PIN_RESET, BusOut *BUSLCD);

На следующей схеме показано, как подключить ЖК-дисплей: Подключение ЖК-дисплея

На следующей схеме перечислены доступные контакты на вашей плате: Распиновка платы

Это соединение, которое вы должны использовать

PIN_RD ‹--> mosi ‹--> PA_7

PIN_WR ‹--> мисо ‹--> PA_6

PIN_RS ‹--> sck ‹--> PA_5

PIN_CS ‹--> PwmOut ‹--> PA_0

PIN_RESET ‹--> PwmOut ‹--> PA_1

BusOut: это могут быть любые свободные выходные контакты, так что.

Ну наконец то

#include "mbed.h"
#include "LCDTFT.h"

BusOut  MyBus(A2,A3,A4,A5,D0,D1,D2,D3,D4,D5,D6,D7,D8,D9,D10,D14,D15);
LCDTFT  MyLCD(PA_7,PA_6,PA_5,PA_0,PA_1,&MyBus);

Надеюсь, что это работает для вас!

person Dan Shemesh    schedule 08.08.2016