Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Diff: demo.cpp
- Revision:
- 0:a5ef6bc3c2e8
- Child:
- 2:81eaaa491a02
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/demo.cpp Thu Sep 08 13:35:36 2016 +0000 @@ -0,0 +1,377 @@ + +#include "mbed.h" +#include "Picaso_4DGL-32PTU.h" + +#define SHORT_WAIT 500 +#define LONG_WAIT 2000 + +//************************************************************************** +// Demo program that goes through graphics based functions +//************************************************************************** +void TFT_4DGL :: graphicsDemo() { + + cls(); + screenOrientation(1); // set orientation to landscape + puts("This is the Graphics functions demo"); + wait_ms(LONG_WAIT); + cls(); + + puts("\nLets change all the "); + textFgColor(PURPLE_MSB, PURPLE_LSB); + puts("PURPLE"); + textFgColor(YELLOW_MSB, YELLOW_LSB); + puts(" bits to yellow"); + textFgColor(GREEN_MSB, GREEN_LSB); // set color back to green + wait_ms(LONG_WAIT); + changeColor(PURPLE_MSB, PURPLE_LSB, YELLOW_MSB, YELLOW_LSB); + wait_ms(LONG_WAIT); + cls(); + + puts("Lets draw some shapes:"); + wait_ms(LONG_WAIT); + cls(); + drawCircle(100, 100, 20, RED_MSB, RED_LSB); + +} + +//************************************************************************** +// Demo program that goes through main functions +//************************************************************************** +void TFT_4DGL :: mainDemo() { + + cls(); + puts("This is the main functions demo"); + wait_ms(LONG_WAIT); + cls(); + + puts("\nBaudrates:"); + wait_ms(LONG_WAIT); + cls(); + baudrate(4800); + puts("\n4800"); + wait_ms(SHORT_WAIT); + cls(); + baudrate(9600); + puts("\n9600"); + wait_ms(SHORT_WAIT); + cls(); + baudrate(14400); + puts("\n14400"); + wait_ms(SHORT_WAIT); + cls(); + baudrate(19200); + puts("\n19200"); + wait_ms(SHORT_WAIT); + cls(); + baudrate(38400); + puts("\n38400"); + wait_ms(SHORT_WAIT); + cls(); + baudrate(56000); + puts("\n56000"); + wait_ms(SHORT_WAIT); + cls(); + baudrate(57600); + puts("\n57600"); + wait_ms(SHORT_WAIT); + cls(); + baudrate(115200); + puts("\n115200"); + wait_ms(SHORT_WAIT); + cls(); + baudrate(9600); + puts("\nSet back to 9600"); + wait_ms(LONG_WAIT); + cls(); + + puts("\nOrientation:"); + wait_ms(LONG_WAIT); + cls(); + screenOrientation(1); + puts("landscape"); + wait_ms(SHORT_WAIT); + cls(); + screenOrientation(2); + puts("landscape rewersed"); + wait_ms(SHORT_WAIT); + cls(); + screenOrientation(3); + puts("portrait"); + wait_ms(SHORT_WAIT); + cls(); + screenOrientation(4); + puts("portrait rewersed"); + wait_ms(LONG_WAIT); + screenOrientation(1); // set back screen to landscape + cls(); + +} + +//************************************************************************** +// Demo program that goes through text based functions +//************************************************************************** +void TFT_4DGL :: textDemo() { + + cls(); + screenOrientation(1); // set screen to landscape + puts("This is the Text functions demo"); + wait_ms(LONG_WAIT); + cls(); + + puts("\nText attributes:"); + wait_ms(LONG_WAIT); + //cls(); + puts("\n\n"); + textAttributes(16); + puts("\nBOLD"); + wait_ms(SHORT_WAIT); + textAttributes(16 + 32); + puts("\nBOLD & ITALIC"); + wait_ms(SHORT_WAIT); + textAttributes(16 + 32 + 64); + puts("\nBOLD & ITALIC & INVERSE"); + wait_ms(SHORT_WAIT); + textAttributes(16 + 32 + 64 + 128); + puts("\nBOLD & ITALIC & INVERSE & UNDERLINE"); + wait_ms(LONG_WAIT); + textAttributes(0); // set everything back to normal + cls(); + + puts("\nText modes:"); + wait_ms(LONG_WAIT); + cls(); + textBold(1); + puts("\nBOLD:"); + wait_ms(SHORT_WAIT); + textBold(0); + textInverse(1); + puts("\nINVERSE:"); + wait_ms(SHORT_WAIT); + textInverse(0); + textItalic(1); + puts("\nITALIC:"); + wait_ms(SHORT_WAIT); + textItalic(0); + textUnderline(1); + puts("\nUNDERLINE:"); + wait_ms(SHORT_WAIT); + textUnderline(0); + wait_ms(LONG_WAIT); + cls(); + + puts("\nText gaps:"); + wait_ms(LONG_WAIT); + cls(); + if (textXGap(0) == 1) puts("\nX gap: 0"); + wait_ms(SHORT_WAIT); + if (textXGap(1) == 1) puts("\nX gap: 1"); + wait_ms(SHORT_WAIT); + if (textXGap(2) == 1) puts("\nX gap: 2"); + wait_ms(SHORT_WAIT); + if (textXGap(3) == 1) puts("\nX gap: 3"); + wait_ms(SHORT_WAIT); + if (textXGap(4) == 1) puts("\nX gap: 4"); + wait_ms(SHORT_WAIT); + if (textXGap(5) == 1) puts("\nX gap: 5"); + wait_ms(SHORT_WAIT); + if (textXGap(6) == 1) puts("\nX gap: 6"); + wait_ms(SHORT_WAIT); + puts("\n"); + textXGap(0); + if (textYGap(0) == 1) puts("\nY gap: 0"); + wait_ms(SHORT_WAIT); + if (textYGap(1) == 1) puts("\nY gap: 1"); + wait_ms(SHORT_WAIT); + if (textYGap(2) == 1) puts("\nY gap: 2"); + wait_ms(SHORT_WAIT); + if (textYGap(3) == 1) puts("\nY gap: 3"); + wait_ms(SHORT_WAIT); + if (textYGap(4) == 1) puts("\nY gap: 4"); + wait_ms(SHORT_WAIT); + if (textYGap(5) == 1) puts("\nY gap: 5"); + wait_ms(SHORT_WAIT); + if (textYGap(6) == 1) puts("\nY gap: 6"); + wait_ms(LONG_WAIT); + textYGap(0); + cls(); + + puts("Text width:"); + wait_ms(LONG_WAIT); + if (textWidth(1) == 1) puts("\nWidth: 1"); + wait_ms(SHORT_WAIT); + if (textWidth(2) == 1) puts("\nWidth: 2"); + wait_ms(SHORT_WAIT); + if (textWidth(3) == 1) puts("\nWidth: 3"); + wait_ms(SHORT_WAIT); + if (textWidth(4) == 1) puts("\nWidth: 4"); + wait_ms(SHORT_WAIT); + textWidth(1); + puts("\nText height:"); + wait_ms(LONG_WAIT); + //cls(); + if (textHeight(1) == 1) puts("\nHeight: 1"); + wait_ms(SHORT_WAIT); + if (textHeight(2) == 1) puts("\nHeight: 2"); + wait_ms(SHORT_WAIT); + if (textHeight(3) == 1) puts("\nHeight: 3"); + wait_ms(SHORT_WAIT); + if (textHeight(4) == 1) puts("\nHeight: 4"); + wait_ms(LONG_WAIT); + textHeight(1); + cls(); + + puts("Fonts:"); + wait_ms(LONG_WAIT); + cls(); + setFont(1); + puts("\nThis is Font 1"); + wait_ms(SHORT_WAIT); + setFont(2); + puts("\nThis is Font 2"); + wait_ms(SHORT_WAIT); + setFont(3); + puts("\nThis is Font 3"); + wait_ms(LONG_WAIT); + cls(); + + + screenOrientation(3); + puts("\nText Background colors:"); + wait_ms(LONG_WAIT); + cls(); + textBgColor(BLACK_MSB, BLACK_LSB); + puts("\nBG color = BLACK"); + wait_ms(SHORT_WAIT); + textBgColor(NAVY_MSB, NAVY_LSB); + puts("\nBG color = NAVY"); + wait_ms(SHORT_WAIT); + textFgColor(BLACK_MSB, BLACK_LSB); + textBgColor(DGREEN_MSB, DGREEN_LSB); + puts("\nBG color = DARK GREEN"); + wait_ms(SHORT_WAIT); + textBgColor(DCYAN_MSB, DCYAN_LSB); + puts("\nBG color = DARK CYAN"); + wait_ms(SHORT_WAIT); + textBgColor(PURPLE_MSB, PURPLE_LSB); + puts("\nBG color = PURPLE"); + wait_ms(SHORT_WAIT); + textBgColor(OLIVE_MSB, OLIVE_LSB); + puts("\nBG color = OLIVE"); + wait_ms(SHORT_WAIT); + textBgColor(GREY_MSB, GREY_LSB); + puts("\nBG color = GREY"); + wait_ms(SHORT_WAIT); + textBgColor(BLUE_MSB, BLUE_LSB); + puts("\nBG color = BLUE"); + wait_ms(SHORT_WAIT); + textBgColor(GREEN_MSB, GREEN_LSB); + puts("\nBG color = GREEN"); + wait_ms(SHORT_WAIT); + textBgColor(RED_MSB, RED_LSB); + puts("\nBG color = RED"); + wait_ms(SHORT_WAIT); + textBgColor(YELLOW_MSB, YELLOW_LSB); + puts("\nBG color = YELLOW"); + wait_ms(SHORT_WAIT); + textBgColor(G_YELLOW_MSB, G_YELLOW_LSB); + puts("\nBG color = GREEN YELLOW"); + wait_ms(SHORT_WAIT); + textBgColor(WHITE_MSB, WHITE_LSB); + puts("\nBG color = WHITE"); + wait_ms(SHORT_WAIT); + textBgColor(ORANGE_MSB, ORANGE_LSB); + puts("\nBG color = ORANGE"); + wait_ms(SHORT_WAIT); + textBgColor(PINK_MSB, PINK_LSB); + puts("\nBG color = PINK"); + wait_ms(SHORT_WAIT); + textBgColor(VIOLET_MSB, VIOLET_LSB); + puts("\nBG color = VIOLET"); + wait_ms(SHORT_WAIT); + textBgColor(AQUA_MSB, AQUA_LSB); + puts("\nBG color = AQUA"); + wait_ms(SHORT_WAIT); + textBgColor(CREAM_MSB, CREAM_LSB); + puts("\nBG color = CREAM"); + wait_ms(LONG_WAIT); + textBgColor(BLACK_MSB, BLACK_LSB); // set color back + textFgColor(GREEN_MSB, GREEN_LSB); // set color back + cls(); + + puts("Lets try moving cursor..."); + wait_ms(LONG_WAIT); + cls(); + if (moveCursor(5, 5) == 1) puts("+"); + wait_ms(SHORT_WAIT); + if (moveCursor(10, 10) == 1) puts("+"); + wait_ms(SHORT_WAIT); + screenOrientation(4); + if (moveCursor(50, 50) == 1) puts("+"); + wait_ms(SHORT_WAIT); + if (moveCursor(19, 29) == 1) puts("+"); + wait_ms(LONG_WAIT); + cls(); + + + screenOrientation(3); + puts("\nText Foreground colors:"); + wait_ms(LONG_WAIT); + cls(); + textBgColor(WHITE_MSB, WHITE_LSB); + textFgColor(BLACK_MSB, BLACK_LSB); + puts("\nFG color = BLACK"); + textBgColor(BLACK_MSB, BLACK_LSB); + wait_ms(SHORT_WAIT); + textFgColor(NAVY_MSB, NAVY_LSB); + puts("\nFG color = NAVY"); + wait_ms(SHORT_WAIT); + textFgColor(DGREEN_MSB, DGREEN_LSB); + puts("\nFG color = DARK GREEN"); + wait_ms(SHORT_WAIT); + textFgColor(DCYAN_MSB, DCYAN_LSB); + puts("\nFG color = DARK CYAN"); + wait_ms(SHORT_WAIT); + textFgColor(PURPLE_MSB, PURPLE_LSB); + puts("\nFG color = PURPLE"); + wait_ms(SHORT_WAIT); + textFgColor(OLIVE_MSB, OLIVE_LSB); + puts("\nFG color = OLIVE"); + wait_ms(SHORT_WAIT); + textFgColor(GREY_MSB, GREY_LSB); + puts("\nFG color = GREY"); + wait_ms(SHORT_WAIT); + textFgColor(BLUE_MSB, BLUE_LSB); + puts("\nFG color = BLUE"); + wait_ms(SHORT_WAIT); + textFgColor(GREEN_MSB, GREEN_LSB); + puts("\nFG color = GREEN"); + wait_ms(SHORT_WAIT); + textFgColor(RED_MSB, RED_LSB); + puts("\nFG color = RED"); + wait_ms(SHORT_WAIT); + textFgColor(YELLOW_MSB, YELLOW_LSB); + puts("\nFG color = YELLOW"); + wait_ms(SHORT_WAIT); + textFgColor(G_YELLOW_MSB, G_YELLOW_LSB); + puts("\nFG color = GREEN YELLOW"); + wait_ms(SHORT_WAIT); + textFgColor(WHITE_MSB, WHITE_LSB); + puts("\nFG color = WHITE"); + wait_ms(SHORT_WAIT); + textFgColor(ORANGE_MSB, ORANGE_LSB); + puts("\nFG color = ORANGE"); + wait_ms(SHORT_WAIT); + textFgColor(PINK_MSB, PINK_LSB); + puts("\nFG color = PINK"); + wait_ms(SHORT_WAIT); + textFgColor(VIOLET_MSB, VIOLET_LSB); + puts("\nFG color = VIOLET"); + wait_ms(SHORT_WAIT); + textFgColor(AQUA_MSB, AQUA_LSB); + puts("\nFG color = AQUA"); + wait_ms(SHORT_WAIT); + textFgColor(CREAM_MSB, CREAM_LSB); + puts("\nFG color = CREAM"); + wait_ms(SHORT_WAIT); + textFgColor(GREEN_MSB, GREEN_LSB); // set color back +} \ No newline at end of file