]> rtime.felk.cvut.cz Git - fpga/rpi-motor-control.git/blobdiff - pmsm-control/test_sw/pmsm_state.h
Correct typo in rpi-mc-1 mapping to Ti AM437x based RICO board.
[fpga/rpi-motor-control.git] / pmsm-control / test_sw / pmsm_state.h
index b3a3125e5e8b03543a58431fe4e42a72f52f3be8..47401d8f9e4d7eb9e169fcceb7c7342ad3537054 100644 (file)
@@ -16,6 +16,8 @@
 struct rpi_in;
 
 struct rpi_state{
+       //const unsigned MAX_DUTY;      /*Max duty*/
+
        struct rpi_in* spi_dat;         /* spi data */
        sem_t thd_par_sem;              /* data metual exlusion access */
        uint8_t test;                   /* configuratin byte - pwm enabl. bits etc. */
@@ -44,8 +46,48 @@ struct rpi_state{
        int log_col_count;              /* number of log columns */
        int log_col;                    /* current colimn */
        char doLogs;                    /* schall we make logs? */
+
+       void (*main_commutator)(struct rpi_state*);     /* primarni komutator */
+       void (*main_controller)(struct rpi_state*);     /* primarni regulator */
+
+       char error;                     /* detekce chyboveho stavu */
+
+       int8_t h1_old,h2_old,h3_old;    /* stare hodnoty hallu */
 };
 
-void freeLogs();
+/**
+ * Index OK.
+ */
+inline void setIndexOK(struct rpi_state*);
+
+/**
+ * Index Lost.
+ */
+inline void setIndexLost(struct rpi_state*);
+
+/**
+ * Turn commutation on.
+ */
+inline void setCommutationOn(struct rpi_state*);
+
+/**
+ * Turn commutation off.
+ */
+inline void setCommutationOff(struct rpi_state*);
+
+/**
+ * Turn on speed regulation.
+ */
+inline void setRegulationSpeed(struct rpi_state*);
+
+/**
+ * \brief Turn on position regulation
+ */
+inline void setRegulationPos(struct rpi_state*);
+
+/**
+ * \brief Turn off regulation.
+ */
+inline void setRegulationOff(struct rpi_state*);
 
 #endif /*PMSM_STATE*/