dynamixel.h¶
Interface definition for Dynamixel devices driver.
-
enum
@119¶ - DYNAMIXEL_OK
- Success.
- DYNAMIXEL_TIMEOUT
- No response from the device.
- DYNAMIXEL_BUFFER_TOO_SMALL
- Buffer is too small for the message.
- DYNAMIXEL_INVALID_MESSAGE
- Invalid message received.
-
uint8_t
dynamixel_id_t¶ device id type
-
uint16_t
dynamixel_addr_t¶ register address type
-
int
dynamixel_ping(uart_half_duplex_t * stream,dynamixel.h::dynamixel_id_tid)¶ Send a PING message to a device.
Parameters
stream: the stream id: the device address Return values
- DYNAMIXEL_OK if a device answered
- DYNAMIXEL_TIMEOUT if the device did not answer
- DYNAMIXEL_BUFFER_TOO_SMALL if buffer is too small for the message
- DYNAMIXEL_INVALID_MESSAGE if an invalid message was received
-
void
dynamixel_init(dynamixel_t * device, uart_half_duplex_t * stream,dynamixel.h::dynamixel_id_tid)¶ Initialize a Dynamixel device.
Parameters
device: the Dynamixel device stream: the stream id: the device address
-
int
dynamixel_write8(const dynamixel_t * device,dynamixel.h::dynamixel_addr_treg, uint8_t value)¶ Write to a device 8bits register.
Parameters
device: the Dynamixel device reg: the register to write value: the value to write Return values
- DYNAMIXEL_OK on success
- DYNAMIXEL_TIMEOUT if the device did not answer
- DYNAMIXEL_BUFFER_TOO_SMALL if buffer is too small for the message
- DYNAMIXEL_INVALID_MESSAGE if an invalid message was received
-
int
dynamixel_write16(const dynamixel_t * device,dynamixel.h::dynamixel_addr_treg, uint16_t value)¶ Write to a device 16bits register.
Parameters
device: the Dynamixel device reg: the register to write value: the value to write Return values
- DYNAMIXEL_OK on success
- DYNAMIXEL_TIMEOUT if the device did not answer
- DYNAMIXEL_BUFFER_TOO_SMALL if buffer is too small for the message
- DYNAMIXEL_INVALID_MESSAGE if an invalid message was received
-
int
dynamixel_write(const dynamixel_t * device,dynamixel.h::dynamixel_addr_treg, const uint8_t * data,msp430_types.h::size_tlength)¶ Write to a device address.
Parameters
device: the Dynamixel device reg: the address to start write data: the data to write length: the data length Return values
- DYNAMIXEL_OK on success
- DYNAMIXEL_TIMEOUT if the device did not answer
- DYNAMIXEL_BUFFER_TOO_SMALL if buffer is too small for the message
- DYNAMIXEL_INVALID_MESSAGE if an invalid message was received
-
int
dynamixel_read8(const dynamixel_t * device,dynamixel.h::dynamixel_addr_treg, uint8_t * value)¶ Read from a device 8bits register.
Parameters
device: the Dynamixel device reg: the register to read value: the value to read Return values
- DYNAMIXEL_OK on success
- DYNAMIXEL_TIMEOUT if the device did not answer
- DYNAMIXEL_BUFFER_TOO_SMALL if buffer is too small for the message
- DYNAMIXEL_INVALID_MESSAGE if an invalid message was received
-
int
dynamixel_read16(const dynamixel_t * device,dynamixel.h::dynamixel_addr_treg, uint16_t * value)¶ Read from a device 16bits register.
Parameters
device: the Dynamixel device reg: the register to read value: the value to read Return values
- DYNAMIXEL_OK on success
- DYNAMIXEL_TIMEOUT if the device did not answer
- DYNAMIXEL_BUFFER_TOO_SMALL if buffer is too small for the message
- DYNAMIXEL_INVALID_MESSAGE if an invalid message was received
-
int
dynamixel_read(const dynamixel_t * device,dynamixel.h::dynamixel_addr_treg, uint8_t * data,msp430_types.h::size_tlength)¶ Read from a device address.
Parameters
device: the Dynamixel device reg: the address to start read data: the data buffer to fill length: the data length Return values
- DYNAMIXEL_OK on success
- DYNAMIXEL_TIMEOUT if the device did not answer
- DYNAMIXEL_BUFFER_TOO_SMALL if buffer is too small for the message
- DYNAMIXEL_INVALID_MESSAGE if an invalid message was received
-
struct
dynamixel_t¶ Descriptor struct for a dynamixel device.
-
uart_half_duplex_t *
stream¶ the stream used
-
dynamixel.h::dynamixel_id_tid¶ the device address
-
uart_half_duplex_t *