Skip to main content
7 events
when toggle format what by license comment
Oct 26, 2016 at 22:36 comment added wave.jaco Using a software FIFO buffer (of 100 bytes) populated upon reception of each character through an interrupt service routine, as well as increasing the system and peripheral clock frequencies to 40 MHz solved the problem (which is a huge leap in performance compared to 8 MHz!). Thanks for all the assistance! Much appreciated!
Oct 26, 2016 at 22:32 vote accept wave.jaco
Oct 19, 2016 at 13:15 comment added wave.jaco That makes sense. I will try a software FIFO approach when I am at the code again later today and report back.
Oct 19, 2016 at 10:52 comment added CL. An eight-byte FIFO cannot store more than eight bytes, but this is only for bytes that have not yet been read. If eight bytes arrive, and five are read, then it needs five more bytes to be filled up again.
Oct 19, 2016 at 10:27 comment added wave.jaco ...continued from previous comment: Thanks for the heads-up on the MIDI message lengths. I am aware of that and have accounted for that in my code. The solution to the 3-byte message situation will also be implemented for other message types/lengths. I will increase the clock speed and see if that helps, but I would rather solve the issue with a software FIFO. Thanks also for the idea of sending fixed chords. That will certainly make developing the solution easier.
Oct 19, 2016 at 10:24 comment added wave.jaco Thank you for your answer. I see what you mean by the 5 bytes explaining the 13 bytes indication in the datasheet, but does that then mean the 8-level FIFO can store 16 bytes? I went through the datasheet and UART reference manual and couldn't find something mentioning 16 bytes. I just understand it as the 8-level FIFO can contain a maximum of 8 bytes. Am I understanding it wrongly? Indeed, processIncomingByte() does not do much but keep track of the byte count for the received partial messages, and populates a struct with the received data, according to the type of message sent.
Oct 19, 2016 at 8:11 history answered CL. CC BY-SA 3.0