Coding goes slowly, but I am making progress.
I have convinced the code to use the display portion of the Adafruit LCD module, and that includes being able to display any of 7 separate colors for the backlighting. I've also further streamlined the TWI module. I figured out a really neat trick with regard to sending 4-bit values to LCD displays over TWI, and I'm actually surprised that it's not part of any of the TWI-compatible LiquidCrystal libraries I've seen so far.
Next, going to try to get the code to read the buttons every 15 ms, from within the timer0 overflow interrupt. This might cause some sort of performance degradation on the LCD display, so I might have to bump up the TWI base frequency from 100 kHz to 400 kHz. Unfortunately, the Adafruit LCD module contains no provision at all for having the button presses generate an interrupt, as the legacy 3-button interface does. The buttons on the RGB LCD unit must be polled.
|