/* Inclusion files */ #include "FEE_IF.h" #include "ti_fee.h" /* macros */ #define BUF_SIZE_BLOCK_1 3072U #define BUF_SIZE_BLOCK_2 3072U #define BUF_SIZE_BLOCK_3 3072U #define BUF_SIZE_BLOCK_4 3072U #define BUF_SIZE_BLOCK_5 3072U #define BLOCK_NUM_1 1U #define BLOCK_NUM_2 2U #define BLOCK_NUM_3 3U #define BLOCK_NUM_4 4U #define BLOCK_NUM_5 5U #define BLOCK_OFFSET 0U /* Declaration of variables */ uint8_t Ui_FEE_WrDataBuff_B1[BUF_SIZE_BLOCK_1] = {0U}; uint8_t Ui_FEE_RdDataBuff_B1[BUF_SIZE_BLOCK_1] = {0U}; uint8_t Ui_FEE_WrDataBuff_B2[BUF_SIZE_BLOCK_2] = {0U}; uint8_t Ui_FEE_RdDataBuff_B2[BUF_SIZE_BLOCK_2] = {0U}; uint8_t Ui_FEE_WrDataBuff_B3[BUF_SIZE_BLOCK_3] = {0U}; uint8_t Ui_FEE_RdDataBuff_B3[BUF_SIZE_BLOCK_3] = {0U}; uint8_t Ui_FEE_WrDataBuff_B4[BUF_SIZE_BLOCK_4] = {0U}; uint8_t Ui_FEE_RdDataBuff_B4[BUF_SIZE_BLOCK_4] = {0U}; uint8_t Ui_FEE_WrDataBuff_B5[BUF_SIZE_BLOCK_5] = {0U}; uint8_t Ui_FEE_RdDataBuff_B5[BUF_SIZE_BLOCK_5] = {0U}; uint8 Ui_GetFeeSts = 0; /************************************************************************************************** ** FUNCTIONS ** **************************************************************************************************/ /************************************************************************************************** ** Function name : FEEIF_Test ** ** Description : To write data into internal FEE ** ** Parameter : Ui_DummyTaskParam ** ** Return value : Enm_Ret ** ** Remarks : None **************************************************************************************************/ uint32_t FEEIF_Test(uint32_t Ui_DummyTaskParam) { FEE_WR_RetCode_t Enm_Ret = FEE_WR_INVARG; uint32_t FeeWrBuffIndex = 0U; uint8_t Ui_WrRetSts = 0U, Ui_RdRetSts = 0U; /********************* Write all blocks *********************************/ /* Block 1*/ for(FeeWrBuffIndex = 0U; FeeWrBuffIndex < BUF_SIZE_BLOCK_1; FeeWrBuffIndex++) { Ui_FEE_WrDataBuff_B1[FeeWrBuffIndex] = 0X11; } do { TI_Fee_MainFunction(); delay(); Ui_GetFeeSts = TI_Fee_GetStatus(0); } while(Ui_GetFeeSts != IDLE); Ui_WrRetSts = TI_Fee_WriteAsync(BLOCK_NUM_1, Ui_FEE_WrDataBuff_B1); /* Block 2*/ for(FeeWrBuffIndex = 0U; FeeWrBuffIndex < BUF_SIZE_BLOCK_2; FeeWrBuffIndex++) { Ui_FEE_WrDataBuff_B2[FeeWrBuffIndex] = 0X22; } do { TI_Fee_MainFunction(); delay(); Ui_GetFeeSts = TI_Fee_GetStatus(0); } while(Ui_GetFeeSts != IDLE); Ui_WrRetSts = TI_Fee_WriteAsync(BLOCK_NUM_2, Ui_FEE_WrDataBuff_B2); /* Block 3*/ for(FeeWrBuffIndex = 0U; FeeWrBuffIndex < BUF_SIZE_BLOCK_3; FeeWrBuffIndex++) { Ui_FEE_WrDataBuff_B3[FeeWrBuffIndex] = 0X33; } do { TI_Fee_MainFunction(); delay(); Ui_GetFeeSts = TI_Fee_GetStatus(0); } while(Ui_GetFeeSts != IDLE); Ui_WrRetSts = TI_Fee_WriteAsync(BLOCK_NUM_3, Ui_FEE_WrDataBuff_B3); /* Block 4*/ for(FeeWrBuffIndex = 0U; FeeWrBuffIndex < BUF_SIZE_BLOCK_4; FeeWrBuffIndex++) { Ui_FEE_WrDataBuff_B4[FeeWrBuffIndex] = 0X44; } do { TI_Fee_MainFunction(); delay(); Ui_GetFeeSts = TI_Fee_GetStatus(0); } while(Ui_GetFeeSts != IDLE); Ui_WrRetSts = TI_Fee_WriteAsync(BLOCK_NUM_4, Ui_FEE_WrDataBuff_B4); /* Block 5*/ for(FeeWrBuffIndex = 0U; FeeWrBuffIndex < BUF_SIZE_BLOCK_5; FeeWrBuffIndex++) { Ui_FEE_WrDataBuff_B5[FeeWrBuffIndex] = 0X55; } do { TI_Fee_MainFunction(); delay(); Ui_GetFeeSts = TI_Fee_GetStatus(0); } while(Ui_GetFeeSts != IDLE); Ui_WrRetSts = TI_Fee_WriteAsync(BLOCK_NUM_5, Ui_FEE_WrDataBuff_B5); /********************* Read all blocks *********************************/ /* Read Block 1 */ do { TI_Fee_MainFunction(); delay(); Ui_GetFeeSts = TI_Fee_GetStatus(0); } while(Ui_GetFeeSts != IDLE); Ui_RdRetSts = TI_Fee_Read(BLOCK_NUM_1, BLOCK_OFFSET, Ui_FEE_RdDataBuff_B1, BUF_SIZE_BLOCK_1); /* Read Block 2 */ do { TI_Fee_MainFunction(); delay(); Ui_GetFeeSts = TI_Fee_GetStatus(0); } while(Ui_GetFeeSts != IDLE); Ui_RdRetSts = TI_Fee_Read(BLOCK_NUM_2, BLOCK_OFFSET, Ui_FEE_RdDataBuff_B2, BUF_SIZE_BLOCK_2); /* Read Block 3 */ do { TI_Fee_MainFunction(); delay(); Ui_GetFeeSts = TI_Fee_GetStatus(0); } while(Ui_GetFeeSts != IDLE); Ui_RdRetSts = TI_Fee_Read(BLOCK_NUM_3, BLOCK_OFFSET, Ui_FEE_RdDataBuff_B3, BUF_SIZE_BLOCK_3); /* Read Block 4 */ do { TI_Fee_MainFunction(); delay(); Ui_GetFeeSts = TI_Fee_GetStatus(0); } while(Ui_GetFeeSts != IDLE); Ui_RdRetSts = TI_Fee_Read(BLOCK_NUM_4, BLOCK_OFFSET, Ui_FEE_RdDataBuff_B4, BUF_SIZE_BLOCK_4); /* Read Block 5 */ do { TI_Fee_MainFunction(); delay(); Ui_GetFeeSts = TI_Fee_GetStatus(0); } while(Ui_GetFeeSts != IDLE); Ui_RdRetSts = TI_Fee_Read(BLOCK_NUM_5, BLOCK_OFFSET, Ui_FEE_RdDataBuff_B5, BUF_SIZE_BLOCK_5); do { TI_Fee_MainFunction(); delay(); Ui_GetFeeSts = TI_Fee_GetStatus(0); } while(Ui_GetFeeSts != IDLE); Enm_Ret = FEE_WR_SUCCESS; return (uint32_t)Enm_Ret; } void delay(void) { unsigned int dummycnt=0x0000FFU; do { dummycnt--; } while(dummycnt>0); }