Go to the source code of this file.
Defines | |
#define | KNET_INT0 40 |
#define | IN 1 |
#define | OUT 0 |
#define | KH3_ERROR_SUCCESS 0 |
#define | KH3_ERROR_KBINIT -1 |
#define | KH3_ERROR_FRMSZ -2 |
#define | KH3_ERROR_SZFMT -3 |
#define | KH3_ERROR_FRMSND -4 |
#define | K3_CMD_DELAY 300 |
Functions | |
int | kh3_init (void) |
int | kh3_getcommand (knet_dev_t *, unsigned char *) |
int | kh3_sendcommand (knet_dev_t *, unsigned char *) |
int | kh3_proximity_ir (char *, knet_dev_t *) |
int | kh3_ambiant_ir (char *, knet_dev_t *) |
int | kh3_battery_voltage (char *, unsigned char, knet_dev_t *) |
int | kh3_reset_tstamp (char *, knet_dev_t *) |
int | kh3_revision (char *, knet_dev_t *) |
int | kh3_configure_os (char *, unsigned char, unsigned char, knet_dev_t *) |
int | kh3_measure_us (char *, unsigned char, knet_dev_t *) |
#define IN 1 |
#define K3_CMD_DELAY 300 |
Khepera3 command delay
Definition at line 36 of file kb_khepera3.h.
Referenced by kh3_ambiant_ir(), kh3_battery_voltage(), kh3_configure_os(), kh3_measure_us(), kh3_proximity_ir(), kh3_reset_tstamp(), and kh3_revision().
#define KH3_ERROR_FRMSND -4 |
#define KH3_ERROR_FRMSZ -2 |
#define KH3_ERROR_KBINIT -1 |
#define KH3_ERROR_SUCCESS 0 |
Khepera3 Error codes
Definition at line 27 of file kb_khepera3.h.
#define KH3_ERROR_SZFMT -3 |
#define KNET_INT0 40 |
Khepera3 <-> Korebot gpios pin definitions
Definition at line 19 of file kb_khepera3.h.
Referenced by braitenbergAvoidance(), kh3_ambiant_ir(), kh3_battery_voltage(), kh3_configure_os(), kh3_init(), kh3_measure_us(), kh3_proximity_ir(), kh3_reset_tstamp(), and kh3_revision().
#define OUT 0 |
int kh3_ambiant_ir | ( | char * | outbuf, | |
knet_dev_t * | hDev | |||
) |
kh3_ambiant_ir retrieves an instant IR measure.
outbuf | is a buffer where the data will be stored on. | |
hDev | is a handle to an openned knet socket (Khepera3:dsPic). |
Definition at line 190 of file kb_khepera3.c.
References K3_CMD_DELAY, kb_gpio_get(), kh3_getcommand(), kh3_sendcommand(), and KNET_INT0.
Referenced by ambIR().
int kh3_battery_voltage | ( | char * | outbuf, | |
unsigned char | argument, | |||
knet_dev_t * | hDev | |||
) |
kh3_battery_Voltage retrieves the actual battery voltage.
outbuf | is a buffer where the data will be stored on. | |
hDev | is a handle to an openned knet socket (Khepera3:dsPic). |
Definition at line 225 of file kb_khepera3.c.
References K3_CMD_DELAY, kb_gpio_get(), kh3_getcommand(), kh3_sendcommand(), and KNET_INT0.
Referenced by voltageBAT().
int kh3_configure_os | ( | char * | outbuf, | |
unsigned char | index, | |||
unsigned char | value, | |||
knet_dev_t * | hDev | |||
) |
kh3_configure configures the current firmware operation mode. a configuration array is used by the khepera3 to decide its mode of operation.
outbuf | is a buffer where the data will be stored on. | |
index | is the index pointing one of the configuration word in the config array. | |
value | is the value to store in the configuration array. | |
hDev | is a handle to an openned knet socket (Khepera3:dsPic). |
Definition at line 350 of file kb_khepera3.c.
References K3_CMD_DELAY, kb_gpio_get(), kh3_getcommand(), kh3_sendcommand(), and KNET_INT0.
Referenced by configureOS().
int kh3_getcommand | ( | knet_dev_t * | hDev, | |
unsigned char * | out | |||
) |
kh3_getcommand gets a command frame from a given khepera3 device.
Function flow:
Normally an end user don't want to use these function as they are assumed as "low level functions".
hDev | is a handle to an openned knet socket (Khepera3:dsPic). | |
out | is a pointer to a buffer where the command frame will be stored on. |
Definition at line 87 of file kb_khepera3.c.
References KB_ERROR, KB_ERROR_KH3FRMSZERR, KB_ERROR_KH3SZFMTERR, KH3_ERROR_FRMSZ, KH3_ERROR_SZFMT, and knet_llread().
Referenced by kh3_ambiant_ir(), kh3_battery_voltage(), kh3_configure_os(), kh3_measure_us(), kh3_proximity_ir(), kh3_reset_tstamp(), and kh3_revision().
int kh3_init | ( | void | ) |
-------------------------------------------------------------------- Prototypes Declaration
kh3_init initializes some things like the GPIO40 pin. This function needs to be called BEFORE any other functions.
none |
Definition at line 38 of file kb_khepera3.c.
References IN, KB_ERROR, KB_ERROR_KH3KBINIT, kb_gpio_dir(), kb_gpio_function(), kb_gpio_init(), kb_init(), KH3_ERROR_KBINIT, and KNET_INT0.
Referenced by initKH3().
int kh3_measure_us | ( | char * | outbuf, | |
unsigned char | usnbr, | |||
knet_dev_t * | hDev | |||
) |
kh3_measure_us retrieves measure from a given US transmitter.
outbuf | is a buffer where the data will be stored on. | |
usnbr | is a number of the us trx to read from ( 1 to 5 ). | |
hDev | is a handle to an openned knet socket (Khepera3:dsPic). |
Definition at line 386 of file kb_khepera3.c.
References K3_CMD_DELAY, kb_gpio_get(), kh3_getcommand(), kh3_sendcommand(), and KNET_INT0.
Referenced by measureUS().
int kh3_proximity_ir | ( | char * | outbuf, | |
knet_dev_t * | hDev | |||
) |
kh3_proximity_ir retrieves an instant IR measure.
outbuf | is a buffer where the data will be stored on. | |
hDev | is a handle to an openned knet socket (Khepera3:dsPic). |
Definition at line 153 of file kb_khepera3.c.
References K3_CMD_DELAY, kb_gpio_get(), kh3_getcommand(), kh3_sendcommand(), and KNET_INT0.
Referenced by braitenbergAvoidance(), main(), and proxIR().
int kh3_reset_tstamp | ( | char * | outbuf, | |
knet_dev_t * | hDev | |||
) |
kh3_reset_tstamp resets the absolute timestamp.
outbuf | is a buffer where the data will be stored on. in this case the only answer to expect is z, which is a ack. | |
hDev | is a handle to an openned knet socket (Khepera3:dsPic). |
Definition at line 262 of file kb_khepera3.c.
References K3_CMD_DELAY, kb_gpio_get(), kh3_getcommand(), kh3_sendcommand(), and KNET_INT0.
Referenced by tstampRST().
int kh3_revision | ( | char * | outbuf, | |
knet_dev_t * | hDev | |||
) |
kh3_revision retrieves the current OS version/revision
outbuf | is a buffer where the data will be stored on. | |
hDev | is a handle to an openned knet socket (Khepera3:dsPic). |
Definition at line 296 of file kb_khepera3.c.
References K3_CMD_DELAY, kb_gpio_get(), kh3_getcommand(), kh3_sendcommand(), and KNET_INT0.
Referenced by main(), and revisionOS().
int kh3_sendcommand | ( | knet_dev_t * | hDev, | |
unsigned char * | in | |||
) |
kh3_sendcommand sets a command frame to a given khepera3 device.
Normally and end user don't want to use these function as they are assumed as "low level functions".
hDev | is a handle to an openned knet socket (Khepera3:dsPic). | |
in | is a pointer to a buffer where the command frame to be sent is stored on. |
Definition at line 126 of file kb_khepera3.c.
References KB_ERROR, KB_ERROR_KH3FRMSNDERR, KH3_ERROR_FRMSND, and knet_llwrite().
Referenced by braitenbergAvoidance(), kh3_ambiant_ir(), kh3_battery_voltage(), kh3_configure_os(), kh3_measure_us(), kh3_proximity_ir(), kh3_reset_tstamp(), and kh3_revision().