Updated for stage-3
Fork of Task613Solution-mbeds54 by
Diff: main.cpp
- Revision:
- 4:4d74762bf38b
- Parent:
- 3:ef46c1ddefed
diff -r ef46c1ddefed -r 4d74762bf38b main.cpp
--- a/main.cpp Tue Oct 31 14:27:48 2017 +0000
+++ b/main.cpp Fri Nov 08 10:45:29 2019 +0000
@@ -11,6 +11,15 @@
void Function3();
void Function4();
+typedef struct {
+ float temp;
+ float press;
+ float humid;
+} Measurement;
+
+Measurement buffer[120];
+
+
//I/O
DigitalOut onBoardLED(LED1);
DigitalOut redLED(PE_15);
@@ -38,7 +47,7 @@
while (true) {
redLED = !redLED;
if (redLED == 0) {
- t2.signal_set(RED_OFF);
+ t2.flags_set(RED_OFF);
}
Thread::wait(1000);
}
@@ -47,10 +56,10 @@
void Function2()
{
while (true) {
- Thread::signal_wait(RED_OFF);
+ ThisThread::flags_wait_all(RED_OFF);
yellowLED = !yellowLED;
if (yellowLED == 0) {
- t3.signal_set(YELLOW_OFF);
+ t3.flags_set(YELLOW_OFF);
}
}
}
@@ -59,10 +68,10 @@
void Function3()
{
while (true) {
- Thread::signal_wait(YELLOW_OFF);
+ ThisThread::flags_wait_all(YELLOW_OFF);
greenLED = !greenLED;
if (greenLED == 0) {
- t4.signal_set(GREEN_OFF);
+ t4.flags_set(GREEN_OFF);
}
}
}
@@ -71,7 +80,7 @@
void Function4()
{
while (true) {
- Thread::signal_wait(GREEN_OFF);
+ ThisThread::flags_wait_all(GREEN_OFF);
//Signal main thread
osSignalSet(idMain, ALL_OFF);
}
@@ -94,10 +103,10 @@
//Thread ID
- id1 = t1.gettid();
- id2 = t2.gettid();
- id3 = t3.gettid();
- id4 = t4.gettid();
+// id1 = t1.gettid();
+// id2 = t2.gettid();
+// id3 = t3.gettid();
+// id4 = t4.gettid();
while(1) {
//Wait for the ALL_ON signal
