Как сделать код передачи по протоколу CAN
Я использую плату NUCLEO-F103RB и трансивер SN65HVD230 CAN. и режим CAN - CAN_MODE_LOOPBACK. Рабочая область - Keil Uvision(IDE), STM32 ST-LINK(отладчик?).
У меня есть пример кода, который дает мне мой учитель. это пример кода STMICRO. но я действительно не знаю, как использовать..
во-первых, я знаю, как установить stdId, DLC, DATA[0]~[7], вот так.
tx_msg.StdId = 0x701;
tx_msg.DLC = 8;
tx_msg.Data[0] = 0x11;
tx_msg.Data[1] = 0x22;
tx_msg.Data[2] = 0x33;
tx_msg.Data[3] = 0x44;
tx_msg.Data[4] = 0x55;
tx_msg.Data[5] = 0x66;
tx_msg.Data[6] = 0x77;
tx_msg.Data[7] = 0x88;
как я знаю, следующим шагом будет создание кода передачи. а как сделать код передачи?
- с помощью
can_tx(argument...)
как это? - настройка регистра о протоколе CAN (но мой учитель сказал, что нет изменений регистра или прерывания.)
Кроме того, я думаю, что это функция передачи, может быть....
can_tx(uint32_t CanTxMsgTypeDef *tx_msg),uint32_t timeout)
внутренний аргумент ->()