doc cleanup

This commit is contained in:
Laurence Bank
2024-09-13 22:47:45 +01:00
parent 9f6cfa612b
commit 44d3868dcc
2 changed files with 16 additions and 15 deletions
+10 -8
View File
@@ -1,15 +1,17 @@
OneBitDisplay (1-bpp OLED/LCD library)<br>
-----------------------------------
Project started 3/23/2020<br>
Copyright (c) 2020 BitBank Software, Inc.<br>
bb_eink (BitBank eink library)<br>
---------------------------------
Project started 9/11/2024<br>
Copyright (c) 2024 BitBank Software, Inc.<br>
Written by Larry Bank<br>
bitbank@pobox.com<br>
<br>
![OneBitDisplay](/demo.jpg?raw=true "OneBitDisplay")
<b>What is it?</b><br>
A frustration-free eink library suitable for Arduino, Linux, or random embedded systems with no OS.<br>
<b>Why did you write it?</b><br>
I've always had an interest in graphics and displays. After experimenting with eink, I looked around for code to control them. All I found was half-implemented demos and frustration. I wrote my own support for eink panels into my OneBitDisplay library, but it made it a bit unwieldy. Eink is in a class by itself, so I decided to create a unique library for working with these panels. The main goal was to reduce frustration and make an efficient set of functions that work with a large collection of panels in a consistent way.<br>
<br>
The purpose of this code is to easily control monochrome (1-bit per pixel) OLED and LCD displays. The displays can be connected to the traditional I2C or SPI bus, or you can use GPIO pins to bit bang the signals.<br>
<br>
On AVR microcontrollers, there is an optimized option to speed up access to the GPIO pins to allow speeds which match or exceed normal I2C speeds. The pins are numbered with the Port letter as the first digit followed by the bit number. For example, To use bit 0 of Port B, you would reference pin number 0xb0.<br>
<b>What's special about it?</b><br>
It's the first eink library I've ever seen which can drive the displays without needing a local copy of the image data. In other words, it allows you to create complex graphics without needing any RAM. I also created a very effective font compression scheme which allows you to fit large, beautiful fonts in a small amount of space. This allows tiny MCUs to do things that would normally require a more capable chip.<br>
<br>
Includes the unique feature that the I2C init function can optionally detect the display address (0x3C or 0x3D) and the controller type (SSD1306, SH1106 or SH1107).<br>
<br>
+6 -7
View File
@@ -1,11 +1,10 @@
name=OneBitDisplay
version=2.3.1
name=bb_eink
version=1.0.0
author=Larry Bank
maintainer=Larry Bank
sentence=OLED, LCD and e-paper library for 1-bit per pixel displays.
paragraph=Supports most monochrome OLEDs, LCDs, Sharp Memory LCDs and many e-paper displays. Designed to provide a rich set of features with a simple API. Can automatically detect the display address (3C or 3D) and the controller type (SSD1306, SH1106 or SH1107). Includes 5 sizes of fixed fonts (6x8, 8x8, 12x16, 16x16, 16x32). Can use I2C, SPI or bit bang I2C+SPI on any GPIO pins with the use of my BitBang_I2C library. Supports display sizes of: 128x128, 128x64, 128x32, 64x32, 96x16, 72x40. Includes scrolling text/gfx, deferred rendering, lines, sprites, circles, rectangles and more.
sentence=A frustration-free eink library.
paragraph=Supports most common 24-pin SPI eink panels with a rich API. Both buffered and bufferless graphics supported. This means you can do interesting things on very constrained MCUs.
category=Display
url=https://github.com/bitbank2/OneBitDisplay
url=https://github.com/bitbank2/bb_eink
architectures=*
includes=OneBitDisplay.h
depends=BitBang_I2C
includes=bb_eink.h