Josh Goldberg / Mbed 2 deprecated count_pills

Dependencies:   Servo mbed

Revision:
0:15d3cdafd311
Child:
1:9ebe670d8a19
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Dec 11 21:54:03 2014 +0000
@@ -0,0 +1,55 @@
+#include "mbed.h"
+#include "util.h"
+#include "weight.h"
+#include "Servo.h"
+
+Servo myservo(PTD4);
+DigitalOut myled1(LED1);
+DigitalOut myled2(LED2);
+DigitalOut myled3(LED3);
+AnalogIn myADC(A0);
+Serial pc(USBTX, USBRX); // tx, rx
+
+int main() {
+    int number_pills;
+    
+    myled1 = 1; //red off
+    myled2 = 1; //green off
+    myled3 = 1; //blue off
+    
+    while(1) {
+        number_pills = measure_pills();
+        //pc.printf("Number of pills: %d\n\r", number_pills);
+        wait(0.05);
+    }
+}
+
+void run_servo() {
+    
+    /*wait(0.05);
+    for(float p=0; p<1.0; p += 0.1) {
+        myservo = p;
+        pc.printf("%f\n\r", p);
+        wait(0.2);
+    }*/
+    
+    printf("Servo Calibration Controls:\n");
+    printf("1,2,3 - Position Servo (full left, middle, full right)\n");
+    printf("4,5 - Decrease or Increase range\n");
+ 
+    float range = 0.0005;
+    float position = 0.5;
+    
+    while(1) {                   
+        switch(pc.getc()) {
+            case '1': position = 0.0; break;
+            case '2': position = 0.5; break;
+            case '3': position = 1.0; break;
+            case '4': range += 0.0001; break; 
+            case '5': range -= 0.0001; break; 
+        }
+        printf("position = %.1f, range = +/-%0.4f\n", position, range);
+        myservo.calibrate(range, 45.0); 
+        myservo = position;
+    }
+}