...
Since input commands are to be made by the user, the events will be handled through the ISRs. The idea is to use the triggering address to correctly identify the raised event, and then raise the event in a global event queue.
Once the program returns to the main loop, the event is popped from the queue and is filtered through the event arbiterĀ
CAN Data Scheme
Until a sufficient protocol can be defined for sending driver input data over CAN, we will be using the following dummy scheme for the event data field:
...