работа canemu вынесена в отдельную функцию
доработана терминалка +гитигнор сгенереных файлов
This commit is contained in:
@@ -57,8 +57,6 @@ void SystemClock_Config(void);
|
||||
|
||||
/* Private user code ---------------------------------------------------------*/
|
||||
/* USER CODE BEGIN 0 */
|
||||
CANEmu_HandleTypeDef hcanemu;
|
||||
int flag_manual = 0;
|
||||
/* USER CODE END 0 */
|
||||
|
||||
/**
|
||||
@@ -102,56 +100,9 @@ int main(void)
|
||||
|
||||
/* Infinite loop */
|
||||
/* USER CODE BEGIN WHILE */
|
||||
int transmit_prev = hcanemu.transmit;
|
||||
while (1)
|
||||
{
|
||||
if(flag_manual == 0)
|
||||
{
|
||||
hcanemu.start_poll = MB_DATA.Coils.START_POLLING;
|
||||
hcanemu.transmit = MB_DATA.Coils.START_SINGLE_FRAME;
|
||||
hcanemu.period_ms = MB_DATA.HoldRegs.CAN_PERIOD;
|
||||
// can message
|
||||
hcanemu.header.IDE = MB_DATA.Coils.HEADER_IDE;
|
||||
hcanemu.header.RTR = MB_DATA.Coils.HEADER_RTR;
|
||||
hcanemu.bitrate_bps = (uint32_t)MB_DATA.HoldRegs.CAN_BITRATE_KBPS*1000;
|
||||
hcanemu.header.ExtId = ((uint32_t)MB_DATA.HoldRegs.CAN_ID_HI << 16) || MB_DATA.HoldRegs.CAN_ID_LO;
|
||||
hcanemu.header.StdId = hcanemu.header.ExtId;
|
||||
hcanemu.header.DLC = (uint8_t)MB_DATA.HoldRegs.CAN_DLC & 0xF;
|
||||
hcanemu.data[0] = (uint8_t)MB_DATA.HoldRegs.CAN_DATA_0;
|
||||
hcanemu.data[1] = (uint8_t)MB_DATA.HoldRegs.CAN_DATA_1;
|
||||
hcanemu.data[2] = (uint8_t)MB_DATA.HoldRegs.CAN_DATA_2;
|
||||
hcanemu.data[3] = (uint8_t)MB_DATA.HoldRegs.CAN_DATA_3;
|
||||
hcanemu.data[4] = (uint8_t)MB_DATA.HoldRegs.CAN_DATA_4;
|
||||
hcanemu.data[5] = (uint8_t)MB_DATA.HoldRegs.CAN_DATA_5;
|
||||
hcanemu.data[6] = (uint8_t)MB_DATA.HoldRegs.CAN_DATA_6;
|
||||
hcanemu.data[7] = (uint8_t)MB_DATA.HoldRegs.CAN_DATA_7;
|
||||
|
||||
// errors
|
||||
hcanemu.errors.FF_SRS = MB_DATA.Coils.FLIP_SRS;
|
||||
hcanemu.errors.FF_IDE = MB_DATA.Coils.FLIP_IDE;
|
||||
hcanemu.errors.FF_RTR = MB_DATA.Coils.FLIP_RTR;
|
||||
hcanemu.errors.FF_R1 = MB_DATA.Coils.FLIP_R1;
|
||||
hcanemu.errors.FF_R0 = MB_DATA.Coils.FLIP_R0;
|
||||
hcanemu.errors.MSGID = MB_DATA.Coils.FLIP_MSGID_BIT;
|
||||
hcanemu.errors.DATA = MB_DATA.Coils.FLIP_DATA_BIT;
|
||||
hcanemu.errors.CRC_ERR = MB_DATA.Coils.FLIP_CRC_BIT;
|
||||
hcanemu.errors.STUFF_BITS = MB_DATA.Coils.DISABLE_STUFF_BITS;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
if(hcanemu.start_poll)
|
||||
{
|
||||
hcanemu.transmit = 0;
|
||||
HAL_Delay(hcanemu.period_ms);
|
||||
CANEmu_SendFrame(&hcanemu);
|
||||
}
|
||||
else if((hcanemu.transmit == 1) && (transmit_prev == 0))
|
||||
{
|
||||
CANEmu_SendFrame(&hcanemu);
|
||||
}
|
||||
transmit_prev = hcanemu.transmit;
|
||||
CANEmu_Working(&hcanemu);
|
||||
/* USER CODE END WHILE */
|
||||
|
||||
/* USER CODE BEGIN 3 */
|
||||
|
||||
@@ -39,7 +39,7 @@ void MX_USART1_UART_Init(void)
|
||||
|
||||
/* USER CODE END USART1_Init 1 */
|
||||
huart1.Instance = USART1;
|
||||
huart1.Init.BaudRate = 256000;
|
||||
huart1.Init.BaudRate = 115200;
|
||||
huart1.Init.WordLength = UART_WORDLENGTH_8B;
|
||||
huart1.Init.StopBits = UART_STOPBITS_1;
|
||||
huart1.Init.Parity = UART_PARITY_NONE;
|
||||
|
||||
Reference in New Issue
Block a user