HydraFW 3wire guide - hydrabus/hydrafw GitHub Wiki
HydraFW Bus 3-wire
This guide is updated towards firmware release HydraFW v0.10 and later
Bus: 3-wire
Connections: three pins (SDI/SDA/SCK) and ground
Output types: open drain/open collector
Pull-up resistors: required for open drain output mode (2K – 10K).
Pull-up/down resistors Integrated in MCU: Between 30 to 50K (Typical 40K).
Maximum voltage: 5.5volts (5volt safe)
This is a raw 3-wire communication mode (similar to SPI, but with full pin control)
Protocol configuration syntax description:
-
show
Show 3-wire parameters orshow pins
Show pins used in this mode -
pull
with parameterup
ordown
orfloating
to choose internal MCU pull up/down or no pull/external -
frequency
with floating frequency value: supportk
(for kHz),m
(for MHz) suffix or no suffix (for Hz)- Frequencies available: up to 1MHz
-
polarity
to select the clock idle level (0
or1
) -
msb-first
orlsb-first
to send/receive respectively MSB first or LSB first. -
exit
to exit 3-wire mode
Note default value:
> 3-wire
Device: threewire1
GPIO resistor: floating
Frequency: 1000000Hz
Bit order: MSB first
Configuration options:
Hardware Informations:
threewire1> show pins
CLK: PB3
SDI: PB4
SDO: PB5
Protocol configuration example:
Configuration of threewire1 500KHz:
> 3-wire
Device: threewire1
Frequency : 1000000Hz
threewire1> frequency 500k show
Device: threewire1
Frequency : 500000Hz
Protocol interaction syntax description:
trigger
configures the trigger mode
Protocol interaction example usage threewire1 write/read:
threewire1> 0x01 0x02 ~ r 0x00:4
WRITE: 0x01 0x02 0xFF
READ: 0xFF
WRITE: 0x00 0x00 0x00 0x00
Additional informations about 3-wire
For more information about its usage, see : http://dangerousprototypes.com/docs/Raw_3-wire