Friday, April 7, 2017

Arduino_LCD_TFT_SDcard_shield_breakout

Using a Arduino TFT LCD shield in your project has some disadvantages.
1) The LCD TFT and SDcard occupy most of the IO pins on an Arduino Uno.
2) The IO pins are not easy accessible to connect other hardware.
This blogpost describes how i solved this second issue.
When using the shield with the LCD TFT the SDcard fee IO pins are :


  • A5 Analog5
  • D0 RX
  • D1 TX

  • D0 and D1 are also used for serial communication over USB but can be used if the Arduino is used standalone.
    For interfacing i also wanted access to GND, +5V and 3V3.
    I used some colored cables with a female Dupont connectors on one side. Male connectors can easy give short circuit if not in use, so i used female.
    You can easy create them from cutting a long Dupont Cables in two parts.
    I put them trough heat shrink tube and soldered them on my LCD TFT shield.
    You can use any color scheme, but Black for GND  and Red for the Power can give less confusion in your projects. I used this colors:
    3V3Orange
    +5VRed
    GNDBlack
    A5 Analog5Brown
    D0 RXGreen
    D1 TXYellow
    After soldering and arranging the cables i heated heat shrink tube.
    The female Dupont connectors are available to interface your project.
    As there are some differences between the shields i do not provide a script to display the analog signal on the TFT LCD for testing. Better use the Arduino program below that sends the Analog signal A5 to the serial (USB) port.

    /* 2016 Analog A5 JanJeronimus
    Get Analog 5 value every second
    Writes time [ uptime millis() ]  , 
     analog gas sensor value to the serial port
    */

    const int PinA5 = A5 ; //Connect Arduino analog A5 pin to sensor

    int val = 0;     // variable to store the Digital read value

    void setup()
    {
    Serial.begin(9600); //Initialize serial port - 9600 bps
    }

    void loop()
    {
    Serial.print( millis() ) ;
    Serial.print( " ,  " ) ;
    Serial.println( analogRead(PinA5) );
    delay(1000); // Print value every 1 sec.
    }

    On codebender :





    No comments: