Detektor pokreta sa logiranjem vremena detektovanja aktivnosti. LPC1768 + TinyRTC DS1307 + PIR detektor pokreta. Mogućnost deaktivacije sustava.
Dependencies: mbed DetectOff RTC-DS1307
main.cpp
00001 //Izvorne datoteke 00002 #include "mbed.h" 00003 #include "Rtc_Ds1307.h" 00004 #include "DetectOff.h" 00005 00006 //Inicijalizacija varijabli 00007 Serial pc(USBTX,USBRX); 00008 Timer debounce; 00009 Rtc_Ds1307 rtc(p9,p10); 00010 InterruptIn detector(p13); 00011 DigitalOut ledica(p15); 00012 DigitalIn taster(p18); 00013 DetectOff led(LED2); 00014 Rtc_Ds1307::Time_rtc tmt = {}; 00015 LocalFileSystem local("local"); 00016 00017 //Detekcija i zapisivanje u datoteku/consolu 00018 void detection(){ 00019 FILE* File1 = freopen("/local/activity.txt","a",stdout); 00020 if(debounce.read_ms()>200){ 00021 ledica=1; 00022 if(rtc.getTime(tmt)){ 00023 pc.printf("%02d:%02d:%02d %s, %02d/%02d/%04d \r", tmt.hour, tmt.min, tmt.sec, rtc.weekdayToString(tmt.wday), tmt.mon, tmt.date, tmt.year); 00024 fprintf(File1,"%02d:%02d:%02d %s, %02d/%02d/%04d\n", tmt.hour, tmt.min, tmt.sec, rtc.weekdayToString(tmt.wday), tmt.mon, tmt.date, tmt.year); 00025 } 00026 ledica=0; 00027 fclose(File1); 00028 debounce.reset(); 00029 } 00030 } 00031 00032 //Glavna klasa - inicijalizacija 00033 int main(){ 00034 while(1){ 00035 if(taster==1){ 00036 led.disable(5); 00037 detector==0; 00038 } 00039 else if(taster==0){ 00040 debounce.start(); 00041 detector.rise(&detection); 00042 } 00043 } 00044 } 00045 00046 00047 00048
Generated on Sun Jul 24 2022 03:05:54 by
1.7.2