4 years, 7 months ago.

Quick couple questions on your Sharp LCD library


Glad to see this library. I recently grabbed an LCD lib off the net for use with the nRF51822 and the Sharp memory LCD. ("GLCD" or some such). Was frustrated that the fonts were bitmapped in column order and the LCD is written row-at-a-time (with its connector at bottom or top). Further, the base function for rendering into an off-screen frame buffer was pixel-at-a-time. So all graphic and rendering operations were guaranteed to be very inefficient. Another variation of the library (from MicroTek?) came with a font creator program (good) that compressed the font bitmaps (sort of OK; too simple algorithm, only compressed <2x) and still organized in columns (bad). Would have liked to have rewritten the lib, but project time pressures prevented that.

So, for your library:

  1. Does it take advantage of setting more than one pixel at a time in the frame buffer, e.g., a row segment, to take advantage of full byte and word ops?
  2. Is it row, rather than column, oriented for rendering graphics primitives?
  3. Are the font bitmaps compressed? Orientation? Algorithm?
  4. Oh, and while I'm at it, does it support boolean ops into the frame buffer (e.g., to use xor to flip the polarity of a specific region)?

Thanks (Could answer all this by examining the code, but thought you could answer these questions quicker :-)


Question relating to:

This driver is meant for the monochrome LCD display (model no: LS013B4DN04) from Sharp; but it should be easily adaptable to other Sharp displays. display, eINK, LCD, Sharp
Comment on this question

1 Answer

4 years, 7 months ago.

Hello Mike,

This library copies into the frame buffer a byte at a time (except at the edges). The font bitmap is row oriented and uncompressed. I generated the fonts using FreeType (http://www.freetype.org/); in a few lines of code, it allowed me to rasterize fonts and emit bitmaps in a simple format. Unfortunately, I've managed to loose the code which I used to generate the fonts.