Rewrite the NokiaLCD lib by using the SWSPI lib in order to fit in with the 9 bits SPI mode of KL46Z.

Dependencies:   NokiaLCD_SWSPI MAG3110 mbed-src MMA8451Q TSI

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 #include "NokiaLCD_SWSPI.h"
00003 #include "TSISensor.h"
00004 #include "MMA8451Q.h"
00005 #include "MAG3110.h"
00006 
00007 TSISensor tsi;
00008 MMA8451Q acc(PTE25, PTE24, 0x1D<<1);
00009 MAG3110 mag(PTE25, PTE24, 0x0E<<1);
00010 NokiaLCD_SWSPI lcd(D11, D12, D13, D9, D8, NokiaLCD_SWSPI::PCF8833);
00011 DigitalOut led(LED2);
00012 AnalogIn lightSensor(PTE22);
00013 InterruptIn s1(PTC3);
00014 InterruptIn s3(PTC12);
00015 
00016 
00017 int main() {
00018 
00019     float onTime = 1.0;
00020     float holdTime = 1.0;
00021     float light = .0;
00022     int magX = 0, magY = 0, magZ = 0;
00023     
00024     mag.begin();
00025 
00026     while(1) {
00027         led = onTime - abs(acc.getAccX());
00028         mag.getValues(&magX, &magY, &magZ);
00029 
00030         lcd.printf("MMA8451Q: X=%3.2f Y=%3.2f Z=%3.2f", acc.getAccX(), acc.getAccY(), acc.getAccZ());
00031         lcd.printf("MAG3110: %4.0f", mag.getHeading()); 
00032         wait(holdTime);
00033 
00034         led = tsi.readPercentage();
00035         light = lightSensor;
00036 
00037         lcd.printf("Touch: %3.2f", tsi.readPercentage());
00038         lcd.printf("LightSensor: %3.2f", light);
00039         wait(holdTime);
00040     }
00041 }