mirror of
https://github.com/tinygo-org/drivers.git
synced 2026-08-15 04:13:40 +00:00
add missing easytepper_go.go file
This commit is contained in:
@@ -0,0 +1,26 @@
|
|||||||
|
package easystepper
|
||||||
|
|
||||||
|
import (
|
||||||
|
"errors"
|
||||||
|
"time"
|
||||||
|
|
||||||
|
"tinygo.org/x/drivers/internal/pin"
|
||||||
|
)
|
||||||
|
|
||||||
|
func NewCrossPlatform(stepcount, rpm uint, mode StepMode, pins [4]pin.OutputFunc) (*Device, error) {
|
||||||
|
if stepcount == 0 || rpm == 0 {
|
||||||
|
return nil, errors.New("zero rpm and/or stepcount")
|
||||||
|
}
|
||||||
|
for i := range pins {
|
||||||
|
if pins[i] == nil {
|
||||||
|
return nil, errors.New("nil pin")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
d := &Device{
|
||||||
|
pins: pins,
|
||||||
|
stepDelay: time.Second * 60 / time.Duration((stepcount * rpm)),
|
||||||
|
stepMode: mode,
|
||||||
|
config: func() {},
|
||||||
|
}
|
||||||
|
return d, nil
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user