X-Git-Url: http://git.droids-corp.org/?p=aversive.git;a=blobdiff_plain;f=projects%2Fmicrob2010%2Fmainboard%2Fi2c_protocol.c;h=442cf3ab0a2d911d990bc6ed6c8434c3eed02290;hp=d264622671c3e89fa013e9f7f13f15804a249fe3;hb=b699727efceb661be65fbd22e975565b800c628e;hpb=9d056416278ae5d772a0fc1f7d2d11a4461fb673 diff --git a/projects/microb2010/mainboard/i2c_protocol.c b/projects/microb2010/mainboard/i2c_protocol.c index d264622..442cf3a 100644 --- a/projects/microb2010/mainboard/i2c_protocol.c +++ b/projects/microb2010/mainboard/i2c_protocol.c @@ -403,22 +403,25 @@ int8_t i2c_led_control(uint8_t addr, uint8_t led, uint8_t state) int8_t i2c_cobboard_set_mode(uint8_t mode) { #ifdef HOST_VERSION - return robotsim_i2c_cobboard_set_mode(mode); -#else + cobboard.mode = mode; +#endif struct i2c_cmd_cobboard_set_mode buf; buf.hdr.cmd = I2C_CMD_COBBOARD_SET_MODE; buf.mode = mode; return i2c_send_command(I2C_COBBOARD_ADDR, (uint8_t*)&buf, sizeof(buf)); -#endif } static int8_t i2c_cobboard_set_spickle(uint8_t side, uint8_t flags) { +#ifdef HOST_VERSION + return robotsim_i2c_cobboard_set_spickles(side, flags); +#else if (side == I2C_LEFT_SIDE) cobboard.lspickle = flags; else cobboard.rspickle = flags; return 0; +#endif } int8_t i2c_cobboard_pack(uint8_t side) @@ -426,7 +429,12 @@ int8_t i2c_cobboard_pack(uint8_t side) return i2c_cobboard_set_spickle(side, 0); } -int8_t i2c_cobboard_harvest(uint8_t side) +int8_t i2c_cobboard_pack_weak(uint8_t side) +{ + return i2c_cobboard_set_spickle(side, I2C_COBBOARD_SPK_WEAK); +} + +int8_t i2c_cobboard_autoharvest(uint8_t side) { return i2c_cobboard_set_spickle(side, I2C_COBBOARD_SPK_DEPLOY | @@ -438,6 +446,20 @@ int8_t i2c_cobboard_deploy(uint8_t side) return i2c_cobboard_set_spickle(side, I2C_COBBOARD_SPK_DEPLOY); } +int8_t i2c_cobboard_autoharvest_nomove(uint8_t side) +{ + return i2c_cobboard_set_spickle(side, + I2C_COBBOARD_SPK_DEPLOY | + I2C_COBBOARD_SPK_AUTOHARVEST | + I2C_COBBOARD_SPK_NO_MOVE); +} + +int8_t i2c_cobboard_deploy_nomove(uint8_t side) +{ + return i2c_cobboard_set_spickle(side, I2C_COBBOARD_SPK_DEPLOY | + I2C_COBBOARD_SPK_NO_MOVE); +} + int8_t i2c_ballboard_set_mode(uint8_t mode) { struct i2c_cmd_ballboard_set_mode buf;