serial.go 535 B

1234567891011121314151617181920212223242526
  1. package vio
  2. import (
  3. "encoding/binary"
  4. "io"
  5. )
  6. func WriteUint32(writer io.Writer, value uint32) (int, error) {
  7. var b [4]byte
  8. binary.BigEndian.PutUint32(b[:], value)
  9. return writer.Write(b[:])
  10. }
  11. func ReadUint16(reader io.Reader) (uint16, error) {
  12. var b [2]byte
  13. if _, err := io.ReadFull(reader, b[:]); err != nil {
  14. return 0, err
  15. }
  16. return binary.BigEndian.Uint16(b[:]), nil
  17. }
  18. func WriteUint16(writer io.Writer, value uint16) (int, error) {
  19. var b [2]byte
  20. binary.BigEndian.PutUint16(b[:], value)
  21. return writer.Write(b[:])
  22. }