I'm building a MIDI synthesizer on Arduino Uno, and am considering user interface options.
I see on Adafruit and Sparkfun there are 16x2 LCD panels available that interface via I2C serial or by UART, but I think neither of those will work in my application:
The UART is clocked at 31250 baud to receive MIDI, and that's not a supported baud rate for these LCD devices;
I'm producing audio by driving an external DAC (MCP4725) over full-speed I2C; any transmission to another device would audibly jitter the DAC output;
SoftwareSerial would get around the UART clocking problem, but I believe it would stall the main loop while driving the output.
One option might be to roll my own software serial routine, carefully clocking it on the main loop, which (I believe) reliably runs at either 14.8KHz or 22.2KHz depending on the DAC protocol in use. I could set a SparkFun SerLCD into a slow data rate (2400 baud) and count passes through the main loop to time the data output.
Another option would be to use a secondary MCU -- I have a surplus Trinket M0 on hand -- and define a custom synchronous serial protocol between the two MCUs, and have the secondary relay commands to the LCD but that's getting into Rube Goldberg territory.
Any obvious options I'm overlooking?