From 9d108ee58f080bc5fb76a9e6b386a9f3f66b3746 Mon Sep 17 00:00:00 2001 From: Ben Delarre Date: Tue, 13 Jan 2015 13:43:23 -0800 Subject: [PATCH] Added SPIBus.Write to allow writing without transfer delays. --- host/generic/spibus.go | 8 ++++++++ spi.go | 3 +++ 2 files changed, 11 insertions(+) diff --git a/host/generic/spibus.go b/host/generic/spibus.go index e00150c..284db35 100644 --- a/host/generic/spibus.go +++ b/host/generic/spibus.go @@ -233,6 +233,14 @@ func (b *spiBus) ReceiveByte() (byte, error) { return byte(d[0]), nil } +func (b *spiBus) Write(data []uint8) (error) { + if err := b.init(); err != nil { + return err + } + _, err := b.file.Write(data) + return err +} + func (b *spiBus) Close() error { b.mu.Lock() defer b.mu.Unlock() diff --git a/spi.go b/spi.go index e6aecb0..02a0ee8 100644 --- a/spi.go +++ b/spi.go @@ -33,6 +33,9 @@ type SPIBus interface { // ReceiveByte receives a byte data. ReceiveByte() (byte, error) + // WriteByte writes a buffer of data + Write([]uint8) (error) + // Close releases the resources associated with the bus. Close() error }