20#include "bootloader_error.h"
54typedef enum { CAN_CONTINUOUS = 0, CAN_ONE_SHOT_MODE, NUM_CAN_MODES } Boot_CanMode;
56#define CAN_HW_BASE CAN1
BootloaderError boot_can_init(const Boot_CanSettings *settings)
Initialize the CAN interface for the bootloader.
Definition: bootloader_can.c:52
Boot_CanBitrate
Definition: bootloader_can.h:46
BootloaderError boot_can_transmit(uint32_t id, bool extended, const uint8_t *data, size_t len)
Transmit a CAN message in the bootloader.
Definition: bootloader_can.c:95
struct CanSettings Boot_CanSettings
CAN Settings.
BootloaderError boot_can_receive(Boot_CanMessage *const msg)
Receive a CAN message in the bootloader.
Definition: bootloader_can.c:134
BootloaderError
Bootloader error definitions.
Definition: bootloader_error.h:28
@ BOOT_CAN_BITRATE_250KBPS
Definition: bootloader_can.h:48
@ BOOT_CAN_BITRATE_125KBPS
Definition: bootloader_can.h:47
@ BOOT_CAN_BITRATE_1000KBPS
Definition: bootloader_can.h:50
@ BOOT_CAN_BITRATE_500KBPS
Definition: bootloader_can.h:49
@ NUM_BOOT_CAN_BITRATES
Definition: bootloader_can.h:51
Selection for the supported CAN Bitrates.
Definition: bootloader_can.h:40
CAN message structure.
Definition: bootloader_can.h:80
size_t dlc
Definition: bootloader_can.h:83
uint32_t id
Definition: bootloader_can.h:81
uint8_t extended
Definition: bootloader_can.h:82
uint64_t data
Definition: bootloader_can.h:85
CAN Settings.
Definition: bootloader_can.h:66
bool loopback
Definition: bootloader_can.h:69
bool silent
Definition: bootloader_can.h:70
uint16_t device_id
Definition: bootloader_can.h:67
Boot_CanBitrate bitrate
Definition: bootloader_can.h:68