aboutsummaryrefslogtreecommitdiffstats
path: root/demos/ARM7-LPC214x-GCC
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2007-10-06 17:01:14 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2007-10-06 17:01:14 +0000
commit62645922467a2c748bf081b7eefb6ad775675418 (patch)
treecbae488a5774795170fe461c39b96038fbfaaadc /demos/ARM7-LPC214x-GCC
parent9229005c5d227cf42fc98c7a4e2b6f6edd513e2b (diff)
downloadChibiOS-62645922467a2c748bf081b7eefb6ad775675418.tar.gz
ChibiOS-62645922467a2c748bf081b7eefb6ad775675418.tar.bz2
ChibiOS-62645922467a2c748bf081b7eefb6ad775675418.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@46 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'demos/ARM7-LPC214x-GCC')
-rw-r--r--demos/ARM7-LPC214x-GCC/Makefile2
-rw-r--r--demos/ARM7-LPC214x-GCC/main.c41
2 files changed, 28 insertions, 15 deletions
diff --git a/demos/ARM7-LPC214x-GCC/Makefile b/demos/ARM7-LPC214x-GCC/Makefile
index b69ae8780..2c8616b80 100644
--- a/demos/ARM7-LPC214x-GCC/Makefile
+++ b/demos/ARM7-LPC214x-GCC/Makefile
@@ -77,7 +77,7 @@ TSRC =
ASMSRC = crt0.s chcore2.s
# List all user directories here
-UINCDIR = ../../src/include ../../ports/ARM7-LPC214x/GCC
+UINCDIR = ../../src/include ../../src/lib ../../ports/ARM7-LPC214x/GCC
# List the user directory to look for the libraries here
ULIBDIR =
diff --git a/demos/ARM7-LPC214x-GCC/main.c b/demos/ARM7-LPC214x-GCC/main.c
index 5db6815fb..564c03bfc 100644
--- a/demos/ARM7-LPC214x-GCC/main.c
+++ b/demos/ARM7-LPC214x-GCC/main.c
@@ -22,6 +22,7 @@
#include "lpc214x.h"
#include "lpc214x_serial.h"
#include "buzzer.h"
+#include "evtimer.h"
static BYTE8 waThread1[UserStackSize(32)];
@@ -53,24 +54,36 @@ static t_msg Thread2(void *arg) {
return 0;
}
+static void TimerHandler(t_eventid id) {
+
+ t_msg TestThread(void *p);
+
+ if (!(IO0PIN & 0x00018000)) { // Both buttons
+ TestThread(&COM1);
+ PlaySound(500, 100);
+ }
+ else {
+ if (!(IO0PIN & 0x00008000)) // Button 1
+ PlaySound(1000, 100);
+ if (!(IO0PIN & 0x00010000)) // Button 2
+ chFDDWrite(&COM1, (BYTE8 *)"Hello World!\r\n", 14);
+ }
+}
+
static BYTE8 waThread3[UserStackSize(64)];
+static EvTimer evt;
+static t_evhandler evhndl[1] = {
+ TimerHandler
+};
static t_msg Thread3(void *arg) {
- t_msg TestThread(void *p);
+ struct EventListener el;
- while (TRUE) {
- if (!(IO0PIN & 0x00018000)) {
- TestThread(&COM1);
- PlaySound(500, 100);
- }
- else {
- if (!(IO0PIN & 0x00008000)) // Button 1
- PlaySound(1000, 100);
- if (!(IO0PIN & 0x00010000)) // Button 2
- chFDDWrite(&COM1, (BYTE8 *)"Hello World!\r\n", 14);
- }
- chThdSleep(500);
- }
+ evtInit(&evt, 500);
+ evtRegister(&evt, &el, 0);
+ evtStart(&evt);
+ while (TRUE)
+ chEvtWait(ALL_EVENTS, evhndl);
return 0;
}