var ( // The list of standard baud-rates. StandardBaudRates = map[uint]bool{ 50: true, 75: true, 110: true, 134: true, 150: true, 200: true, 300: true, 600: true, 1200: true, 1800: true, 2400: true, 4800: true, 7200: true, 9600: true, 14400: true, 19200: true, 28800: true, 38400: true, 57600: true, 76800: true, 115200: true, 230400: true, } )
func IsStandardBaudRate(baudRate uint) bool
IsStandardBaudRate checks whether the specified baud-rate is standard.
Some operating systems may support non-standard baud-rates (OSX) via additional IOCTL.
func Open(options OpenOptions) (io.ReadWriteCloser, error)
Open creates an io.ReadWriteCloser based on the supplied options struct.
OpenOptions is the struct containing all of the options necessary for opening a serial port.
type OpenOptions struct { // The name of the port, e.g. "/dev/tty.usbserial-A8008HlV". PortName string // The baud rate for the port. BaudRate uint // The number of data bits per frame. Legal values are 5, 6, 7, and 8. DataBits uint // The number of stop bits per frame. Legal values are 1 and 2. StopBits uint // The type of parity bits to use for the connection. Currently parity errors // are simply ignored; that is, bytes are delivered to the user no matter // whether they were received with a parity error or not. ParityMode ParityMode // Enable RTS/CTS (hardware) flow control. RTSCTSFlowControl bool InterCharacterTimeout uint MinimumReadSize uint // Use to enable RS485 mode -- probably only valid on some Linux platforms Rs485Enable bool // Set to true for logic level high during send Rs485RtsHighDuringSend bool // Set to true for logic level high after send Rs485RtsHighAfterSend bool // set to receive data during sending Rs485RxDuringTx bool // RTS delay before send Rs485DelayRtsBeforeSend int // RTS delay after send Rs485DelayRtsAfterSend int }
Valid parity values.
type ParityMode int
const ( PARITY_NONE ParityMode = 0 PARITY_ODD ParityMode = 1 PARITY_EVEN ParityMode = 2 )