robot

Dependencies:   FastPWM3 mbed

Revision:
82:5e741c5ffd9f
Parent:
78:b8df106126a7
Child:
84:dd32640942a4
--- a/BREMS/BREMSConfig.cpp	Sat Feb 25 01:12:27 2017 +0000
+++ b/BREMS/BREMSConfig.cpp	Fri Mar 10 08:29:13 2017 +0000
@@ -3,10 +3,14 @@
 #include "BREMSConfig.h"
 #include "BREMSStructs.h"
 
+#include "CommandProcessor.h"
+#include "PreferenceWriter.h"
+
 #include "config_pins.h"
 #include "config_inverter.h"
 #include "config_motor.h"
 #include "config_loop.h"
+#include "layout.h"
 
 void BREMSConfigRegisters(IOStruct *io) {
     RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN;
@@ -85,30 +89,15 @@
 }
 
 void BREMSStartupMsg(ReadDataStruct *read, Serial *pc) {
-    pc->printf("%s\n\r\n\r", "FOC'ed in the Bot Rev A.");
-    pc->printf("%s\n\r", "====Config Data====");
-    pc->printf("Current Sensor Offset: %f mV\n\r", I_OFFSET);
-    pc->printf("Current Sensor Scale: %f mv/A\n\r", I_SCALE);
-    pc->printf("Bus Voltage: %f V\n\r", BUS_VOLTAGE);
-    pc->printf("Switching Frequency: %f KHz \n\r", F_SW / 1000.0f);
-    pc->printf("Polling Frequency: %f Hz \n\r", F_SLOW_LOOP);
-    pc->printf("Pole pairs: %d\n\r", (int) POLE_PAIRS);
-    pc->printf("Resolver lobes: %d\n\r", (int) RESOLVER_LOBES);
-    pc->printf("Loop KP_D: %f\n\r", KP_D);
-    pc->printf("Loop KI_D: %f\n\r", KI_D);
-    pc->printf("Loop KP_Q: %f\n\r", KP_Q);
-    pc->printf("Loop KI_Q: %f\n\r", KI_Q);
-    pc->printf("Ia offset: %f mV\n\r", read->ia_supp_offset);
-    pc->printf("Ib offset: %f mV\n\r", read->ib_supp_offset);
-    pc->printf("\n\r");
+    pc->printf("%s\n", "FOC'ed in the Bot Rev A.");
 }
 
-void BREMSInit(IOStruct *io, ReadDataStruct *read, FOCStruct *foc, ControlStruct *control, bool tune) {
+void BREMSInit(IOStruct *io, ReadDataStruct *read, FOCStruct *foc, ControlStruct *control) {
     io->en = new DigitalOut(EN);
     io->en->write(0);
     
     io->pc = new Serial(USBTX, USBRX);
-    io->pc->baud(921600);
+    io->pc->baud(115200);
         
     io->throttle_in = new PwmIn(TH_PIN, TH_LIMIT_LOW, TH_LIMIT_HIGH, TH_LIMIT_CRAZY);
     io->pos = new PositionSensorEncoder(CPR, 0);
@@ -122,7 +111,11 @@
     BREMSConfigRegisters(io);
     wait_ms(250);
     BREMSZeroCurrent(read);
+    
+    io->pref = new PreferenceWriter(6);
     BREMSStartupMsg(read, io->pc);
+    cmd_reload(io->pc, io->pref);
+    io->pc->printf("%s", ">");
     
     control->d_integral = 0.0f;
     control->q_integral = 0.0f;
@@ -133,6 +126,5 @@
     control->d_ref = 0.0f;
     control->q_ref = 0.0f;
     control->torque_percent = 0.0f;
-
-    io->en->write(1);
+    control->enabled = false;
 }
\ No newline at end of file