Geo beacon for VF.
Dependencies: MMA8452 aconno_bsp adc52832_common
Revision 9:2ab2be19add9, committed 2017-07-20
- Comitter:
- jurica238814
- Date:
- Thu Jul 20 13:44:49 2017 +0000
- Parent:
- 8:570eb66d50b5
- Child:
- 10:fd91664032d8
- Commit message:
- acc disabled. Buzzing does not work.
Changed in this revision
| main.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/main.cpp Thu Jul 20 11:15:37 2017 +0000
+++ b/main.cpp Thu Jul 20 13:44:49 2017 +0000
@@ -14,8 +14,8 @@
#define DEBUG 1
-#define SLEEP_TIME (0.85) // Sleep time in seconds WAS 0.85
-#define AWAKE_TIME (2.15) // Was 0.15
+#define SLEEP_TIME (2.0) // Sleep time in seconds WAS 0.85
+#define AWAKE_TIME (2.0) // Was 0.15
#define BUZZER (p31)
/* Static constants for the BLE example */
@@ -51,6 +51,7 @@
#if DEBUG
DigitalOut int_led(p22);
+ DigitalOut awake(p24);
#endif
/* Restart Advertising on disconnection*/
@@ -147,7 +148,7 @@
continue;
}
else{
- return;
+ //return;
}
}
turnBuzzOffT.detach();
@@ -181,7 +182,7 @@
buzzer.write(0.5f);
wait_ms(100);
buzzer.write(0.0f);
- buzzer_flag = 0;
+ sleepFlag = 0;
}
void pulse_handler(void){
@@ -191,8 +192,8 @@
i2c_power.write(1.0F);
buzzer_flag = 1;
// Be awake some time
- WakeSleepT.detach();
- WakeSleepT.attach(goToSleep, AWAKE_TIME);
+ //WakeSleepT.detach();
+ //WakeSleepT.attach(goToSleep, AWAKE_TIME);
}
int main(void){
@@ -225,7 +226,7 @@
wait_ms(1);
/* Setup for the interrupt handler */
- gyro_pulse.rise(&pulse_handler);
+ //gyro_pulse.rise(&pulse_handler); // -------------------------------------
acc.set_register((char)CTRL_REG_1, (char) 0x01); // Flow data rate and Active mode
wait(1);
@@ -237,8 +238,20 @@
/* spin loop */
}
+ while(1){
+ ble.waitForEvent();
+ awake != awake;
+ wait_ms(100);
+ }
+
while(true){
- if(sleepFlag) __WFI();
- else ble.waitForEvent();
+ if(sleepFlag){
+ if(!awake) awake = 1;
+ __WFI();
+ }
+ else{
+ if(awake) awake = 0;
+ ble.waitForEvent();
+ }
}
}

