使用设计模式优化发卡机

This commit is contained in:
2024-11-20 13:54:05 +08:00
parent 480e9ab6d5
commit 4ea0af5bd7
8 changed files with 249 additions and 105 deletions

View 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)}
}