sparkfun / OpenLCD

An open source serial LCD (HD44780) controller based on the ATmega328.
Other
32 stars 16 forks source link

Map special characters to unused ascii characters #30

Open andrewcharnley opened 3 years ago

andrewcharnley commented 3 years ago

Please use the logic of the original HD chip! Those of us doing DMA writes of the whole screen can not use adhoc commands to change characters.

nseidle commented 3 years ago

What micro or processor are you using to drive the display? What interface (I2C, serial, or SPI)? What driver (our Arduino library, probably your own)?

Your issue title is related to special characters but you're reporting issues with pass through low level HD44780 commands? Your issue is unfortunately too sparse for us to be of any help.

andrewcharnley commented 3 years ago

I2C, NRF52.

I currently implement a screen buffer of 4x20 bytes which I write to and push out to the display. Apart from the other issue that I mentioned in the other thread, when special characters are used the command character must be used which prevents use of a screen buffer (because it's two bytes).

The simple solution is not to reinvent the wheel - use the non-print characters as spaceholders (0x0 to 0x20 or 0x7F) to a) invoke command options and b) to write special characters.

nseidle commented 3 years ago

I welcome a PR. There's over 15 years of history to this product so you may be battling reverse compatibility of prior models.

andrewcharnley commented 3 years ago

Time for a version 2.0 then. Solve all these problems and you have a one stop product for more professional use cases (DMA). ;)