|
|
|
@ -50,7 +50,7 @@ TComCtrl *g_ptFDCAN1; |
|
|
|
* 宏定义 * |
|
|
|
*----------------------------------------------*/ |
|
|
|
|
|
|
|
int RS485_1_Send(char *_pBuffer, uint32_t _iSize) |
|
|
|
static int RS485_1_Send(char *_pBuffer, uint32_t _iSize) |
|
|
|
{ |
|
|
|
HAL_GPIO_WritePin(RS485_1_DIR_GPIO_Port, RS485_1_DIR_Pin, GPIO_PIN_SET); |
|
|
|
TUartUserData *ptUartUserData = (TUartUserData *)g_ptRS485_1->m_pUserData; |
|
|
|
@ -59,7 +59,7 @@ int RS485_1_Send(char *_pBuffer, uint32_t _iSize) |
|
|
|
return iRet; |
|
|
|
} |
|
|
|
|
|
|
|
int RS485_2_Send(char *_pBuffer, uint32_t _iSize) |
|
|
|
static int RS485_2_Send(char *_pBuffer, uint32_t _iSize) |
|
|
|
{ |
|
|
|
HAL_GPIO_WritePin(RS485_2_DIR_GPIO_Port, RS485_2_DIR_Pin, GPIO_PIN_SET); |
|
|
|
TUartUserData *ptUartUserData = (TUartUserData *)g_ptRS485_2->m_pUserData; |
|
|
|
@ -94,11 +94,35 @@ static int check_RS485_2(char *_pBuffer, uint32_t _iSize) |
|
|
|
return _iSize; |
|
|
|
} |
|
|
|
|
|
|
|
int FDCAN1_Send(char *_pBuffer, uint32_t _iSize) |
|
|
|
static int check_Spoolend(char *_pBuffer, uint32_t _iSize) |
|
|
|
{ |
|
|
|
TCANUserData *ptCANUserData = (TCANUserData *)g_ptFDCAN1->m_pUserData; |
|
|
|
uint32_t iCANId = (uint8_t)ptCANUserData->m_canrx->Identifier; |
|
|
|
rd_ComIDSend(g_ptFDCAN1, iCANId, _pBuffer, _iSize); |
|
|
|
return _iSize; |
|
|
|
} |
|
|
|
|
|
|
|
static int FDCAN1_Send(char *_pBuffer, uint32_t _iSize) |
|
|
|
{ |
|
|
|
return CAN_TX_FIFOQ(g_ptFDCAN1, _pBuffer[0], &_pBuffer[4], _iSize); |
|
|
|
} |
|
|
|
|
|
|
|
void HAL_FDCAN_ErrorStatusCallback(FDCAN_HandleTypeDef *hfdcan, uint32_t ErrorStatusITs) |
|
|
|
{ |
|
|
|
if (hfdcan->Instance == FDCAN1) |
|
|
|
{ |
|
|
|
MX_FDCAN1_Init(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
void HAL_FDCAN_RxFifo0Callback(FDCAN_HandleTypeDef *hfdcan, uint32_t RxFifo0ITs) |
|
|
|
{ |
|
|
|
if (hfdcan->Instance == FDCAN1) |
|
|
|
{ |
|
|
|
CAN_RX_IRQHandler(g_ptFDCAN1); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
void Myprint_Init(void) |
|
|
|
{ |
|
|
|
TUartUserData *ptUartUserData = UART_userdata_init(1, 115200, 4096); |
|
|
|
@ -127,11 +151,6 @@ int Myprint_putchar(uint8_t ch) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
static int check_Spoolend(char *_pBuffer, uint32_t _iSize) |
|
|
|
{ |
|
|
|
return _iSize; |
|
|
|
} |
|
|
|
|
|
|
|
void SpoolendInit(void) |
|
|
|
{ |
|
|
|
TUartUserData *ptUartUserData = UART_userdata_init(0, 115200, 512); |
|
|
|
@ -149,11 +168,11 @@ void SpoolendTask(void) |
|
|
|
{ |
|
|
|
char pcBuffer1[52] = {0}; |
|
|
|
// char pcBuffer2[52] = {0};
|
|
|
|
char cansend[5] = {1, 2, 3 ,4, 5}; |
|
|
|
rd_ComIDSend(g_ptFDCAN1, 1, cansend, sizeof(cansend)); |
|
|
|
char pcBuffer3[52] = {0}; |
|
|
|
__disable_irq(); |
|
|
|
rd_ComRead(g_ptRS485_1, pcBuffer1, sizeof(pcBuffer1)); |
|
|
|
// rd_ComRead(g_ptRS485_2, pcBuffer2, sizeof(pcBuffer2));
|
|
|
|
rd_ComRead(g_ptFDCAN1, pcBuffer3, sizeof(pcBuffer3)); |
|
|
|
__enable_irq(); |
|
|
|
} |
|
|
|
|
|
|
|
|