For our application, I'm thinking that the most sensible way to transmit multiple mibSPI transfer groups is to initiate the first TG via a software trigger (i.e., mibspiTransfer()), and then chain the remaining transmits to the transfer-completed interrupt of the previous transfer group.
Two questions:
1) Can you reasonably call mibspiTransfer() from within the user implementation of mibspiGroupNotification()? (When I try this, about 1 in 15 attempts to transmit the 2nd TG does not occur.)
2) Does this approach seem reasonable, or am I missing the intended way to do something like this?
Some notes:
- All TGs currently configured with Trigger Event = TRG_ALWAYS, Trigger Source = TG_DISABLED, Buffer Mode = 4, and One-shot enabled.
- DMA is not implemented. It may be in the future, but as I'm understanding it this is basically unrelated.
Thanks!
-David
(Edit: Added Buffer Mode setting to notes.)