Advertisement
Guest User

Untitled

a guest
Apr 21st, 2019
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.36 KB | None | 0 0
  1. void rx_auv_command(void) {
  2.     uint8_t rx_buffer[23];
  3.     uint32_t status = HAL_UART_Receive(&huart6, rx_buffer, 22, 200);
  4.     if (status == HAL_TIMEOUT) {
  5.         return;
  6.     }
  7.  
  8.     if (status != HAL_OK) {
  9.         return;
  10.     }
  11.  
  12.     if (rx_buffer[0] != 0xAE && rx_buffer[22] != 0xEA) {
  13.         return;
  14.     }
  15.  
  16.     thrusters_pwm[0] = (int8_t)rx_buffer[1];
  17.     thrusters_pwm[1] = (int8_t)rx_buffer[2];
  18.     thrusters_pwm[2] = (int8_t)rx_buffer[3];
  19.     thrusters_pwm[3] = (int8_t)rx_buffer[4];
  20.     thrusters_pwm[4] = (int8_t)rx_buffer[5];
  21.     thrusters_pwm[5] = (int8_t)rx_buffer[6];
  22.     thrusters_pwm[6] = (int8_t)rx_buffer[7];
  23.  
  24.     drop_pwm[0] = (int8_t)rx_buffer[8];
  25.     drop_pwm[1] = (int8_t)rx_buffer[9];
  26.     drop_pwm[2] = (int8_t)rx_buffer[10];
  27.  
  28.     drop[0] = (int8_t)rx_buffer[11];
  29.     drop[1] = (int8_t)rx_buffer[12];
  30.     drop[2] = (int8_t)rx_buffer[13];
  31.  
  32.     set_A_drop(rx_buffer[14]);
  33.     set_B_drop(rx_buffer[15]);
  34.     set_C_drop(rx_buffer[16]);
  35.  
  36.     if (r_val != rx_buffer[17] ||
  37.         g_val != rx_buffer[18] ||
  38.         b_val != rx_buffer[19] ||
  39.         user_color_val != rx_buffer[20]) {
  40.         r_val = rx_buffer[17];
  41.         g_val = rx_buffer[18];
  42.         b_val = rx_buffer[19];
  43.         user_color_val = rx_buffer[20];
  44.         can_bus_set_led_color(r_val, g_val, b_val, user_color_val);
  45.     }
  46.     servo_angle = rx_buffer[21];
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement