initial version

Dependencies:   C12832 MMA7660

Committer:
avinashmehta
Date:
Tue Dec 19 15:00:10 2017 +0000
Revision:
0:1f04ce35dcc4
test lcd acc frdm k64f

Who changed what in which revision?

UserRevisionLine numberNew contents of line
avinashmehta 0:1f04ce35dcc4 1 #include "mbed.h"
avinashmehta 0:1f04ce35dcc4 2 #include "C12832.h"
avinashmehta 0:1f04ce35dcc4 3 #include "MMA7660.h"
avinashmehta 0:1f04ce35dcc4 4
avinashmehta 0:1f04ce35dcc4 5 // Using Arduino pin notation
avinashmehta 0:1f04ce35dcc4 6 C12832 lcd(D11, D13, D12, D7, D10);
avinashmehta 0:1f04ce35dcc4 7 MMA7660 MMA(D14,D15);
avinashmehta 0:1f04ce35dcc4 8 DigitalIn up(A2);
avinashmehta 0:1f04ce35dcc4 9 DigitalIn down(A3);
avinashmehta 0:1f04ce35dcc4 10 DigitalIn left(A4);
avinashmehta 0:1f04ce35dcc4 11 DigitalIn right(A5);
avinashmehta 0:1f04ce35dcc4 12 DigitalIn fire(D4);
avinashmehta 0:1f04ce35dcc4 13
avinashmehta 0:1f04ce35dcc4 14 // main() runs in its own thread in the OS
avinashmehta 0:1f04ce35dcc4 15 int main() {
avinashmehta 0:1f04ce35dcc4 16 float x = 0, y = 0, threshold = 0.25;
avinashmehta 0:1f04ce35dcc4 17 //float temp_x, temp_y;
avinashmehta 0:1f04ce35dcc4 18 int loc_x = 0, loc_y = 0;
avinashmehta 0:1f04ce35dcc4 19 lcd.locate(0, 0);
avinashmehta 0:1f04ce35dcc4 20 while (true) {
avinashmehta 0:1f04ce35dcc4 21 lcd.cls();
avinashmehta 0:1f04ce35dcc4 22 /*temp_x = MMA.x();
avinashmehta 0:1f04ce35dcc4 23 if(temp_x > x + threshold) {
avinashmehta 0:1f04ce35dcc4 24 x = temp_x;
avinashmehta 0:1f04ce35dcc4 25 if(loc_y > 0)
avinashmehta 0:1f04ce35dcc4 26 loc_y--;
avinashmehta 0:1f04ce35dcc4 27 }
avinashmehta 0:1f04ce35dcc4 28 else if(temp_x < x - threshold) {
avinashmehta 0:1f04ce35dcc4 29 x = temp_x;
avinashmehta 0:1f04ce35dcc4 30 if(loc_y < 32)
avinashmehta 0:1f04ce35dcc4 31 loc_y++;
avinashmehta 0:1f04ce35dcc4 32 }
avinashmehta 0:1f04ce35dcc4 33 temp_y = MMA.y();
avinashmehta 0:1f04ce35dcc4 34 if(temp_y > y + threshold) {
avinashmehta 0:1f04ce35dcc4 35 y = temp_y;
avinashmehta 0:1f04ce35dcc4 36 if(loc_x > 0)
avinashmehta 0:1f04ce35dcc4 37 loc_x--;
avinashmehta 0:1f04ce35dcc4 38 }
avinashmehta 0:1f04ce35dcc4 39 else if(temp_y < y - threshold) {
avinashmehta 0:1f04ce35dcc4 40 y = temp_y;
avinashmehta 0:1f04ce35dcc4 41 if(loc_x < 128)
avinashmehta 0:1f04ce35dcc4 42 loc_x++;
avinashmehta 0:1f04ce35dcc4 43 }*/
avinashmehta 0:1f04ce35dcc4 44
avinashmehta 0:1f04ce35dcc4 45 x = MMA.x();
avinashmehta 0:1f04ce35dcc4 46 y = MMA.y();
avinashmehta 0:1f04ce35dcc4 47 if(x > threshold) {
avinashmehta 0:1f04ce35dcc4 48 loc_y--;
avinashmehta 0:1f04ce35dcc4 49 }
avinashmehta 0:1f04ce35dcc4 50 else if(x < -1 * threshold) {
avinashmehta 0:1f04ce35dcc4 51 loc_y++;
avinashmehta 0:1f04ce35dcc4 52 }
avinashmehta 0:1f04ce35dcc4 53 if(y > threshold) {
avinashmehta 0:1f04ce35dcc4 54 loc_x--;
avinashmehta 0:1f04ce35dcc4 55 }
avinashmehta 0:1f04ce35dcc4 56 else if(y < -1 * threshold) {
avinashmehta 0:1f04ce35dcc4 57 loc_x++;
avinashmehta 0:1f04ce35dcc4 58 }
avinashmehta 0:1f04ce35dcc4 59 if(loc_y > 32) loc_y = 32;
avinashmehta 0:1f04ce35dcc4 60 else if(loc_y < 0) loc_y = 0;
avinashmehta 0:1f04ce35dcc4 61 if(loc_x > 128) loc_x = 128;
avinashmehta 0:1f04ce35dcc4 62 else if(loc_x < 0) loc_x = 0;
avinashmehta 0:1f04ce35dcc4 63 lcd.circle(loc_x, loc_y, 2, 1);
avinashmehta 0:1f04ce35dcc4 64 wait(0.01);
avinashmehta 0:1f04ce35dcc4 65 }
avinashmehta 0:1f04ce35dcc4 66 }
avinashmehta 0:1f04ce35dcc4 67