diff options
| author | Avi Levkovich <avi@twine-s.com> | 2018-05-14 13:40:46 +0300 |
|---|---|---|
| committer | Avi Levkovich <avi@twine-s.com> | 2018-05-14 13:40:46 +0300 |
| commit | 597bb4759dde2fa5dedda1bd005cc6fcf3a14158 (patch) | |
| tree | ac21802276172d4ac7faf59cfbbb7c89c991a977 /Software/Embedded_SW/Embedded | |
| parent | f912e09f0c0b84518ca8ce99c6240257df90310a (diff) | |
| parent | c0e1d90d4a3a02d943f778e8116dfde3bd8c9004 (diff) | |
| download | Tango-597bb4759dde2fa5dedda1bd005cc6fcf3a14158.tar.gz Tango-597bb4759dde2fa5dedda1bd005cc6fcf3a14158.zip | |
Merge branch 'master' of https://twinetfs.visualstudio.com/_git/Tango
Diffstat (limited to 'Software/Embedded_SW/Embedded')
6 files changed, 50 insertions, 146 deletions
diff --git a/Software/Embedded_SW/Embedded/Drivers/Danser_SSI/SSI_Comm.c b/Software/Embedded_SW/Embedded/Drivers/Danser_SSI/SSI_Comm.c index af60ca52c..1060328a2 100644 --- a/Software/Embedded_SW/Embedded/Drivers/Danser_SSI/SSI_Comm.c +++ b/Software/Embedded_SW/Embedded/Drivers/Danser_SSI/SSI_Comm.c @@ -230,10 +230,10 @@ uint32_t Read_Dancer_Position (HardwareDancerType DancerId) SSIDisable(SSI1_BASE); return SSI_enc.Position; #else - // must call FPGA_SSI_Transnit first! + // must call FPGA_SSI_Transmit first! HardwareDancerType Dancer_Id = (HardwareDancerType)DancerId;//to remove warning FPGA_SSI_Receive(Dancer_Id); - FPGA_SSI_Transnit(Dancer_Id); + FPGA_SSI_Transmit(Dancer_Id); return DANCER_ENC[Dancer_Id].Position; #endif } diff --git a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SPI_Comm.c b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SPI_Comm.c index ee1387b85..5b7bd182d 100644 --- a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SPI_Comm.c +++ b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SPI_Comm.c @@ -204,146 +204,46 @@ void FPGA_GetBusy() F2_SPI_BUSY2.ushort = F2_SPI_Busy2_D; //F3_SPI_BUSY1.ushort = F3_SPI_Busy1_D; - for spare motors - for(i=0; i<NUM_OF_MOTORS;i++) - { - switch(i) - { - case HARDWARE_MOTOR_TYPE__MOTO_DH_CLEANHEAD: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_DH_CLEANHEAD_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_DH_CLEANHEAD_A1_SDI_busy; - break; - case HARDWARE_MOTOR_TYPE__MOTO_DH_CLEANMECH: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_DH_CLEANMECH_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_DH_CLEANMECH_A1_SDI_busy; - break; - case HARDWARE_MOTOR_TYPE__MOTO_DH_LID: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_DH_LID_A1_NBUSY) | F1_SPI_BUSY2.bits.F1_MOTO_DH_LID_A1_SDI_busy; - break; - case HARDWARE_MOTOR_TYPE__MOTO_DRYER_DRIVING: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_DRYER_DRIVING_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_DRYER_DRIVING_A1_SDI_busy; - break; - case HARDWARE_MOTOR_TYPE__MOTO_DRYER_LID: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_DRYER_LID_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_DRYER_LID_A1_SDI_busy; - break; - case HARDWARE_MOTOR_TYPE__MOTO_DRYER_LOADARM: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_DRYER_LOADARM_A1_NBUSY) | F1_SPI_BUSY2.bits.F1_MOTO_DRYER_LOADARM_A1_SDI_busy; - break; - case HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_1: - MotorDriverResponse[i].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_1_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; - break; - case HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_2: - MotorDriverResponse[i].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_2_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; - break; - case HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_3: - MotorDriverResponse[i].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_3_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; - break; - case HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_4: - MotorDriverResponse[i].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_4_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; - break; - case HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_5: - MotorDriverResponse[i].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_5_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; - break; - case HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_6: - MotorDriverResponse[i].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_6_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; - break; - case HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_7: - MotorDriverResponse[i].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_7_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; - break; - case HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_8: - MotorDriverResponse[i].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_8_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; - break; - case HARDWARE_MOTOR_TYPE__MOTO_SCREW: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY2.bits.F1_MOTO_SCREW_A1_NBUSY) | F1_SPI_BUSY2.bits.F1_MOTO_SCREW_A1_SDI_busy; - break; - case HARDWARE_MOTOR_TYPE__MOTO_WINDER: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY2.bits.F1_MOTO_WINDER_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_WINDER_A1_SDI_busy; - break; - case HARDWARE_MOTOR_TYPE__MOTO_LDANCER2: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_LDANCER2_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_LDANCER2_A1_SDI_busy; - break; - case HARDWARE_MOTOR_TYPE__MOTO_LDRIVING: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_LDRIVING_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_LDRIVING_A1_SDI_busy; - break; - case HARDWARE_MOTOR_TYPE__MOTO_LLOADING: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_LLOADING_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_LLOADING_A1_SDI_busy; - break; - case HARDWARE_MOTOR_TYPE__MOTO_LPIVOT1: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_LPIVOT1_A1_NBUSY) | F1_SPI_BUSY2.bits.F1_MOTO_LPIVOT1_A1_SDI_busy; - break; - case HARDWARE_MOTOR_TYPE__MOTO_RDANCER: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY2.bits.F1_MOTO_RDANCER_A1_NBUSY) | F1_SPI_BUSY2.bits.F1_MOTO_RDANCER_A1_SDI_busy; - break; - case HARDWARE_MOTOR_TYPE__MOTO_RDRIVING: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY2.bits.F1_MOTO_RDRIVING_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_RDRIVING_A1_SDI_busy; - break; - case HARDWARE_MOTOR_TYPE__MOTO_RLOADING: - MotorDriverResponse[i].Busy = (F1_MOT_NBUSY2.bits.F1_MOTO_RLOADING_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_RLOADING_A1_SDI_busy; - break; - default: - break; - } - } + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_DH_CLEANHEAD].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_DH_CLEANHEAD_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_DH_CLEANHEAD_A1_SDI_busy; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_DH_CLEANMECH].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_DH_CLEANMECH_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_DH_CLEANMECH_A1_SDI_busy; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_DH_LID].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_DH_LID_A1_NBUSY) | F1_SPI_BUSY2.bits.F1_MOTO_DH_LID_A1_SDI_busy; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_DRYER_DRIVING].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_DRYER_DRIVING_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_DRYER_DRIVING_A1_SDI_busy; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_DRYER_LID].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_DRYER_LID_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_DRYER_LID_A1_SDI_busy; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_DRYER_LOADARM].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_DRYER_LOADARM_A1_NBUSY) | F1_SPI_BUSY2.bits.F1_MOTO_DRYER_LOADARM_A1_SDI_busy; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_1].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_1_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_2].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_2_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_3].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_3_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_4].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_4_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_5].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_5_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_6].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_6_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_7].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_7_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_8].Busy = (F2_MOT_NBUSY1.bits.F2_MOTO_DISPENSER_A1_8_NBUSY) | F2_SPI_BUSY2.bits.F2_MOTO_DISPENSER_A1_1_BUSY; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_SCREW].Busy = (F1_MOT_NBUSY2.bits.F1_MOTO_SCREW_A1_NBUSY) | F1_SPI_BUSY2.bits.F1_MOTO_SCREW_A1_SDI_busy; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_WINDER].Busy = (F1_MOT_NBUSY2.bits.F1_MOTO_WINDER_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_WINDER_A1_SDI_busy; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_LDANCER2].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_LDANCER2_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_LDANCER2_A1_SDI_busy; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_LDRIVING].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_LDRIVING_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_LDRIVING_A1_SDI_busy; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_LLOADING].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_LLOADING_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_LLOADING_A1_SDI_busy; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_LPIVOT1].Busy = (F1_MOT_NBUSY1.bits.F1_MOTO_LPIVOT1_A1_NBUSY) | F1_SPI_BUSY2.bits.F1_MOTO_LPIVOT1_A1_SDI_busy; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_RDANCER].Busy = (F1_MOT_NBUSY2.bits.F1_MOTO_RDANCER_A1_NBUSY) | F1_SPI_BUSY2.bits.F1_MOTO_RDANCER_A1_SDI_busy; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_RDRIVING].Busy = (F1_MOT_NBUSY2.bits.F1_MOTO_RDRIVING_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_RDRIVING_A1_SDI_busy; + MotorDriverResponse[HARDWARE_MOTOR_TYPE__MOTO_RLOADING].Busy = (F1_MOT_NBUSY2.bits.F1_MOTO_RLOADING_A1_NBUSY) | F1_SPI_BUSY1.bits.F1_MOTO_RLOADING_A1_SDI_busy; - for(i=0; i<MAX_TEMPERATURE_SENSOR_ID;i++) - { - switch(i) - { - case TEMP_SENSE_ANALOG_MIXCHIP_TEMP: - TempSensorResponse[i].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_MIXCHIP_TEMP_1_BUSY; - break; - case TEMP_SENSE_ANALOG_DYEINGH_TEMP1: - TempSensorResponse[i].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DYEINGH_TEMP1_1_BUSY; - break; - case TEMP_SENSE_ANALOG_DYEINGH_TEMP2: - TempSensorResponse[i].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DYEINGH_TEMP2_1_BUSY; - break; - case TEMP_SENSE_ANALOG_DYEINGH_TEMP3: - TempSensorResponse[i].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DYEINGH_TEMP3_1_BUSY; - break; - case TEMP_SENSE_ANALOG_DYEINGH_TEMP4: - TempSensorResponse[i].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DYEINGH_TEMP4_1_BUSY; - break; - case TEMP_SENSE_ANALOG_DYEINGH_TEMP5: - TempSensorResponse[i].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DYEINGH_TEMP5_1_BUSY; - break; - case TEMP_SENSE_ANALOG_DRYER_TEMP1: - TempSensorResponse[i].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DRYER_TEMP1_1_BUSY; - break; - case TEMP_SENSE_ANALOG_DRYER_TEMP2: - TempSensorResponse[i].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DRYER_TEMP2_1_BUSY; - break; - case TEMP_SENSE_ANALOG_DRYER_TEMP3: - TempSensorResponse[i].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DRYER_TEMP3_1_BUSY; - break; - case TEMP_SENSE_AN_ENCLOSURETEMP1: - TempSensorResponse[i].Busy = F2_SPI_BUSY1.bits.F2_AN_ENCLOSURETEMP1_1_BUSY; - break; - case TEMP_SENSE_AN_ENCLOSURETEMP2: - TempSensorResponse[i].Busy = F2_SPI_BUSY1.bits.F2_AN_ENCLOSURETEMP2_1_BUSY; - break; - case TEMP_SENSE_AN_ENCLOSURETEMP3: - TempSensorResponse[i].Busy = F2_SPI_BUSY1.bits.F2_AN_ENCLOSURETEMP3_1_BUSY; - break; - default: - break; - } - } + TempSensorResponse[TEMP_SENSE_ANALOG_MIXCHIP_TEMP].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_MIXCHIP_TEMP_1_BUSY; + TempSensorResponse[TEMP_SENSE_ANALOG_DYEINGH_TEMP1].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DYEINGH_TEMP1_1_BUSY; + TempSensorResponse[TEMP_SENSE_ANALOG_DYEINGH_TEMP2].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DYEINGH_TEMP2_1_BUSY; + TempSensorResponse[TEMP_SENSE_ANALOG_DYEINGH_TEMP3].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DYEINGH_TEMP3_1_BUSY; + TempSensorResponse[TEMP_SENSE_ANALOG_DYEINGH_TEMP4].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DYEINGH_TEMP4_1_BUSY; + TempSensorResponse[TEMP_SENSE_ANALOG_DYEINGH_TEMP5].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DYEINGH_TEMP5_1_BUSY; + TempSensorResponse[TEMP_SENSE_ANALOG_DRYER_TEMP1].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DRYER_TEMP1_1_BUSY; + TempSensorResponse[TEMP_SENSE_ANALOG_DRYER_TEMP2].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DRYER_TEMP2_1_BUSY; + TempSensorResponse[TEMP_SENSE_ANALOG_DRYER_TEMP3].Busy = F2_SPI_BUSY1.bits.F2_ANALOG_DRYER_TEMP3_1_BUSY; + TempSensorResponse[TEMP_SENSE_AN_ENCLOSURETEMP1].Busy = F2_SPI_BUSY1.bits.F2_AN_ENCLOSURETEMP1_1_BUSY; + TempSensorResponse[TEMP_SENSE_AN_ENCLOSURETEMP2].Busy = F2_SPI_BUSY1.bits.F2_AN_ENCLOSURETEMP2_1_BUSY; + TempSensorResponse[TEMP_SENSE_AN_ENCLOSURETEMP3].Busy = F2_SPI_BUSY1.bits.F2_AN_ENCLOSURETEMP3_1_BUSY; - for(i=0; i<NUM_OF_ROTENC;i++) - { - switch(i) - { - case HARDWARE_DANCER_TYPE__LeftDancer: - Dancer_Busy[i] = F1_SPI_BUSY1.bits.F1_LDANCER2_ROTENC_DATA_p_busy; - break; - case HARDWARE_DANCER_TYPE__MiddleDancer: - Dancer_Busy[i] = F1_SPI_BUSY1.bits.F1_LDANCER1_ROTENC_DATA_p_busy; - break; - case HARDWARE_DANCER_TYPE__RightDancer: - Dancer_Busy[i] = F1_SPI_BUSY1.bits.F1_RDANCER_ROTENC_DATA_p_busy; - break; - default: - break; - } - } + Dancer_Busy[HARDWARE_DANCER_TYPE__LeftDancer] = F1_SPI_BUSY1.bits.F1_LDANCER2_ROTENC_DATA_p_busy; + Dancer_Busy[HARDWARE_DANCER_TYPE__MiddleDancer] = F1_SPI_BUSY1.bits.F1_LDANCER1_ROTENC_DATA_p_busy; + Dancer_Busy[HARDWARE_DANCER_TYPE__RightDancer] = F1_SPI_BUSY1.bits.F1_RDANCER_ROTENC_DATA_p_busy; SpeedSensorResponseS.Busy = F1_SPI_BUSY1.bits.F1_RSPARE_ROTENC_DATA_p_busy; diff --git a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SSI_Comm.c b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SSI_Comm.c index 8488aebab..cd6643c72 100644 --- a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SSI_Comm.c +++ b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SSI_Comm.c @@ -17,20 +17,22 @@ static FpgaDancerMap_t FpgaRotEncMap[NUM_OF_ROTENC] = { - {&F1_LDANCER2_ROTENC_DATA_p_TX, &F1_LDANCER2_ROTENC_DATA_p_RX_msb, &F1_LDANCER2_ROTENC_DATA_p_RX_lsb,&F1_SPI_Busy1_D}, - {&F1_LDANCER1_ROTENC_DATA_p_TX, &F1_LDANCER1_ROTENC_DATA_p_RX_msb, &F1_LDANCER1_ROTENC_DATA_p_RX_lsb,&F1_SPI_Busy1_D}, - {&F1_RDANCER_ROTENC_DATA_p_TX , &F1_RDANCER_ROTENC_DATA_p_RX_msb , &F1_RDANCER_ROTENC_DATA_p_RX_lsb ,&F1_SPI_Busy1_D}, + {&F1_LDANCER2_ROTENC_DATA_p_TX, &F1_LDANCER2_ROTENC_DATA_p_RX_msb, &F1_LDANCER2_ROTENC_DATA_p_RX_lsb,&F1_SPI_Busy1_D}, + {&F1_LDANCER1_ROTENC_DATA_p_TX, &F1_LDANCER1_ROTENC_DATA_p_RX_msb, &F1_LDANCER1_ROTENC_DATA_p_RX_lsb,&F1_SPI_Busy1_D}, + {&F1_RDANCER_ROTENC_DATA_p_TX , &F1_RDANCER_ROTENC_DATA_p_RX_msb , &F1_RDANCER_ROTENC_DATA_p_RX_lsb ,&F1_SPI_Busy1_D}, // {&F1_LSPARE_ROTENC_DATA_p_TX , &F1_LSPARE_ROTENC_DATA_p_RX_msb , &F1_LSPARE_ROTENC_DATA_p_RX_lsb ,&F1_SPI_Busy1_D}, // {&F1_RSPARE_ROTENC_DATA_p_TX , &F1_RSPARE_ROTENC_DATA_p_RX_msb , &F1_RSPARE_ROTENC_DATA_p_RX_lsb ,&F1_SPI_Busy1_D}, }; -uint8_t FPGA_SSI_Transnit(HardwareDancerType _RotEncId) + +uint8_t FPGA_SSI_Transmit(HardwareDancerType _RotEncId) { //if(*FpgaRotEncMap[_RotEncId].SSI_Busy == NOTBUSY) { uint32_t SSI_Dummy_TX= 0x123456; // Dummy *FpgaRotEncMap[_RotEncId].TX_Reg = SSI_Dummy_TX ; } + return OK; } diff --git a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SSI_Comm.h b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SSI_Comm.h index c0a5ffc49..168fa43a1 100644 --- a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SSI_Comm.h +++ b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SSI_Comm.h @@ -40,7 +40,7 @@ typedef struct } FpgaDancerMap_t; -uint8_t FPGA_SSI_Transnit(HardwareDancerType _RotEncId); +uint8_t FPGA_SSI_Transmit(HardwareDancerType _RotEncId); uint8_t FPGA_SSI_Receive(HardwareDancerType _RotEncId); diff --git a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_Dancer.c b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_Dancer.c index 1fc637029..499f227a9 100644 --- a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_Dancer.c +++ b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_Dancer.c @@ -57,7 +57,7 @@ void Stub_DancerPositionRequest(MessageContainer* requestContainer) if(Dancer_Id < NUM_OF_ROTENC) { - FPGA_SSI_Transnit(Dancer_Id); + FPGA_SSI_Transmit(Dancer_Id); SysCtlDelay(1000); FPGA_SSI_Receive(Dancer_Id); diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c index 48c985321..4477835d0 100644 --- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c +++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c @@ -210,6 +210,8 @@ uint32_t ThreadControlCBFunction(uint32_t IfIndex, uint32_t ReadValue) { DancerId = ThreadMotorIdToDancerId[index]; TranslatedReadValue = ReadValue - DancersCfg[DancerId].zeropoint; + if (index == POOLER_MOTOR) + TranslatedReadValue = (-1*TranslatedReadValue); MotorSamples[index][MotorSamplePointer[index]] = TranslatedReadValue;//(-1 * TranslatedReadValue); MotorSamplePointer[index]++; if (MotorSamplePointer[index] >= MotorsControl[index].pvinputfilterfactormode) MotorSamplePointer[index] = 0; |
