ULCD Demo

Dependencies:   4DGL-uLCD-SE mbed

main.cpp

Committer:
bjs9
Date:
2018-02-12
Revision:
2:84b9865dad96
Parent:
1:9f093ed9a93b

File content as of revision 2:84b9865dad96:

// uLCD-144-G2 basic text demo program for uLCD-4GL LCD driver library
//
#include "mbed.h"
#include "uLCD_4DGL.h"
#include "LSM9DS1.h"


uLCD_4DGL uLCD(p28,p27,p29); // serial tx, serial rx, reset pin;
Serial pc(USBTX, USBRX);
int previousX = 64;
int previousY = 64;
int main(){
 LSM9DS1 lol(p9, p10, 0xD6, 0x3C);
    lol.begin();
    if (!lol.begin()) {
        pc.printf("Failed to communicate with LSM9DS1.\n");
    }
    lol.calibrate();
    uLCD.circle(64,64,5,RED);
    uLCD.filled_circle(64,64,2,GREEN);
    while(1) {
        uLCD.circle(64,64,5,RED);
        lol.readTemp();
        lol.readMag();
        lol.readGyro();
        lol.readAccel();
        float accel_x = lol.calcAccel(lol.ax);
        float accel_y = lol.calcAccel(lol.ay);
        float accel_z = lol.calcAccel(lol.az);
        float x = 64 + 64 * accel_x;
        float y = 64 + 64 * accel_y;
        uLCD.filled_circle(previousX,previousY,2,BLACK);
        uLCD.filled_circle(x,y,2,GREEN);
        previousX = x;
        previousY = y;
        //pc.printf("gyro: %d %d %d\n\r", lol.gx, lol.gy, lol.gz);
        pc.printf("accel: %d %d %d\n\r", lol.ax, lol.ay, lol.az);
        //pc.printf("mag: %d %d %d\n\n\r", lol.mx, lol.my, lol.mz);
        wait(.005);
    }
}