Fork of https://os.mbed.com/users/sebastiken/code/Adafruit_RA8875/ ; Adapted for use with K64F and in the process of adding more functions.

Dependencies:   mbed BNO055

Committer:
sebastiken
Date:
Fri Sep 08 16:30:24 2017 +0000
Revision:
2:040a687cea93
Parent:
0:66c1aa3d198e
Child:
3:4a3e169866a2
[FIX] spi_speed to 1Mhz; [MOD] Uncomment GFX methods

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sebastiken 0:66c1aa3d198e 1 #include "RA8875.h"
sebastiken 0:66c1aa3d198e 2 //#include "Adafruit_GFX.h"
sebastiken 0:66c1aa3d198e 3
sebastiken 0:66c1aa3d198e 4 // Library only supports hardware SPI at this time
sebastiken 0:66c1aa3d198e 5 // Connect SCLK to UNO Digital #13 (Hardware SPI clock)
sebastiken 0:66c1aa3d198e 6 // Connect MISO to UNO Digital #12 (Hardware SPI MISO)
sebastiken 0:66c1aa3d198e 7 // Connect MOSI to UNO Digital #11 (Hardware SPI MOSI)
sebastiken 0:66c1aa3d198e 8 #define MOSI PTD6
sebastiken 0:66c1aa3d198e 9 #define MISO PTD7
sebastiken 0:66c1aa3d198e 10 #define SCLK PTD5
sebastiken 0:66c1aa3d198e 11 #define CS PTD4
sebastiken 0:66c1aa3d198e 12 #define RST PTD2
sebastiken 0:66c1aa3d198e 13
sebastiken 0:66c1aa3d198e 14
sebastiken 0:66c1aa3d198e 15 Adafruit_RA8875 tft = Adafruit_RA8875(MOSI, MISO, SCLK, CS, RST);
sebastiken 0:66c1aa3d198e 16 uint16_t tx, ty;
sebastiken 0:66c1aa3d198e 17
sebastiken 0:66c1aa3d198e 18 Serial pc(USBTX, USBRX); // tx, rxSerial pc(USBTX, USBRX); // tx, rx
sebastiken 0:66c1aa3d198e 19
sebastiken 0:66c1aa3d198e 20 int main()
sebastiken 0:66c1aa3d198e 21 {
sebastiken 0:66c1aa3d198e 22 pc.baud(9600);
sebastiken 0:66c1aa3d198e 23 pc.printf("RA8875 start\n");
sebastiken 0:66c1aa3d198e 24
sebastiken 0:66c1aa3d198e 25 /* Initialise the display using 'RA8875_480x272' or 'RA8875_800x480' */
sebastiken 0:66c1aa3d198e 26 if (!tft.begin(RA8875_480x272)) {
sebastiken 0:66c1aa3d198e 27 pc.printf("RA8875 Not Found!\n");
sebastiken 0:66c1aa3d198e 28 while (1);
sebastiken 0:66c1aa3d198e 29 }
sebastiken 0:66c1aa3d198e 30
sebastiken 0:66c1aa3d198e 31 tft.displayOn(true);
sebastiken 0:66c1aa3d198e 32 tft.GPIOX(true); // Enable TFT - display enable tied to GPIOX
sebastiken 0:66c1aa3d198e 33 tft.PWM1config(true, RA8875_PWM_CLK_DIV1024); // PWM output for backlight
sebastiken 0:66c1aa3d198e 34 tft.PWM1out(255);
sebastiken 0:66c1aa3d198e 35 tft.fillScreen(RA8875_BLACK);
sebastiken 0:66c1aa3d198e 36
sebastiken 0:66c1aa3d198e 37 /* Switch to text mode */
sebastiken 0:66c1aa3d198e 38 tft.textMode();
sebastiken 0:66c1aa3d198e 39
sebastiken 0:66c1aa3d198e 40
sebastiken 0:66c1aa3d198e 41
sebastiken 0:66c1aa3d198e 42 /* Set a solid for + bg color ... */
sebastiken 0:66c1aa3d198e 43
sebastiken 0:66c1aa3d198e 44 /* ... or a fore color plus a transparent background */
sebastiken 0:66c1aa3d198e 45
sebastiken 0:66c1aa3d198e 46
sebastiken 0:66c1aa3d198e 47 /* Set the cursor location (in pixels) */
sebastiken 0:66c1aa3d198e 48 tft.textSetCursor(10, 10);
sebastiken 0:66c1aa3d198e 49
sebastiken 0:66c1aa3d198e 50 /* Render some text! */
sebastiken 2:040a687cea93 51 char string[] = "Hello, Nehuen! ";
sebastiken 0:66c1aa3d198e 52 tft.textTransparent(RA8875_WHITE);
sebastiken 0:66c1aa3d198e 53 tft.textWrite(string);
sebastiken 0:66c1aa3d198e 54 tft.textColor(RA8875_WHITE, RA8875_RED);
sebastiken 0:66c1aa3d198e 55 tft.textWrite(string);
sebastiken 0:66c1aa3d198e 56 tft.textTransparent(RA8875_CYAN);
sebastiken 0:66c1aa3d198e 57 tft.textWrite(string);
sebastiken 0:66c1aa3d198e 58 tft.textTransparent(RA8875_GREEN);
sebastiken 0:66c1aa3d198e 59 tft.textWrite(string);
sebastiken 0:66c1aa3d198e 60 tft.textColor(RA8875_YELLOW, RA8875_CYAN);
sebastiken 0:66c1aa3d198e 61 tft.textWrite(string);
sebastiken 0:66c1aa3d198e 62 tft.textColor(RA8875_BLACK, RA8875_MAGENTA);
sebastiken 0:66c1aa3d198e 63 tft.textWrite(string);
sebastiken 0:66c1aa3d198e 64
sebastiken 0:66c1aa3d198e 65 /* Change the cursor location and color ... */
sebastiken 2:040a687cea93 66 //tft.textSetCursor(100, 100);
sebastiken 2:040a687cea93 67 //tft.textTransparent(RA8875_RED);
sebastiken 0:66c1aa3d198e 68 /* If necessary, enlarge the font */
sebastiken 2:040a687cea93 69 //tft.textEnlarge(1);
sebastiken 0:66c1aa3d198e 70 /* ... and render some more text! */
sebastiken 2:040a687cea93 71 //tft.textWrite(string);
sebastiken 2:040a687cea93 72 //tft.textSetCursor(100, 150);
sebastiken 2:040a687cea93 73 //tft.textEnlarge(2);
sebastiken 2:040a687cea93 74 //tft.textWrite(string);
sebastiken 2:040a687cea93 75
sebastiken 2:040a687cea93 76 tft.drawCircle(100, 100, 50, RA8875_RED);
sebastiken 2:040a687cea93 77 tft.fillCircle(100, 100, 50, RA8875_RED);
sebastiken 0:66c1aa3d198e 78 }