machine: support Pin.Get() function when the pin is configured as output

To my surprise, this is supported on all the devices I could test so
therefore it makes sense to change the API to allow this.
This commit is contained in:
Ayke van Laethem
2021-10-20 17:19:43 +02:00
committed by Ron Evans
parent c8719f8d14
commit 15d3f5f609
9 changed files with 17 additions and 10 deletions
+2 -1
View File
@@ -44,7 +44,8 @@ func (p Pin) Set(high bool) {
}
}
// Get returns the current value of a GPIO pin.
// Get returns the current value of a GPIO pin when the pin is configured as an
// input or as an output.
func (p Pin) Get() bool {
val := sifive.GPIO0.VALUE.Get() & (1 << uint8(p))
return (val > 0)