使用设计模式优化发卡机
This commit is contained in:
38
internal/routes/play/card_device/in_gpio.go
Normal file
38
internal/routes/play/card_device/in_gpio.go
Normal file
@@ -0,0 +1,38 @@
|
||||
package card_device
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/warthog618/go-gpiocdev/device/rpi"
|
||||
)
|
||||
|
||||
type inGpioLine int
|
||||
|
||||
const (
|
||||
OutOKLine inGpioLine = rpi.GPIO6
|
||||
LowerLine inGpioLine = rpi.GPIO13
|
||||
ErrorLine inGpioLine = rpi.GPIO19
|
||||
EmptyLine inGpioLine = rpi.GPIO26
|
||||
)
|
||||
|
||||
func (g inGpioLine) String() string {
|
||||
switch g {
|
||||
case OutOKLine:
|
||||
return "OutOKLine"
|
||||
case LowerLine:
|
||||
return "LowerLine"
|
||||
case ErrorLine:
|
||||
return "ErrorLine"
|
||||
case EmptyLine:
|
||||
return "EmptyLine"
|
||||
default:
|
||||
return fmt.Sprint(int(g))
|
||||
}
|
||||
}
|
||||
|
||||
func allInGpio() []inGpioLine {
|
||||
return []inGpioLine{OutOKLine, LowerLine, ErrorLine, EmptyLine}
|
||||
}
|
||||
|
||||
func allInGpioInt() []int {
|
||||
return []int{int(OutOKLine), int(LowerLine), int(ErrorLine), int(EmptyLine)}
|
||||
}
|
||||
Reference in New Issue
Block a user