Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Fork of zProject_RTC_display_alarm by
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;}
}
}
