Dog Feeder IR sensor storage measuring system

Dependencies:   mbed

Committer:
Iadri
Date:
Mon Jan 25 18:19:34 2016 +0000
Revision:
0:91fca95621fe
Child:
1:199d787f2181
working base system with sleep

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Iadri 0:91fca95621fe 1 #include "mbed.h"
Iadri 0:91fca95621fe 2
Iadri 0:91fca95621fe 3 Serial pc(USBTX, USBRX);
Iadri 0:91fca95621fe 4
Iadri 0:91fca95621fe 5 AnalogIn photores(A0);
Iadri 0:91fca95621fe 6 //DigitalIn photores(D5);
Iadri 0:91fca95621fe 7 DigitalIn button(SW2);
Iadri 0:91fca95621fe 8 DigitalOut IRled(D7);
Iadri 0:91fca95621fe 9 DigitalOut PiSign(D6);
Iadri 0:91fca95621fe 10 DigitalOut ledred(LED_RED);
Iadri 0:91fca95621fe 11
Iadri 0:91fca95621fe 12 Ticker StorageChecker;
Iadri 0:91fca95621fe 13
Iadri 0:91fca95621fe 14 const double ticktime = 1;
Iadri 0:91fca95621fe 15
Iadri 0:91fca95621fe 16
Iadri 0:91fca95621fe 17 void StorageCheck()
Iadri 0:91fca95621fe 18 {
Iadri 0:91fca95621fe 19 IRled = 1;
Iadri 0:91fca95621fe 20 wait_us(100);
Iadri 0:91fca95621fe 21 double light = photores;
Iadri 0:91fca95621fe 22 if(light >= 0.5) {
Iadri 0:91fca95621fe 23 ledred = 0;
Iadri 0:91fca95621fe 24 PiSign = 1;
Iadri 0:91fca95621fe 25 } else {
Iadri 0:91fca95621fe 26 ledred = 1;
Iadri 0:91fca95621fe 27 PiSign = 0;
Iadri 0:91fca95621fe 28 }
Iadri 0:91fca95621fe 29 pc.printf("Photo = %0.10f \n\r", light);
Iadri 0:91fca95621fe 30 }
Iadri 0:91fca95621fe 31
Iadri 0:91fca95621fe 32 int main()
Iadri 0:91fca95621fe 33 {
Iadri 0:91fca95621fe 34 pc.baud(9600);
Iadri 0:91fca95621fe 35 ledred = 1;
Iadri 0:91fca95621fe 36 StorageChecker.attach(&StorageCheck, ticktime);
Iadri 0:91fca95621fe 37 while (true) {
Iadri 0:91fca95621fe 38 IRled = 0;
Iadri 0:91fca95621fe 39 sleep();
Iadri 0:91fca95621fe 40 }
Iadri 0:91fca95621fe 41 }