Experimental project to drive a TFT LCD with an AVR MCU and avr-libc

@Torsten Römer Torsten Römer authored on 18 Nov 2023
GitHub committed on 18 Nov 2023
nbproject Update READMEGet basics to work 2 years ago
.gitignore Project setup 2 years ago
CODE_OF_CONDUCT.md Initial commit 2 years ago
LICENSE Initial commit 2 years ago
Makefile wrong access to hack array 2 years ago
README.md Update README.md 2 years ago
avrtft.c Update READMEGet basics to work 2 years ago
bitmaps.c wrong access to hack array 2 years ago
bitmaps.h wrong access to hack array 2 years ago
cmd.c Update READMEGet basics to work 2 years ago
cmd.h Update READMEGet basics to work 2 years ago
dejavu.c Initial commit 2 years ago
dejavu.h initial display of 6 colors :-) 2 years ago
display.c Update READMEGet basics to work 2 years ago
display.h Update READMEGet basics to work 2 years ago
font.c Initial commit 2 years ago
font.h Initial commit 2 years ago
hack.c basics are working 2 years ago
hack.h basics are working 2 years ago
pins.h Initial commit 2 years ago
spi.c Initial commit 2 years ago
spi.h Initial commit 2 years ago
tft.c add comment 2 years ago
tft.h Update READMEGet basics to work 2 years ago
types.h Update READMEGet basics to work 2 years ago
usart.c Initial commit 2 years ago
usart.h Initial commit 2 years ago
utils.h Initial commit 2 years ago
README.md

AVRTFT

Simple project to drive a TFT LCD like the
Adafruit 1.8" Color TFT LCD 160x128 ST7735R
with an AVR MCU (ATmega328P) and avr-libc.

Currently implemented:

  • Mostly complete UTF-8 set (code points U+0000 to U+00FF) of Hack font
    with antialiasing (4-Bit greyscale)
  • Small subset of large glyphs in DejaVu: 0-9 and some special characters
  • Draw strings in Hack and DejaVu
  • Draw bitmaps (emojis)
  • Write text and bitmaps via USART
  • Logging via USART

Ideas:

  • Write pictures via USART (probably too slow)
  • Read pictures from SD Card
  • Display 4K@50Hz videos...

IMG_20231118_223050

Write something via USART

Connect to the controller with for example GTKTerm (9600 Baud).
Write some text and a bitmap:

c 0xffff // clear display
t 0 0 h Just some text // write text in Hack to row 0 column 0
b 0 112 // write bitmap with index 0 ('blush' emoji) to row 0 column 224
d // display the demo