diff options
Diffstat (limited to 'demos')
-rwxr-xr-x | demos/console/main.c | 26 | ||||
-rwxr-xr-x | demos/gui/main.c | 79 | ||||
-rw-r--r-- | demos/lcd/main.c (renamed from demos/README) | 21 | ||||
-rwxr-xr-x | demos/powermodes/main.c | 55 | ||||
-rw-r--r-- | demos/readme.txt | 4 | ||||
-rw-r--r--[-rwxr-xr-x] | demos/touchpad/main.c (renamed from demos/drawing/main.c) | 94 |
6 files changed, 79 insertions, 200 deletions
diff --git a/demos/console/main.c b/demos/console/main.c index b8ccd633..78e24a9c 100755 --- a/demos/console/main.c +++ b/demos/console/main.c @@ -1,5 +1,5 @@ /*
- ChibiOS/RT - Copyright (C) 2012
+ ChibiOS-LCD-Driver - Copyright (C) 2012
Joel Bodenmann aka Tectu <joel@unormal.org>
This file is part of ChibiOS-LCD-Driver.
@@ -20,32 +20,28 @@ #include "ch.h"
#include "hal.h"
-#include "glcd.h"
-#include "test.h"
+#include "gdisp.h"
+#include "chprintf.h"
#include "console.h"
-static GLCDDriver GLCDD1;
static GLCDConsole CON1;
int main(void) {
halInit();
chSysInit();
- // init LCD and clear it
- lcdInit(&GLCDD1);
- lcdClear(Black);
+ gdispInit();
+ gdispClear(Lime);
- // init console
- lcdConsoleInit(&CON1, 0, 0, lcdGetWidth(), lcdGetHeight(), font_Small, Black, White);
+ lcdConsoleInit(&CON1, 0, 0, gdispGetWidth(), gdispGetHeight(), &fontLarger, Black, White);
- // use test thread for console output
- TestThread((BaseSequentialStream*)&CON1);
+
+ chprintf((BaseSequentialStream *)&CON1, "Hello the time is %d\nGoodbye.", chTimeNow());
- while (TRUE) {
- chThdSleepMilliseconds(200);
+ while (TRUE) {
+
+ chThdSleepMilliseconds(100);
}
-
- return 0;
}
diff --git a/demos/gui/main.c b/demos/gui/main.c deleted file mode 100755 index ca1a499b..00000000 --- a/demos/gui/main.c +++ /dev/null @@ -1,79 +0,0 @@ -/*
- ChibiOS/RT - Copyright (C) 2012
- Joel Bodenmann aka Tectu <joel@unormal.org>
-
- This file is part of ChibiOS-LCD-Driver.
-
- ChibiOS-LCD-Driver 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-LCD-Driver 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 "gui.h"
-#include "glcd.h"
-#include "touchpad.h"
-
-// GLCD driver object
-static GLCDDriver GLCDD1;
-
-int main(void) {
- uint8_t setActive, setState, clearActive, clearState;
-
- halInit();
- chSysInit();
-
- // Initializes the LCD
- lcdInit(&GLCDD1);
-
- // Initializes the touchpad
- tpInit(&SPID1);
-
- // clear the entire LCD screen
- lcdClear(Black);
-
- // Initializes the GUI thread
- // 10ms interval
- // HIGHPRIO thread priority level
- guiInit(10, HIGHPRIO);
-
- // set the following buttons to active
- // buttons wouldn't have any effect if you set these variables to 'inactive'
- setActive = active;
- clearActive = active;
-
- // draw a button to set, and one to clear the LED
- guiDrawButton(10, 10, 60, 60, "Set", font_Larger, Black, Yellow, 6, "SetButton", &setActive, &setState);
- guiDrawButton(70, 10, 120, 60, "Clear", font_Larger, Black, Red, 6, "ClearButton", &clearActive, &clearState);
-
- // you can delete a GUI element at any time from the GUI. You have to pass the GUI element name here.
- // please note that you have to redraw the screen to delete the element yourself.
- // guiDeleteElement("SetButton");
- // guiDeleteElement("ClearButton");
-
- while (TRUE) {
-
- // check if button 'set' is pressed
- if(setState)
- palSetPad(GPIOD, GPIOD_LED3);
-
- // check if button 'clear' is pressed
- if(clearState)
- palClearPad(GPIOD, GPIOD_LED3);
-
- chThdSleepMilliseconds(200);
- }
-
- return 0;
-}
-
diff --git a/demos/README b/demos/lcd/main.c index 3d3d6013..aec1b9ab 100644 --- a/demos/README +++ b/demos/lcd/main.c @@ -1,5 +1,5 @@ /* - ChibiOS/RT - Copyright (C) 2012 + ChibiOS-LCD-Driver - Copyright (C) 2012 Joel Bodenmann aka Tectu <joel@unormal.org> This file is part of ChibiOS-LCD-Driver. @@ -18,7 +18,22 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ -This are a few demos, showing how to use the library. +#include "ch.h" +#include "hal.h" +#include "gdisp.h" -Please note that this are not compilable projects. +int main(void) { + halInit(); + chSysInit(); + + gdispInit(); + gdispClear(Black); + + // gdispDrawXXX(...); + + while (TRUE) { + + chThdSleepMilliseconds(100); + } +} diff --git a/demos/powermodes/main.c b/demos/powermodes/main.c deleted file mode 100755 index 8a138d06..00000000 --- a/demos/powermodes/main.c +++ /dev/null @@ -1,55 +0,0 @@ -/*
- ChibiOS/RT - Copyright (C) 2012
- Joel Bodenmann aka Tectu <joel@unormal.org>
-
- This file is part of ChibiOS-LCD-Driver.
-
- ChibiOS-LCD-Driver 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-LCD-Driver 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 "glcd.h"
-
-static GLCDDriver GLCDD1;
-
-int main(void) {
- halInit();
- chSysInit();
-
- lcdInit(&GLCDD1);
- lcdClear(Black);
- lcdDrawString(100, 100, "Hello World", White, Black);
-
- // wait two seconds to see current LCD content
- chThdSleepSeconds(2);
-
- // brings LCD to sleep mode
- lcdSetPowerMode(sleepOn);
-
- // wait two seconds to see current LCD content
- chThdSleepSeconds(2);
-
- // brings LCD back from sleep mode
- // content displayed before gets displayed again
- lcdSetPowerMode(sleepOff);
-
- while (TRUE) {
-
- chThdSleepMilliseconds(200);
- }
-
- return 0;
-}
-
diff --git a/demos/readme.txt b/demos/readme.txt new file mode 100644 index 00000000..fbea2090 --- /dev/null +++ b/demos/readme.txt @@ -0,0 +1,4 @@ +This folder contains a few demos which explain how to use the library. + +Only the main files are contained. No compile-able projects + diff --git a/demos/drawing/main.c b/demos/touchpad/main.c index 391b0786..52f52e83 100755..100644 --- a/demos/drawing/main.c +++ b/demos/touchpad/main.c @@ -1,48 +1,46 @@ -/*
- ChibiOS/RT - Copyright (C) 2012
- Joel Bodenmann aka Tectu <joel@unormal.org>
-
- This file is part of ChibiOS-LCD-Driver.
-
- ChibiOS-LCD-Driver 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-LCD-Driver 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 "glcd.h"
-
-static GLCDDriver GLCDD1;
-
-int main(void) {
- halInit();
- chSysInit();
-
- lcdInit(&GLCDD1);
- lcdClear(Black);
- lcdDrawString(100, 100, "Hello World", White, Black);
-
- lcdMoveCursor(10,10,White, Black);
- chprintf((BaseSequentialStream *)&GLCDD1, "chTimeNow: %d", chTimeNow());
-
- lcdDrawCircle(150, 150, 10, filled, Green);
- lcdDrawLine(0, 0, lcdGetWidth(), lcdGetHeight(), Yellow);
-
- while (TRUE) {
-
- chThdSleepMilliseconds(200);
- }
-
- return 0;
-}
-
+/* + ChibiOS-LCD-Driver - Copyright (C) 2012 + Joel Bodenmann aka Tectu <joel@unormal.org> + + This file is part of ChibiOS-LCD-Driver. + + ChibiOS-LCD-Driver 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-LCD-Driver 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 "gdisp.h" +#include "touchpad.h" + +TOUCHPADDriver TOUCHPADD1 = { + &SPID1, +}; + +int main(void) { + halInit(); + chSysInit(); + + gdispInit(); + gdispClear(Lime); + + tpInit(&TOUCHPADD1); + tpCalibrate(); + + gdispClear(Lime); + + while (TRUE) { + gdispDrawFillCircle(tpReadX(), tpReadY(), 3, Black); + } +} + |