【问题标题】:Getting Mbed Nucleo F401RE to work with LCD TFT HX8347让 Mbed Nucleo F401RE 与 LCD TFT HX8347 一起使用
【发布时间】:2016-06-21 10:33:49
【问题描述】:

我对此很陌生。

我有一个 2.8 英寸 TFT LCD (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??)。

【问题讨论】:

    标签: c++ screen lcd mbed


    【解决方案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);
    

    下图显示了 LCD 显示器的连接方式: LCD connectivity

    下图列出了您板上的可用引脚: Board pinout

    这是您应该使用的连接

    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);
    

    希望这对你有用!

    【讨论】:

      猜你喜欢
      • 2015-01-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-18
      • 2021-07-19
      • 1970-01-01
      相关资源
      最近更新 更多