diff options
-rw-r--r-- | demos/applications/console/main.c (renamed from demos/console/main.c) | 0 | ||||
-rw-r--r-- | demos/applications/graph/main.c (renamed from demos/graph/main.c) | 0 | ||||
-rw-r--r-- | demos/applications/mandelbrot/main.c (renamed from demos/mandelbrot/main.c) | 0 | ||||
-rw-r--r-- | demos/applications/notepad/main.c (renamed from demos/notepad/main.c) | 0 | ||||
-rw-r--r-- | demos/modules/gtimer/main.c | 65 |
5 files changed, 65 insertions, 0 deletions
diff --git a/demos/console/main.c b/demos/applications/console/main.c index b0e0fb7f..b0e0fb7f 100644 --- a/demos/console/main.c +++ b/demos/applications/console/main.c diff --git a/demos/graph/main.c b/demos/applications/graph/main.c index bd50cf60..bd50cf60 100644 --- a/demos/graph/main.c +++ b/demos/applications/graph/main.c diff --git a/demos/mandelbrot/main.c b/demos/applications/mandelbrot/main.c index 6ab19de1..6ab19de1 100644 --- a/demos/mandelbrot/main.c +++ b/demos/applications/mandelbrot/main.c diff --git a/demos/notepad/main.c b/demos/applications/notepad/main.c index 7fec864f..7fec864f 100644 --- a/demos/notepad/main.c +++ b/demos/applications/notepad/main.c diff --git a/demos/modules/gtimer/main.c b/demos/modules/gtimer/main.c new file mode 100644 index 00000000..bb991edc --- /dev/null +++ b/demos/modules/gtimer/main.c @@ -0,0 +1,65 @@ +/* + ChibiOS/GFX - Copyright (C) 2012 + Joel Bodenmann aka Tectu <joel@unormal.org> + + This file is part of ChibiOS/GFX. + + ChibiOS/GFX 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/GFX 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/>. +*/ + +/** + * Make sure you have enabled the GTimer module in your halconf.h: + * + * #define GFX_USE_GTIMER TRUE + */ + +#include "ch.h" +#include "hal.h" +#include "gtimer.h" + +GTimer GT1, GT2; + +void callback1(void* arg) { + (void)arg; + + palTogglePad(GPIOD, GPIOD_LED3); +} + +void callback2(void* arg) { + (void)arg; + + palSetPad(GPIOD, GPIOD_LED4); +} + +int main(void) { + halInit(); + chSysInit(); + + /* initialize the timers */ + gtimerInit(>1); + gtimerInit(>2); + + /* continious mode - callback1() called without any argument every 250ms */ + gtimerStart(>1, callback1, NULL, TRUE, 250); + + /* single shot mode - callback2() called without any argument once after 1s */ + gtimerStart(>2, callback2, NULL, FALSE, 1000); + + while(TRUE) { + chThdSleepMilliseconds(500); + } + + return 0; +} + |