Liam Grazier / Mbed OS Final351CWfolderonly

Fork of Final351CW_FINAL by Liam Grazier

Revision:
10:098c2fa0a1a6
Parent:
9:e27b3f34de24
diff -r e27b3f34de24 -r 098c2fa0a1a6 main.cpp
--- a/main.cpp	Tue Jan 09 06:14:41 2018 +0000
+++ b/main.cpp	Tue Jan 09 11:33:14 2018 +0000
@@ -1,69 +1,77 @@
+/*   ELEC351 COURSEWORK 2018 
+DESIGNED USING MBED ONLINE COMPILER IMPORTED TO KEIL
+LIAM GRAZIER // DOUG TILLEY // ALEX BARON 
+ */
 #include "components.hpp"
 #include "mbed.h"
 #include "network.hpp"
 #include "lglcd.h"
 #include "stx.hpp"
+//voids for ticker attached tasks 
+void inter1();
+void inter2();
+void inter3();
+void inter4();
+void inter5();
+//thread initalised with priorities 
 Thread samplesThread(osPriorityNormal);
 Thread sdThread(osPriorityHigh);
 Thread sdRemoveThread(osPriorityHigh);
 Thread timebuttonThread(osPriorityNormal);
 Thread stxThread(osPriorityLow);
 Thread netThread(osPriorityRealtime);
-Mutex SD;
-void inter1();
-void inter2();
-void inter3();
-void inter4();
-void inter5();
-void inter6();
+//interrupt assign 
+InterruptIn sdex(USER_BUTTON);
+//ticker assigns 
 Ticker samples;
 Ticker remov;
-InterruptIn sdex(USER_BUTTON);
 Ticker storage;
 Ticker netTick;
 Ticker serielTick;
-Ticker buttonTick;
-int T = 5;
-void inter1(){
- sdcheck();
- samplesThread.signal_set(SIG_READY);          
+//sd card attached signal flag task
+void inter1()
+{
+    sdcheck();
+    samplesThread.signal_set(SIG_READY);          
 }
-void inter2(){
- sdThread.signal_set(SIG_READY2);  
+//sampling attached signal flag task
+void inter2()
+{
+    sdThread.signal_set(SIG_READY2);  
 }
-void inter3(){
-  //printf("CHECK REMOVE BUTTON\n\r");
- if(sdex == 1){
-    //printf("BUTTON IN");
- sdRemoveThread.signal_set(SIG_REMOVE);
- }
- }
- void inter4(){
- netThread.signal_set(SIG_NET);
+//sd card remove attached signal flag task
+void inter3()
+{
+    if(sdex == 1)//checks if remove button *USER BUTTON triggered by interrupt has been flagged to indicated remove
+    {
+        sdRemoveThread.signal_set(SIG_REMOVE);
+    }
 }
-void inter5(){
- stxThread.signal_set(SIG_SX);
+//network attached signal flag task
+void inter4()
+{
+    netThread.signal_set(SIG_NET);
 }
-//void inter6(){
-// timebuttonThread.signal_set(SIG_button);    
-//}
-int main(){
-lglcd mylcd(D7,D6,D5,D4,D3,D2);
-setuptime();
-printf("NEWIT");
-sdrun();
-lcdstart();
-welcomemsg();
-sdThread.start(sdwrite);
-storage.attach(&inter2,T); //runs send to sd  based on last number (10) in this case (every 10 seconds)
-samplesThread.start(runanalysis); 
-samples.attach(&inter1,T);   //runs analysis based on last number (1) in this case (every 1 second)
-sdRemoveThread.start(sdremove);
-remov.attach(&inter3,3);//checks sd remove key every 3 second
-netThread.start(networksend);
-netTick.attach(&inter4,0.01);
-stxThread.start(useseriel);
-serielTick.attach(&inter5,0.1);
-//timebuttonThread.start(//insertnamehere);
-//buttonTick.attach(&inter6,0.3); 
+//setial comms attached signal flag task
+void inter5()
+{
+    stxThread.signal_set(SIG_SX);
+}
+int main()
+{
+    lglcd mylcd(D7,D6,D5,D4,D3,D2);//setup lcd
+    setuptime();//setup time to default 
+    sdrun(); //init sd
+    lcdstart();//run lcd start code
+    welcomemsg(); //display welcome msg in the terminal 
+    sdThread.start(sdwrite); 
+    storage.attach(&inter2,1); //attached the storage SD ticker to the allocated flag task, this triggers every 1secs
+    samplesThread.start(runanalysis); 
+    samples.attach(&inter1,1);   //attached the samples ticker  to the allocated flag task, this triggers every 1secs
+    sdRemoveThread.start(sdremove);
+    remov.attach(&inter3,3);//attached the SD Remove ticker  to the allocated flag task, this triggers every 3secs
+    netThread.start(networksend);
+    netTick.attach(&inter4,0.01);//attached the network ticker to the allocated flag task, this triggers every 0.01secs
+    stxThread.start(useseriel);//
+    serielTick.attach(&inter5,0.1);//attached the serial ticker to the allocated flag task, this triggers every 0.1secs
 }
\ No newline at end of file