SPI and I2C should have a Controller class that can be used for different channels (1 channel per controller).
The controller should be derived from a PTask (Priority Task) and handle a priority-event queue for each process. The controller class should be able to handle incoming and outgoing data, for instance, on receiving data on a channel meant for one particular task, send that packet off to the task that owns it.
Note: PTask / PQueue need to be thoroughly tested
SPI and I2C should have a Controller class that can be used for different channels (1 channel per controller).
The controller should be derived from a PTask (Priority Task) and handle a priority-event queue for each process. The controller class should be able to handle incoming and outgoing data, for instance, on receiving data on a channel meant for one particular task, send that packet off to the task that owns it.
Note: PTask / PQueue need to be thoroughly tested