11

Dependencies:   mbed C12832 MMA7660

Revision:
2:a87e255a8f3a
Parent:
1:1c6a9eaf55b5
Child:
3:2db94ee076ee
--- a/main.cpp	Tue Oct 16 17:51:10 2012 +0000
+++ b/main.cpp	Fri Oct 26 10:49:28 2012 +0000
@@ -1,124 +1,19 @@
-// example to test the mbed Lab Board lcd
-// Pot1 change the contrast
-// Pot2 change the speed of the sin wave
-
-
 #include "mbed.h"
-#include "rtos.h"
-#include "Small_6.h"
-#include "Small_7.h"
-#include "Arial_9.h"
-#include "stdio.h"
 #include "C12832_lcd.h"
 
-Serial pc(USBTX, USBRX);
-
-
-// LCD object
-C12832_LCD LCD("LCD");
-
-AnalogIn Pot1(p19);
-AnalogIn Pot2(p20);
-
-// defines to make lib thread save
-#define _lock lcd_mutex.lock();
-#define _unlock lcd_mutex.unlock();
-Mutex lcd_mutex;
-
-// print data into first line and wait for 1s
-void thread1(void const *args)
-{
-    int i;
-    while(true) {       // thread loop
-        _lock
-        LCD.locate(0,0);
-        LCD.set_font((unsigned char*) Small_6);
-        printf("Thread1 count: %d",i);
-        LCD.copy_to_lcd();
-        _unlock
-        i++;
-        Thread::wait(1000);
-    }
-}
-
-// print data into third line and wait for 0,5s
-void thread2(void const *args)
-{
-    int k;
-    while(true) {       // thread loop
-        _lock
-        LCD.locate(0,20);
-        LCD.set_font((unsigned char*) Arial_9);
-        printf("Thread 2 count : %d",k);
-        LCD.copy_to_lcd();
-        _unlock
-        k++;
-        Thread::wait(500);
-    }
-}
-
-
-void thread4(void const *args)
-{
-    int i,k,v;
-    double s,a;
-    k = 1;
-    _lock
-    LCD.rect(89,0,127,17,1);
-    _unlock
-    while(true) {       // thread loop
-        _lock
-        v = Pot1.read_u16();  // get value of pot 1
-        for (i=90; i<127; i++) {           
-            s = 8 * sin((long double)(i+k) /5);
-            a = 8 * sin((long double)(i+k-1) /5);
-            LCD.pixel(i,9 + (int)a ,0);
-            LCD.pixel(i,9 + (int)s ,1);
-        }
-        LCD.copy_to_lcd();
-        _unlock
-        k++;
-        Thread::wait(v/100);
-    }
-}
-
-
-void thread5(void const *args)
-{
-    int k;
-    while(true) {         // thread loop
-    k = Pot2.read_u16();  // get the value of poti 2
-    k = k >> 10;          // we need only 6 bit
-    _lock
-    LCD.set_contrast(k);
-    _unlock
-    Thread::wait(500);  
-}
-}
+C12832_LCD lcd;
 
 int main()
 {
-    int j;
-
-    LCD.claim(stdout);      // send stdout to the LCD display
-    LCD.cls();
-    //start thread1
-    Thread t1(thread1);
-    //start thread2
-    Thread t2(thread2);
-    //start thread4
-    Thread t4(thread4);
-    Thread t5(thread5);
+    int j=0;
+    lcd.cls();
+    lcd.locate(0,3);
+    lcd.printf("mbed application board!");
 
     while(true) {   // this is the third thread
-        _lock
-        LCD.locate(0,9);
-        LCD.set_font((unsigned char*) Small_7);
-        j = LCD.get_contrast();
-        printf("contrast : %d",j);
-        LCD.copy_to_lcd();
-        _unlock
-        Thread::wait(500);
+        lcd.locate(0,15);
+        lcd.printf("Counting : %d",j);
+        j++;
+        wait(1.0);
     }
-
 }