One program to drive all sensors of the app-shield.

Dependencies:   C12832 LM75B MMA7660 mbed

Fork of app-shield-accelerometer by Chris Styles

Committer:
vaillant
Date:
Tue Feb 18 14:51:39 2014 +0000
Revision:
6:9ee066ad55ca
Parent:
5:636ebfdf373b
First version with temperature, acceleration and pots.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dreschpe 0:f6a57b843f79 1 #include "mbed.h"
chris 3:2db94ee076ee 2 #include "C12832.h"
chris 5:636ebfdf373b 3 #include "MMA7660.h"
vaillant 6:9ee066ad55ca 4 #include "LM75B.h"
vaillant 6:9ee066ad55ca 5
vaillant 6:9ee066ad55ca 6 #define A0 P0_23
vaillant 6:9ee066ad55ca 7 #define A1 P0_24
vaillant 6:9ee066ad55ca 8 #define A2 P0_25
vaillant 6:9ee066ad55ca 9 #define A3 P0_26
vaillant 6:9ee066ad55ca 10 #define A4 P0_30
vaillant 6:9ee066ad55ca 11 #define A5 P1_31
vaillant 6:9ee066ad55ca 12
vaillant 6:9ee066ad55ca 13 #define D0 P4_29
vaillant 6:9ee066ad55ca 14 #define D1 P4_28
vaillant 6:9ee066ad55ca 15 #define D2 P2_13
vaillant 6:9ee066ad55ca 16 #define D3 P2_0
vaillant 6:9ee066ad55ca 17 #define D4 P2_12
vaillant 6:9ee066ad55ca 18 #define D5 P2_1
vaillant 6:9ee066ad55ca 19 #define D6 P2_2
vaillant 6:9ee066ad55ca 20 #define D7 P2_11
vaillant 6:9ee066ad55ca 21
vaillant 6:9ee066ad55ca 22 #define D8 P2_4
vaillant 6:9ee066ad55ca 23 #define D9 P2_3
vaillant 6:9ee066ad55ca 24 #define D10 P1_21
vaillant 6:9ee066ad55ca 25 #define D11 P1_24
vaillant 6:9ee066ad55ca 26 #define D12 P1_23
vaillant 6:9ee066ad55ca 27 #define D13 P1_20
vaillant 6:9ee066ad55ca 28
vaillant 6:9ee066ad55ca 29 #define SDA P0_0
vaillant 6:9ee066ad55ca 30 #define SCL P0_1
dreschpe 0:f6a57b843f79 31
chris 4:39c7c31b8fb0 32 // Using Arduino pin notation
chris 4:39c7c31b8fb0 33 C12832 lcd(D11, D13, D12, D7, D10);
chris 5:636ebfdf373b 34 MMA7660 MMA(SDA,SCL);
vaillant 6:9ee066ad55ca 35 LM75B sensor(SDA,SCL);
vaillant 6:9ee066ad55ca 36
vaillant 6:9ee066ad55ca 37 DigitalOut red_led(D5);
vaillant 6:9ee066ad55ca 38 DigitalOut blue_led(D8);
vaillant 6:9ee066ad55ca 39 DigitalOut green_led(D9);
vaillant 6:9ee066ad55ca 40
vaillant 6:9ee066ad55ca 41 AnalogIn pot1 (A0);
vaillant 6:9ee066ad55ca 42 AnalogIn pot2 (A1);
vaillant 6:9ee066ad55ca 43
vaillant 6:9ee066ad55ca 44 DigitalIn up(A2);
vaillant 6:9ee066ad55ca 45 DigitalIn down(A3);
vaillant 6:9ee066ad55ca 46 DigitalIn left(A4);
vaillant 6:9ee066ad55ca 47 AnalogIn right(A5);
vaillant 6:9ee066ad55ca 48 DigitalIn fire(D4);
dreschpe 1:1c6a9eaf55b5 49
dreschpe 0:f6a57b843f79 50 int main()
dreschpe 0:f6a57b843f79 51 {
vaillant 6:9ee066ad55ca 52
chris 2:a87e255a8f3a 53 lcd.cls();
dreschpe 0:f6a57b843f79 54
chris 5:636ebfdf373b 55 while(1) {
vaillant 6:9ee066ad55ca 56 lcd.locate(0,0);
vaillant 6:9ee066ad55ca 57 lcd.printf("Temp = %2.1f\n", sensor.read());
vaillant 6:9ee066ad55ca 58
vaillant 6:9ee066ad55ca 59 lcd.locate(0,11);
vaillant 6:9ee066ad55ca 60 lcd.printf("Acc x=%.2f y=%.2f z=%.2f ",MMA.x(), MMA.y(), MMA.z());
vaillant 6:9ee066ad55ca 61
vaillant 6:9ee066ad55ca 62 lcd.locate(0,22);
vaillant 6:9ee066ad55ca 63 lcd.printf("Pot 1 = %.2f 2 = %.2f", (float)pot1, (float)pot2);
vaillant 6:9ee066ad55ca 64
vaillant 6:9ee066ad55ca 65 //red_led = !up && ! fire;
vaillant 6:9ee066ad55ca 66 // blue_led = !down;
vaillant 6:9ee066ad55ca 67 // green_led= !left && !right;
vaillant 6:9ee066ad55ca 68
chris 5:636ebfdf373b 69 wait(0.2);
dreschpe 0:f6a57b843f79 70 }
dreschpe 0:f6a57b843f79 71 }