]> rtime.felk.cvut.cz Git - fpga/lx-cpu1/lx-rocon.git/blobdiff - sw/app/rocon/pxmcc_interface.h
RoCoN: add proper DQ current components controllers for stepper motor.
[fpga/lx-cpu1/lx-rocon.git] / sw / app / rocon / pxmcc_interface.h
index 2ffeccf016d81125debd34bda6883ee89a6c6aa9..46a2a08b54b0ebae89059c9064ea2ec62896ec53 100644 (file)
@@ -18,6 +18,7 @@
 #ifndef _PXMCC_INTERFACE_H_
 #define _PXMCC_INTERFACE_H_
 
+#include <stdint.h>
 #include <pxmc.h>
 #include "pxmcc_types.h"
 
@@ -52,6 +53,17 @@ void pxmcc_axis_enable(pxmc_state_t *mcs, int enable)
   mcc_axis->ccflg = enable? 1: 0;
 }
 
+static inline
+void pxmcc_axis_get_cur_dq_act(pxmc_state_t *mcs, int *p_cur_d, int *p_cur_q)
+{
+  volatile pxmcc_axis_data_t *mcc_axis = pxmc_rocon_mcs2pxmcc(mcs);
+  uint32_t cur_dq = mcc_axis->cur_dq;
+  *p_cur_d = (int16_t)(cur_dq >> 16);
+  *p_cur_q = (int16_t)(cur_dq);
+}
+
+void pxmcc_axis_get_cur_dq_filt(pxmc_state_t *mcs, int *p_cur_d, int *p_cur_q);
+
 void pxmcc_pxmc_ptofs2mcc(pxmc_state_t *mcs, int enable_update);
 
 int pxmcc_axis_setup(pxmc_state_t *mcs, int mode);