aboutsummaryrefslogtreecommitdiffstats
path: root/demos/3rdparty/tdisp_f4_discovery/main.c
diff options
context:
space:
mode:
authorJoel Bodenmann <joel@unormal.org>2013-06-01 01:37:53 +0200
committerJoel Bodenmann <joel@unormal.org>2013-06-01 01:37:53 +0200
commitebc30c02bcff4ea36ac3e46b48ae413c0ed34b80 (patch)
treed87e9c07f6f8ba2ec186d77d53bb243df3ab671c /demos/3rdparty/tdisp_f4_discovery/main.c
parentf2ba60f4655107bd0099d24238220d94639f9d29 (diff)
downloaduGFX-ebc30c02bcff4ea36ac3e46b48ae413c0ed34b80.tar.gz
uGFX-ebc30c02bcff4ea36ac3e46b48ae413c0ed34b80.tar.bz2
uGFX-ebc30c02bcff4ea36ac3e46b48ae413c0ed34b80.zip
TDISP update
Diffstat (limited to 'demos/3rdparty/tdisp_f4_discovery/main.c')
-rw-r--r--demos/3rdparty/tdisp_f4_discovery/main.c109
1 files changed, 109 insertions, 0 deletions
diff --git a/demos/3rdparty/tdisp_f4_discovery/main.c b/demos/3rdparty/tdisp_f4_discovery/main.c
new file mode 100644
index 00000000..d9f55f2f
--- /dev/null
+++ b/demos/3rdparty/tdisp_f4_discovery/main.c
@@ -0,0 +1,109 @@
+/*
+ ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
+ 2011,2012 Giovanni Di Sirio.
+
+ This file is part of ChibiOS/RT.
+
+ ChibiOS/RT is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ ChibiOS/RT is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#include "ch.h"
+#include "hal.h"
+#include "gfx.h"
+
+int main(void) {
+ uint8_t charmap[8];
+ uint8_t n;
+
+ halInit();
+ chSysInit();
+
+ tdispInit();
+
+ /* reset cursor position and clear the screen */
+ tdispHome();
+ tdispClear();
+
+ /* draw a string to a given location */
+ tdispSetCursor(0, 0);
+ tdispDrawChar('C');
+ chThdSleepMilliseconds(500);
+ tdispDrawChar('h');
+ chThdSleepMilliseconds(500);
+ tdispDrawChar('i');
+ chThdSleepMilliseconds(500);
+ tdispDrawChar('b');
+ chThdSleepMilliseconds(500);
+ tdispDrawChar('i');
+ chThdSleepMilliseconds(500);
+ tdispDrawChar('O');
+ chThdSleepMilliseconds(500);
+ tdispDrawChar('S');
+ chThdSleepMilliseconds(500);
+ tdispDrawChar('/');
+ chThdSleepMilliseconds(500);
+ tdispDrawChar('G');
+ chThdSleepMilliseconds(500);
+ tdispDrawChar('F');
+ chThdSleepMilliseconds(500);
+ tdispDrawChar('X');
+ chThdSleepMilliseconds(500);
+
+ // After 2 seconds blank the screen and
+ // print tekst on the next line en
+ // enable the display again
+ chThdSleepMilliseconds(1000);
+ tdispDisplayMode(displayOff);
+ tdispSetCursor(1, 1);
+ tdispDrawString("TDISP/HD44780");
+ chThdSleepMilliseconds(1000);
+ tdispDisplayMode(displayOn);
+
+
+ /* create and display a custom made character after 1S*/
+ chThdSleepMilliseconds(1000);
+ charmap[0] = 0b00100;
+ charmap[1] = 0b01110;
+ charmap[2] = 0b01110;
+ charmap[3] = 0b01110;
+ charmap[4] = 0b11111;
+ charmap[5] = 0b00000;
+ charmap[6] = 0b00100;
+ charmap[7] = 0b00000;
+ tdispCreateChar(0, charmap);
+ tdispSetCursor(0, 1);
+ tdispDrawChar(0);
+
+
+ // after 1 second turn to 50%
+ chThdSleepMilliseconds(1000);
+ tdispSetBacklight(50);
+
+ while(TRUE) {
+ tdispSetCursor(0, 3);
+ tdispDrawString("Cursor OFF: ");
+ tdispSetCursorShape(cursorOff);
+ chThdSleepMilliseconds(5000);
+
+ tdispSetCursor(0, 3);
+ tdispDrawString("Cursor ON: ");
+ tdispSetCursorShape(cursorBlock);
+ chThdSleepMilliseconds(5000);
+
+ tdispSetCursor(0, 3);
+ tdispDrawString("Cursor BLINK: ");
+ tdispSetCursorShape(cursorBlinkingBlock);
+ chThdSleepMilliseconds(5000);
+ }
+} \ No newline at end of file