aboutsummaryrefslogtreecommitdiff
path: root/RealUnicorn.go
diff options
context:
space:
mode:
Diffstat (limited to 'RealUnicorn.go')
-rw-r--r--RealUnicorn.go67
1 files changed, 0 insertions, 67 deletions
diff --git a/RealUnicorn.go b/RealUnicorn.go
deleted file mode 100644
index 31fd229..0000000
--- a/RealUnicorn.go
+++ /dev/null
@@ -1,67 +0,0 @@
-package main
-
-import (
- //"golang.org/x/exp/io/spi"
- "github.com/ecc1/spi"
- "log"
-)
-
-type RealUnicorn struct {
- BaseUnicorn
- device *spi.Device
-}
-
-// NewReal ...
-// Constructs a new real unicorn from fairy dust and sprinkles
-func NewReal() (*RealUnicorn, error) {
- /*dev, err := spi.Open(&spi.Devfs{
- Dev: "/dev/spidev0.0",
- Mode: spi.Mode3,
- MaxSpeed: 9000000,
- })*/
- dev, err := spi.Open("/dev/spidev0.0", 9000000, 0)
- if err != nil {
- return nil, err
- }
- //dev.SetBitOrder(spi.LSBFirst)
-
- return &RealUnicorn{
- BaseUnicorn{
- pixels: makePixels(16, 16),
- },
- dev,
- }, nil
-}
-
-func (u *RealUnicorn) Show() {
- // Width * height * colours + leading bit
- width := int(u.GetWidth())
- height := int(u.GetHeight())
- sz := (width*height*3)+1
- write := make([]byte, sz)
-
- // Add the leading bit
- write[0] = 0x72
- // Add all the pixel values
- ix := 1
- for x := 0; x < width; x++ {
- for y := 0; y < height; y++ {
- for j := 0; j < 3; j++ {
- write[ix] = byte(u.pixels[x][y][j])
- ix++
- }
- }
- }
- // Write to the device
- //err := u.device.Tx(write, nil)
- err := u.device.Transfer(write)
- if err != nil {
- log.Printf("Error writing to SPI device %v", err)
- }
-}
-func (u *RealUnicorn) Off() {
- u.Close()
-}
-func (u *RealUnicorn) Close() error {
- return u.device.Close()
-}