X-Git-Url: http://git.droids-corp.org/?p=aversive.git;a=blobdiff_plain;f=projects%2Fmicrob2010%2Fmainboard%2Frobotsim.c;h=2d0d7bebbba15245ef27f626c76ca308418bd545;hp=7c5283576c21d25343d53360e5fde1ed7867b150;hb=dab083b5d263fdf9675362bfe5a85f993a43a6c6;hpb=092caa88280f71fb58e5938114304fe2e94d6855 diff --git a/projects/microb2010/mainboard/robotsim.c b/projects/microb2010/mainboard/robotsim.c index 7c52835..2d0d7be 100644 --- a/projects/microb2010/mainboard/robotsim.c +++ b/projects/microb2010/mainboard/robotsim.c @@ -111,25 +111,16 @@ robotsim_i2c_ballboard_set_mode(struct i2c_cmd_ballboard_set_mode *cmd) } int8_t -robotsim_i2c_cobboard_set_spickles(uint8_t side, uint8_t flags) +robotsim_i2c_cobboard_set_mode(uint8_t mode) { char buf[BUFSIZ]; int len; - if (side == I2C_LEFT_SIDE) { - if (cobboard.lspickle == flags) - return 0; - else - cobboard.lspickle = flags; - } - if (side == I2C_RIGHT_SIDE) { - if (cobboard.rspickle == flags) - return 0; - else - cobboard.rspickle = flags; - } + if (cobboard.mode == mode) + return 0; - len = snprintf(buf, sizeof(buf), "cobboard=%d,%d\n", side, flags); + cobboard.mode = mode; + len = snprintf(buf, sizeof(buf), "cobboard=%d\n", mode); hostsim_lock(); write(fdw, buf, len); hostsim_unlock(); @@ -227,8 +218,8 @@ void robotsim_update(void) ((local_r_pwm * 1000 * FILTER2)/1000); /* basic collision detection */ - a2 = atan2(ROBOT_WIDTH/2, ROBOT_HALF_LENGTH_FRONT); - d = norm(ROBOT_WIDTH/2, ROBOT_HALF_LENGTH_FRONT); + a2 = atan2(ROBOT_WIDTH/2, ROBOT_HALF_LENGTH_REAR); + d = norm(ROBOT_WIDTH/2, ROBOT_HALF_LENGTH_REAR); xfl = x + cos(a+a2) * d; yfl = y + sin(a+a2) * d;