serial-0.2.7: POSIX serial port wrapper

Safe HaskellSafe-Inferred
LanguageHaskell98

System.Serial.BlockingManager

Description

This is a largely drop-in replacement for System.Serial.Manager which sends and receives one command at a time from the port, and so is garuanteed to send the write information back to the right function. It may be necessary when working with devices that have ambiguous returns, such as a single acknowledgement character for all successful commands. See the analagous functions in System.Serial.Manager for the full documentation. The notes here only point out the differences.

Synopsis

Documentation

serialManager Source

Arguments

:: Handle 
-> Int

timeout (in ms)

-> IO BlockingSerialManager 

The blocking serialManager function takes one additional argument, the timeout (since it cannot continue executing commands in parallel while one command freezes).

wrapCommand Source

Arguments

:: String

The end of line character for this port

-> String

The command to send

-> BlockingSerialManager

The serial port to access

-> IO (Maybe String)

Nothing if there was a timeout, other Just and the response string

Wrapping commands is identical to the non-blocking version except that there is no predicate to recognize return values.