Some refactoring.

This commit is contained in:
Andrey Egorov
2024-07-23 19:02:28 +03:00
parent 1bb5492d81
commit 211ff6c63a
5 changed files with 246 additions and 212 deletions

View File

@ -15,6 +15,8 @@ const (
)
type atPort struct {
logger *log.Logger
baudrate int
portName string
port serial.Port
@ -32,8 +34,9 @@ type Port interface {
Send(cmd string) (Resp, error)
}
func New(portName string, baudrate int) Port {
func New(logger *log.Logger, portName string, baudrate int) Port {
return &atPort{
logger: logger,
portName: portName,
baudrate: baudrate,
inputBuf: make([]byte, InputBufSize),
@ -49,7 +52,7 @@ func (p *atPort) GetSerialPort() serial.Port {
}
func (p *atPort) Connect() error {
log.Println("Connecting to", p.portName, "...")
p.logger.Println("Connecting to", p.portName, "...")
s, err := serial.Open(p.portName, &serial.Mode{BaudRate: p.baudrate})
if err != nil {
return fmt.Errorf("open port: %w", err)
@ -86,7 +89,7 @@ func (p *atPort) makeReq(msg string) (string, error) {
}
// Read
readLen, err := p.port.Read(p.inputBuf)
log.Println(msg, "RAWREAD:", string(p.inputBuf[:readLen]))
p.logger.Println(msg, "RAWREAD:", string(p.inputBuf[:readLen]))
if err != nil {
return "", fmt.Errorf("port read: %w", err)
}