fast-feedback virtual target task code on STM Nucleo

Dependencies:   mbed

Revision:
26:b4421d1ee57a
Parent:
24:e236faf66935
Child:
27:b31ea8d74f9e
--- a/trial.cpp	Wed Jul 04 13:26:58 2018 +0000
+++ b/trial.cpp	Thu Jul 05 20:15:37 2018 +0000
@@ -2,7 +2,6 @@
 #include "rig.h"
 #include "IO.h"
 #include "random.h"
-#include "events.h"
 
 const uint64_t MicrosecondsInSecond = 1000000;
 
@@ -74,8 +73,9 @@
     }
     
     // reset interrupt events
-    licking_events.clear();
-    whisking_events.clear();
+    lickIn.reset(task.lick_debounce_ms.value, true);
+    whiskIn.reset(task.whisk_debounce_ms.value, true);
+    gateIn.reset(-1, true);
 }
 
 void Trial::assignCues(const Task& task, const bool& assignVisual)
@@ -128,13 +128,13 @@
 }
 
 void Trial::markTrialStart() {
-    starting = timer.read_ms();
+    starting = TrialTimer.read_ms();
     trialStart.run();
-    timer.start();
+    TrialTimer.start();
 }
 
 void Trial::markEndOfWait() {
-    cuestarting = timer.read_ms();
+    cuestarting = TrialTimer.read_ms();
     waiting     = cuestarting - starting;
 }
 
@@ -142,8 +142,8 @@
     trialEnd.run();
     trialEnd.wait();
     writeToSerial();
-    timer.stop();
-    timer.reset();
+    TrialTimer.stop();
+    TrialTimer.reset();
 }
 
 void Trial::writeToSerial() {
@@ -160,8 +160,10 @@
     
     trialtime_t zero = (flag.reset)? starting : cuestarting;
     IO::write(";whisk");
-    whisking_events.writeToSerial(zero);
+    whiskIn.writeToSerial(zero);
+    IO::write(";gate");
+    gateIn.writeToSerial(zero);
     IO::write(";lick");
-    licking_events.writeToSerial(zero);
+    lickIn.writeToSerial(zero);
     IO::write(";\r\n");
 }
\ No newline at end of file