From: Pavel Pisa Date: Mon, 18 Sep 2017 13:59:21 +0000 (+0200) Subject: RPi PXMC Test: switch current calibration to work for cumulative ADC FPGA design. X-Git-Url: http://rtime.felk.cvut.cz/gitweb/fpga/rpi-motor-control-pxmc.git/commitdiff_plain/c5d830370e9308a0e68e956a0de04ec695894cff RPi PXMC Test: switch current calibration to work for cumulative ADC FPGA design. Signed-off-by: Pavel Pisa --- diff --git a/src/app/rpi-pmsm-test1/appl_pxmccmds.c b/src/app/rpi-pmsm-test1/appl_pxmccmds.c index 9621ec8..a79deff 100644 --- a/src/app/rpi-pmsm-test1/appl_pxmccmds.c +++ b/src/app/rpi-pmsm-test1/appl_pxmccmds.c @@ -143,7 +143,7 @@ int spimc_currentcal_accum(struct pxmc_state *mcs) int i; spimc_state_t *spimc = &spimc_state0; spimc_currentcal_state_t *cucalst = &spimc_currentcal_state; - int diff_to_last_fl = 0; + int diff_to_last_fl = spimc->curadc_use_diff_to_last_fl; if (cucalst->accum_cnt >= cucalst->req_accum) return 0; diff --git a/src/app/rpi-pmsm-test1/pxmc_spimc.h b/src/app/rpi-pmsm-test1/pxmc_spimc.h index b26f71f..f9768cf 100644 --- a/src/app/rpi-pmsm-test1/pxmc_spimc.h +++ b/src/app/rpi-pmsm-test1/pxmc_spimc.h @@ -25,8 +25,9 @@ typedef struct spimc_state_t { uint16_t curadc_sqn_last; uint32_t curadc_cumsum[SPIMC_CHAN_COUNT]; uint32_t curadc_cumsum_last[SPIMC_CHAN_COUNT]; - uint8_t tx_buf[SPIMC_TRANSFER_SIZE]; - uint8_t rx_buf[SPIMC_TRANSFER_SIZE]; + uint8_t tx_buf[SPIMC_TRANSFER_SIZE]; + uint8_t rx_buf[SPIMC_TRANSFER_SIZE]; + int curadc_use_diff_to_last_fl; } spimc_state_t; int spimc_init(spimc_state_t *spimcst); diff --git a/src/app/rpi-pmsm-test1/rpi_spi.c b/src/app/rpi-pmsm-test1/rpi_spi.c index 5e93cc1..8974cc9 100644 --- a/src/app/rpi-pmsm-test1/rpi_spi.c +++ b/src/app/rpi-pmsm-test1/rpi_spi.c @@ -282,5 +282,7 @@ int spimc_init(spimc_state_t *spimcst) spimcst->spi_fd = fd; + spimcst->curadc_use_diff_to_last_fl = 0; + return ret; } diff --git a/src/app/rpi-pmsm-test1/zynq_3pmdrv1_mc.c b/src/app/rpi-pmsm-test1/zynq_3pmdrv1_mc.c index 4c55186..796ee53 100644 --- a/src/app/rpi-pmsm-test1/zynq_3pmdrv1_mc.c +++ b/src/app/rpi-pmsm-test1/zynq_3pmdrv1_mc.c @@ -224,5 +224,7 @@ int z3pmdrv1_init(z3pmdrv1_state_t *z3pmcst) z3pmcst->index_pos = z3pmdrv1_reg_rd(z3pmcst, Z3PMDRV1_REG_IRC_IDX_POS_o); + z3pmcst->curadc_use_diff_to_last_fl = 1; + return ret; } diff --git a/src/app/rpi-pmsm-test1/zynq_3pmdrv1_mc.h b/src/app/rpi-pmsm-test1/zynq_3pmdrv1_mc.h index 82d2e80..a860552 100644 --- a/src/app/rpi-pmsm-test1/zynq_3pmdrv1_mc.h +++ b/src/app/rpi-pmsm-test1/zynq_3pmdrv1_mc.h @@ -24,6 +24,7 @@ typedef struct z3pmdrv1_state_t { uint16_t curadc_sqn_last; uint32_t curadc_cumsum[Z3PMDRV1_CHAN_COUNT]; uint32_t curadc_cumsum_last[Z3PMDRV1_CHAN_COUNT]; + int curadc_use_diff_to_last_fl; } z3pmdrv1_state_t; int z3pmdrv1_init(z3pmdrv1_state_t *z3pmcst);