Руслан Урядинский / libuavcan

Dependents:   UAVCAN UAVCAN_Subscriber

Embed: (wiki syntax)

« Back to documentation index

uavcan_lpc11c24::anonymous_namespace{can.cpp} Namespace Reference

uavcan_lpc11c24::anonymous_namespace{can.cpp} Namespace Reference

Functions

BitTimingSettings computeBitTimings (std::uint32_t bitrate)
 http://www.bittiming.can-wiki.info

Variables

constexpr unsigned NumberOfMessageObjects = 32
 Hardware message objects are allocated as follows:

  • 1 - Single TX object
  • 2..32 - RX objects TX priority is defined by the message object number, not by the CAN ID (chapter 16.7.3.5 of the user manual), hence we can't use more than one object because that would cause priority inversion on long transfers.

volatile std::uint32_t error_cnt = 0
 Total number of CAN errors.
volatile bool tx_pending = false
 False if there's no pending TX frame, i.e.
volatile bool tx_abort_on_error = false
 Currently pending frame must be aborted on first error.
volatile std::uint64_t last_irq_utc_timestamp = 0
 Gets updated every time the CAN IRQ handler is being called.
volatile bool had_activity = false
 Set by the driver on every successful TX or RX; reset by the application.

Function Documentation

BitTimingSettings uavcan_lpc11c24::anonymous_namespace{can.cpp}::computeBitTimings ( std::uint32_t  bitrate )

http://www.bittiming.can-wiki.info

Definition at line 147 of file can.cpp.


Variable Documentation

volatile std::uint32_t error_cnt = 0

Total number of CAN errors.

Does not overflow.

Definition at line 47 of file can.cpp.

volatile bool had_activity = false

Set by the driver on every successful TX or RX; reset by the application.

Definition at line 67 of file can.cpp.

volatile std::uint64_t last_irq_utc_timestamp = 0

Gets updated every time the CAN IRQ handler is being called.

Definition at line 62 of file can.cpp.

constexpr unsigned NumberOfMessageObjects = 32

Hardware message objects are allocated as follows:

  • 1 - Single TX object
  • 2..32 - RX objects TX priority is defined by the message object number, not by the CAN ID (chapter 16.7.3.5 of the user manual), hence we can't use more than one object because that would cause priority inversion on long transfers.

Definition at line 38 of file can.cpp.

volatile bool tx_abort_on_error = false

Currently pending frame must be aborted on first error.

Definition at line 57 of file can.cpp.

volatile bool tx_pending = false

False if there's no pending TX frame, i.e.

write is possible.

Definition at line 52 of file can.cpp.