Represents one entry in the specification of a bitbanging waveform. Pins must have been
configured as either PushPull, OpenDrain or Input prior to requesting a bitbang
operation.
Object representing an ongoing operation of generating a prescribed waveform on a number of
pins. Must be frequently polled via the query() function, in order to guerantee completion
of the operation.
A trait implemented by transports which support synchronous bit-banging on GPIO pins, similar
to FTDI devices. This trait allows generation of arbitrary waveforms on a set of pins, and
optionally getting back samples from same or other pins, taken at precise times.
A trait implemented by transports which support advanced edge-detection on GPIO pins. This
trait allows monitoring a set of pins, and getting a stream of “events” (rising and falling
edges with timestamps) for any change among the set.