The keyboard section of the CO657 class 4

Dependencies:   C12832 MMA7660 mbed

Committer:
co657_sjc80
Date:
Thu Nov 19 18:05:08 2015 +0000
Revision:
0:85b0a266d4ac
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
co657_sjc80 0:85b0a266d4ac 1 /**
co657_sjc80 0:85b0a266d4ac 2 * (C) Simon Cooksey, 2015
co657_sjc80 0:85b0a266d4ac 3 *
co657_sjc80 0:85b0a266d4ac 4 * Class 03, Task 1B -- XBee Remote Sender
co657_sjc80 0:85b0a266d4ac 5 * MIT
co657_sjc80 0:85b0a266d4ac 6 */
co657_sjc80 0:85b0a266d4ac 7
co657_sjc80 0:85b0a266d4ac 8 #include "mbed.h"
co657_sjc80 0:85b0a266d4ac 9 #include "C12832.h"
co657_sjc80 0:85b0a266d4ac 10 #include "MMA7660.h" /* for the accelerometer */
co657_sjc80 0:85b0a266d4ac 11
co657_sjc80 0:85b0a266d4ac 12 MMA7660 MMA(D14, D15); /* accelerometer */
co657_sjc80 0:85b0a266d4ac 13 Serial xbee(D1, D0); /* xbee */
co657_sjc80 0:85b0a266d4ac 14 C12832 lcd(D11, D13, D12, D7, D10); /* lcd display*/
co657_sjc80 0:85b0a266d4ac 15
co657_sjc80 0:85b0a266d4ac 16 // Based on Colin Johnson's code available at
co657_sjc80 0:85b0a266d4ac 17 // https://developer.mbed.org/users/colingj/code/lecture2_demo2/
co657_sjc80 0:85b0a266d4ac 18 int main(void)
co657_sjc80 0:85b0a266d4ac 19 {
co657_sjc80 0:85b0a266d4ac 20 float x,y;
co657_sjc80 0:85b0a266d4ac 21 int countdown = 0;
co657_sjc80 0:85b0a266d4ac 22
co657_sjc80 0:85b0a266d4ac 23 lcd.locate(0,0);
co657_sjc80 0:85b0a266d4ac 24 lcd.printf("Remote");
co657_sjc80 0:85b0a266d4ac 25
co657_sjc80 0:85b0a266d4ac 26 while (1) {
co657_sjc80 0:85b0a266d4ac 27 x = MMA.x();
co657_sjc80 0:85b0a266d4ac 28 y = MMA.y();
co657_sjc80 0:85b0a266d4ac 29 if (y>0.6f) {
co657_sjc80 0:85b0a266d4ac 30 xbee.putc('d');
co657_sjc80 0:85b0a266d4ac 31 }
co657_sjc80 0:85b0a266d4ac 32 if (y<-0.6f) {
co657_sjc80 0:85b0a266d4ac 33 xbee.putc('u');
co657_sjc80 0:85b0a266d4ac 34 }
co657_sjc80 0:85b0a266d4ac 35 if ((abs(x)>0.6f)&&(countdown<=0.0f)) {
co657_sjc80 0:85b0a266d4ac 36 xbee.putc('p');
co657_sjc80 0:85b0a266d4ac 37 countdown = 10;
co657_sjc80 0:85b0a266d4ac 38 }
co657_sjc80 0:85b0a266d4ac 39 countdown--;
co657_sjc80 0:85b0a266d4ac 40 wait (0.1);
co657_sjc80 0:85b0a266d4ac 41 }
co657_sjc80 0:85b0a266d4ac 42 }