part 6 and extra credit

Dependencies:   C12832 Servo mbed

main.cpp

Committer:
jaredwil
Date:
2015-03-03
Revision:
3:853bc68793d0
Parent:
2:1d960bbbb0fe
Child:
4:9c354b69b590

File content as of revision 3:853bc68793d0:

#include "mbed.h"
#include "C12832.h"
#include "Servo.h"

 
Servo s1(p21);

C12832 lcd(p5, p7, p6, p8, p11);

DigitalOut myled(LED1);
AnalogIn light(p16);

int main() {

    float val,val2, count = 0;
    
//Flash Phone Flash 4 times at close range to start the servo
    
    while(count < 4){
        val = light.read();
        if(val<0.5){
            lcd.locate(0,3);
            lcd.printf("reading: %.3f", val);
            wait(0.1);
            count++;
            while(light.read() < 0.5);
            lcd.cls();
        }
        
    }
    
    while(1) {
        lcd.cls();
        val = light.read();
        
        val2 = 1-val;
        
        //even for little light start servo with small steps(low speed)
        if(val2 > 0.1) {
            lcd.locate(0,3);
            lcd.printf("Sensor reading: %.3f", val);
            for(float p=0; p<1.0; p += val2) {
                s1 = p;
                wait(0.2);
            }
            for(float p=1.0; p>0; p -= val2) {
                s1 = p;
                wait(0.2);
            }     
        }
    }
}