mirror of
https://github.com/tinygo-org/drivers.git
synced 2026-08-03 06:27:47 +00:00
c09f0a8075
Signed-off-by: Ron Evans <ron@hybridgroup.com>
47 lines
958 B
Go
47 lines
958 B
Go
package main
|
|
|
|
import (
|
|
"machine"
|
|
|
|
"image/color"
|
|
|
|
"tinygo.org/x/drivers/waveshare-epd/epd2in13x"
|
|
)
|
|
|
|
var display epd2in13x.Device
|
|
|
|
func main() {
|
|
machine.SPI0.Configure(machine.SPIConfig{
|
|
Frequency: 8000000,
|
|
Mode: 0,
|
|
})
|
|
|
|
display = epd2in13x.New(machine.SPI0, machine.P6, machine.P7, machine.P8, machine.P9)
|
|
display.Configure(epd2in13x.Config{})
|
|
|
|
white := color.RGBA{0, 0, 0, 255}
|
|
colored := color.RGBA{255, 0, 0, 255}
|
|
black := color.RGBA{1, 1, 1, 255}
|
|
|
|
display.ClearBuffer()
|
|
display.ClearDisplay()
|
|
|
|
// Show a checkered board
|
|
for i := int16(0); i < 27; i++ {
|
|
showRect((i%3)*35, i*8, 35, 8, colored)
|
|
showRect(((i+1)%3)*35, i*8, 35, 8, black)
|
|
showRect(((i+2)%3)*35, i*8, 35, 8, white)
|
|
}
|
|
display.Display()
|
|
display.WaitUntilIdle()
|
|
println("You could remove power now")
|
|
}
|
|
|
|
func showRect(x int16, y int16, w int16, h int16, c color.RGBA) {
|
|
for i := x; i < x+w; i++ {
|
|
for j := y; j < y+h; j++ {
|
|
display.SetPixel(i, j, c)
|
|
}
|
|
}
|
|
}
|