From ce95311e3ca782c405591d12da7cf4366c8dcfb2 Mon Sep 17 00:00:00 2001 From: Avi Levkovich Date: Wed, 26 Aug 2020 11:04:13 +0300 Subject: Add support of WHS fan controller with slave address 0x5E . Add option to read 2 more dancers for 4 winders demo --- .../Embedded_SW/Embedded/Drivers/FPGA/FPGA_SSI_Comm.c | 15 +++++++++++++++ .../Embedded_SW/Embedded/Drivers/FPGA/FPGA_SSI_Comm.h | 7 +++++++ 2 files changed, 22 insertions(+) (limited to 'Software/Embedded_SW/Embedded/Drivers/FPGA') 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 96598ef31..782949fd0 100644 --- a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SSI_Comm.c +++ b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SSI_Comm.c @@ -14,6 +14,8 @@ #include "PMR/Hardware/HardwareDancerType.pb-c.h" +static short DummyBusy = 0; + static FpgaDancerMap_t FpgaRotEncMap[NUM_OF_ROTENC] = { @@ -22,10 +24,19 @@ static FpgaDancerMap_t FpgaRotEncMap[NUM_OF_ROTENC] = {&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},//Dryer_ENC // {&F1_RSPARE_ROTENC_DATA_p_TX , &F1_RSPARE_ROTENC_DATA_p_RX_msb , &F1_RSPARE_ROTENC_DATA_p_RX_lsb ,&F1_SPI_Busy1_D}, +#ifdef FOUR_WINDERS + {&F2_DISPENSER_ROTENC_DATA_p_6_TX , &F2_DISPENSER_ROTENC_DATA_p_6_RX_msb , &F2_DISPENSER_ROTENC_DATA_p_6_RX_lsb ,&DummyBusy},//We don't have Busy bit in FPGA & It is not in use + {&F3_SPARE2_ROTENC_DATA_p_2_TX , &F3_SPARE2_ROTENC_DATA_p_2_RX_msb , &F3_SPARE2_ROTENC_DATA_p_2_RX_lsb ,&DummyBusy},//We don't have Busy bit in FPGA & It is not in use +#endif + }; +#ifdef FOUR_WINDERS +uint8_t FPGA_SSI_Transmit(Dancers_4_Winders _RotEncId) +#else uint8_t FPGA_SSI_Transmit(HardwareDancerType _RotEncId) +#endif { //if(*FpgaRotEncMap[_RotEncId].SSI_Busy == NOTBUSY) { @@ -36,7 +47,11 @@ uint8_t FPGA_SSI_Transmit(HardwareDancerType _RotEncId) return OK; } +#ifdef FOUR_WINDERS +uint8_t FPGA_SSI_Receive(Dancers_4_Winders _RotEncId) +#else uint8_t FPGA_SSI_Receive(HardwareDancerType _RotEncId) +#endif { INT2SHORT Int2Short; unsigned int temp; 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 cec4c4de3..d51576778 100644 --- a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SSI_Comm.h +++ b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_SSI_Comm.h @@ -51,9 +51,16 @@ typedef struct } FpgaDancerMap_t; + + +#ifdef FOUR_WINDERS +uint8_t FPGA_SSI_Transmit(Dancers_4_Winders _RotEncId); +uint8_t FPGA_SSI_Receive(Dancers_4_Winders _RotEncId); +#else uint8_t FPGA_SSI_Transmit(HardwareDancerType _RotEncId); uint8_t FPGA_SSI_Receive(HardwareDancerType _RotEncId); +#endif uint8_t FPGA_SSI_Speed_Sensor_Transnit(); -- cgit v1.3.1