Lib for FTDI FT800 graphic controller "EVE" The API is changed from the FTDI original names. It use smaller names now. DL() will add something to the display list instead of Ft_App_WrCoCmd_Buffer ... The FTDI programmer Guide is also using this commands.

Dependents:   FT800_RGB_demo FT800_RGB_demo2 FT800_demo_for_habr Temp_&_RH_at_TFT-demo ... more

Fork of FT800 by Peter Drescher

The mbed is talking thru the SPI interface with the graphic engine. We have to set up a list of Commands and send them to the FT800 to get graphics.

Hardware

1. VM800C development modules from FTDI : http://www.ftdichip.com/Products/Modules/VM800C.html

The modules come with different size lcd. 3.5", 4.3" or 5" or without. /media/uploads/dreschpe/ftdi_eve.jpg The picture shows a modified board, because my lcd had a different pinout. The mbed is connected to the pin header on the bottom.

2. EVBEVE-FT800 board from GLYN: http://www.glyn.com/News-Events/Newsletter/Newsletter-2013/October-2013/A-quick-start-for-EVE-Requires-no-basic-knowledge-graphics-sound-and-touch-can-all-be-learned-in-minutes

The module has a 40 pin flex cable connector to connect a display out of the EDT series.

/media/uploads/dreschpe/glyn_eve.jpg

The mbed is connected via the pin header on the left. If you use this board with a EDT display you have to uncomment the #define Inv_Backlite in FT_LCD_Type.h, because the backlight dimming is inverted.

3. ConnectEVE board from MikroElektronika http://www.mikroe.com/add-on-boards/display/connecteve/#headers_10 The board has also a pin header to connect the mbed. - not tested, but it looks like the other boards.

4. ADAM arduino shield http://www.4dsystems.com.au/product/4DLCD_FT843/ Component page : http://mbed.org/components/ADAM/

Works with the NUCLEO boards, but you have to patch three wires.

/media/uploads/dreschpe/adam.jpg

Connection

We need 5 signals to connect to the mbed. SCK, MOSI and MISO are connected to a SPI channel. SS is the chip select signal and PD work as powerdown. The additional INT signal is not used at the moment. It is possible to generate a interrupt signal, but at the moment you have to poll the status register of the FT800 to see if a command is finished.

Software

This lib is based on the demo code from FTDI. If you want to use it, you have to read the programming manual : http://www.ftdichip.com/Support/Documents/ProgramGuides/FT800%20Programmers%20Guide.pdf

See my demo : http://mbed.org/users/dreschpe/code/FT800_RGB_demo/

Committer:
dreschpe
Date:
Tue Feb 10 23:32:22 2015 +0000
Revision:
6:16e22c789f7d
Add function to read/write touch calibration data.; Add color names  ; Add a patch from  Ivano Pelicella to draw flat buttons

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dreschpe 6:16e22c789f7d 1 // color definitions for FT800 controler
dreschpe 6:16e22c789f7d 2
dreschpe 6:16e22c789f7d 3 #define Red 255,0,0
dreschpe 6:16e22c789f7d 4 #define Pink 255,192,203
dreschpe 6:16e22c789f7d 5 #define DarkRed 139,0,0
dreschpe 6:16e22c789f7d 6 #define OrangeRed 255,69,0
dreschpe 6:16e22c789f7d 7 #define Orange 255,165,0
dreschpe 6:16e22c789f7d 8 #define Gold 255,215,ß
dreschpe 6:16e22c789f7d 9 #define Yellow 255,255,0
dreschpe 6:16e22c789f7d 10 #define LightYellow 255,255,224
dreschpe 6:16e22c789f7d 11 #define Magenta 255,0,255
dreschpe 6:16e22c789f7d 12 #define Indigo 75,0,130
dreschpe 6:16e22c789f7d 13 #define SlateBlue 106,90,205
dreschpe 6:16e22c789f7d 14 #define Blue 0,0,255
dreschpe 6:16e22c789f7d 15 #define DarkBlue 0,0,139
dreschpe 6:16e22c789f7d 16 #define SkyBlue 135,206,235
dreschpe 6:16e22c789f7d 17 #define LightBlue 173,216,230
dreschpe 6:16e22c789f7d 18 #define White 255,255,255
dreschpe 6:16e22c789f7d 19 #define Black 0,0,0
dreschpe 6:16e22c789f7d 20 #define Gray 128,128,128
dreschpe 6:16e22c789f7d 21 #define DarkGray 169,169,169
dreschpe 6:16e22c789f7d 22 #define Silver 192,192,192
dreschpe 6:16e22c789f7d 23 #define Brown 165,42,42
dreschpe 6:16e22c789f7d 24 #define Green 0,128,0
dreschpe 6:16e22c789f7d 25 #define DarkGreen 0,100,0
dreschpe 6:16e22c789f7d 26 #define YellowGreen 154,205,50
dreschpe 6:16e22c789f7d 27 #define Olive 128,128,0
dreschpe 6:16e22c789f7d 28 #define Lime 0,255,0
dreschpe 6:16e22c789f7d 29 #define Purple 128,0,128
dreschpe 6:16e22c789f7d 30 #define Tomato 255,99,71
dreschpe 6:16e22c789f7d 31 #define Violet 235,130,238
dreschpe 6:16e22c789f7d 32 #define Plum 221,160,221
dreschpe 6:16e22c789f7d 33 #define GreenYellow 173,255,47
dreschpe 6:16e22c789f7d 34 #define Cyan 0,255,255
dreschpe 6:16e22c789f7d 35 #define Aquamarine 127,255,212
dreschpe 6:16e22c789f7d 36 #define LightGray 211,211,211
dreschpe 6:16e22c789f7d 37
dreschpe 6:16e22c789f7d 38