![](/media/cache/profiles/1225293648e26d9c5e54e22e92197cb4.jpg.50x50_q85.jpg)
Test program for mbed app shield potentiometers
Fork of apps-shield-pots by
main.cpp
- Committer:
- chris
- Date:
- 2014-01-08
- Revision:
- 1:e50da1f1f653
- Parent:
- 0:cca95aa94e09
- Child:
- 2:989f84939300
File content as of revision 1:e50da1f1f653:
#include "mbed.h" #include "C12832_lcd.h" #include "LM75B.h" #include "MMA7660.h" // Map the LPC1768 pins to the arduino pin names // These are the only things that are constant between ARCH, FRDM, u-blox etc #define ARD_D5 P2_1 #define ARD_D7 P2_11 #define ARD_D10 P1_21 #define ARD_D11 P1_24 #define ARD_D12 P1_23 #define ARD_D13 P1_20 #define ARD_SDA P0_0 #define ARD_SCL P0_1 DigitalOut redled(ARD_D5); LM75B sensor(ARD_SDA,ARD_SCL); MMA7660 MMA(ARD_SDA,ARD_SCL); // ==== Using SDK primitives ====== // Construct the required pin functions, this works! /* DigitalOut a_d7 (ARD_D7); // a0 DigitalOut a_d10 (ARD_D10); // nCS DigitalOut a_d12 (ARD_D12); // reset SPI myspi (ARD_D11,NC,ARD_D13); // MOSI */ // ==== Using the LCD library ====== // Use my fork of the original library that allows pin names to be passed in // This works on KL25Z and Seeedstudio Arch // C12832_LCD(PinName mosi, PinName sck, PinName reset, PinName a0, PinName ncs, const char* name = "LCD"); // using this causes the program to hang C12832_LCD lcd(ARD_D11, ARD_D13, ARD_D12, ARD_D7, ARD_D10); int main() { int i=0; while(1) { lcd.cls(); lcd.locate(0,3); lcd.printf("Temp = %.3f", (float)sensor); lcd.locate(0,14); lcd.printf("x=%.2f y=%.2f z=%.2f",MMA.x(), MMA.y(), MMA.z()); redled = !redled; wait(1.0); i++; } /* while(1) { // === USING THE LCD ==== // Note that the program will hang, even if we do not call any of the LCD functions // Is it the cosntructor breaking things lcd.cls(); lcd.locate(0,3); lcd.printf("Hello %d",i); // === USING THE SDK Primitives === // If we just use the SPI and DigitalOut, instead we can access them happily // and the program runs // a_d7 = !a_d7; // a_d10 = !a_d10; // a_d12 = !a_d12; // myspi.write(i); wait(0.2); redled = !redled; // I have an red LED on my test board.. for sanity :) i++; } */ }