23 lines
326 B
Go
23 lines
326 B
Go
package hardware
|
|
|
|
type Mock struct {
|
|
currValue int16
|
|
delta int16
|
|
}
|
|
|
|
func NewMock() *Mock {
|
|
return &Mock{currValue: 0, delta: 1}
|
|
}
|
|
|
|
func (m *Mock) Read() (uint16, error) {
|
|
m.currValue += m.delta
|
|
|
|
if m.currValue >= 100 {
|
|
m.delta = -1
|
|
} else if m.currValue <= 0 {
|
|
m.delta = 1
|
|
}
|
|
|
|
return uint16(m.currValue), nil
|
|
}
|