pp

Dependencies:   mbed

main.cpp

Committer:
Peeraya
Date:
2015-12-05
Revision:
3:dc88b52d526c
Parent:
2:6b4dda997dc0
Child:
4:a61cdd4e7afa

File content as of revision 3:dc88b52d526c:

#include "mbed.h"
#include "DS1307.h"
#include "DigitDisplay.h"

DS1307 myrtc(I2C_SDA,I2C_SCL);
DigitDisplay display(D7,D8);
DigitalOut buzzer(D6);
BusIn b(D9,D10,D11);
BusOut led(D2,D3,D4,D5);
AnalogIn analog_value(A2);

void DisplayTime();

int mode=0;
int main() 
{
   b.mode(PullUp);
   int sec=45,min=59,hour=6,day=7,date=5,month=12,year=15;
   int n=0,opt=1,p=0,ten_hour,nu_hour,ten_min,nu_min,hour_a=7,min_a=0;
   float mea;
        
   myrtc.settime(sec,min,hour,day,date,month,year);
   //DisplayTime();
   //display.Displayset((hour-(hour%10))/10,hour%10,(min-(min%10))/10,min%10);
   while(1)
   {        
        mea=analog_value.read();
        if(b==0b011){n=1;}
        else if(b==0b101){n=2;}
        else if(b==0b110){n=3;}
        else n=0;
        display.getButtonState(n);
        if(display.checkButton1()==1){led=0b100;mode=1;}
        else if(display.checkButton2()==1){led=0b010;mode=2;}
        else if(display.checkButton3()==1){led=0b001;mode=3;}
        
        wait_ms(100);
        
        //printf("%d\n",mode);
        
        wait_ms(100);
        
        if(display.checkButton3()==1)
        {
            p++;
            if(p==10){p=0;}
            printf("%d\n",p);
            if(p%2==0){opt=1;}
            if(p%2==1){opt=2;}
        }
        
        myrtc.gettime(&sec,&min,&hour,&day,&date,&month,&year);
        
        if(opt==1)
        {
            display.setColon(1);
                 display.Displayset((hour-(hour%10))/10,hour%10,(min-(min%10))/10,min%10);           
        }
        if(opt==2)
        {
             ten_hour=(hour_a-(hour_a%10))/10;
             nu_hour=hour_a%10;
             ten_min=(min_a-(min_a%10))/10;
             nu_min=min_a%10;
             display.Displayset(ten_hour,nu_hour,ten_min,nu_min);
        
             if(display.checkButton1()==1){hour_a++;}
             if(display.checkButton2()==1){min_a++;}
             
             if(hour_a==24){hour_a=0;}
             if(min_a==60){min_a=0;}
             
        }
        if(hour==hour_a&&min==min_a){buzzer=1;}
        else{buzzer=0;}
        
        printf("%f\n",mea);
        if(mea>=0.65){min_a=min_a+1;}
        
   }
}