Skip to content

Implement st7789 parallel protocol in pio #38 - #62

Closed
gloskull wants to merge 2 commits into
tinygo-org:mainfrom
gloskull:Implement-ST7789-parallel-protocol-in-PIO-#38
Closed

gloskull wants to merge 2 commits into
tinygo-org:mainfrom
gloskull:Implement-ST7789-parallel-protocol-in-PIO-#38

Conversation

@gloskull

Copy link
Copy Markdown

Motivation

Provide a complete example for driving the Tufty 2040's ST7789 display over an 8-bit 8080-style parallel interface using a single RP2040 PIO state machine.
Add a software guard to ensure the PIO instruction encoding implements the required low/high/low WR waveform for the 8080 write cycle.

Description

Added rp2-pio/examples/parallel/tufty/README.md documenting wiring, build/flash instructions, demo behavior (bouncing rectangle, Mandelbrot, plasma), and a hardware validation checklist.
Added a new unit test parallel8_write_cycle to rp2-pio/pio_test.go that encodes a 3-instruction PIO program and asserts the expected opcode words for the WR low/high/low sequence.
Documented in the README that the parallel8_write_cycle test is a software-only check guarding the PIO instruction encoding and does not replace hardware validation.

Testing

Ran the package unit tests with go test ./rp2-pio which executed TestAssemblerV0 (including the new parallel8_write_cycle) and they passed.
No hardware tests were run as part of the automated test suite; the README includes a hardware validation checklist to verify runtime behavior on a Tufty 2040.

Closes #38
Claims #38

@soypat soypat closed this Sep 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement ST7789 parallel protocol in PIO

2 participants