Modifications

961 octets ajoutés ,  22 mars 2021 à 17:46
Ligne 340 : Ligne 340 :  
On passe ensuite à l'envoie. On utilise la fonction mise à disposition par l'outil STM32CubeIDE : <br>
 
On passe ensuite à l'envoie. On utilise la fonction mise à disposition par l'outil STM32CubeIDE : <br>
 
  HAL_StatusTypeDef HAL_UART_Transmit_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size);  <br>
 
  HAL_StatusTypeDef HAL_UART_Transmit_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size);  <br>
L'argument (UART_HandleTypeDef *huart) sert à sélectionner l'uart avec
+
L'argument (UART_HandleTypeDef *huart) sert à sélectionner l'uart sur lequel est branché notre module HC-06 <br>
*dire qu'après on peut tester sur le vrai robot
+
L'argument (uint8_t *pData) est celui sur lequel on va rentrer notre buffer où est contenue la données (on mettra (int8_t*)buffer car la fonction attend un buffer en int8_t* alors que notre buffer est en format char de base). <br>
 +
L'argument (uint16_t Size) sert à spécifier la taille du buffer : sizeof(buffer) <br>
 +
On établit donc le code que l'on va utiliser pour envoyer : <br>
 +
HAL_UART_Transmit_IT(&huart3, (uint8_t*) buff_enco,sizeof(buff_enco)); // encodeurs
 +
osDelay(200);
 +
HAL_UART_Transmit_IT(&huart3, (uint8_t*) buff_tens,sizeof(buff_tens)); // tension batterie
 +
osDelay(200);
 +
HAL_UART_Transmit_IT(&huart3, (uint8_t*) buff_vit,sizeof(buff_vit)); // vitesse robot
 +
osDelay(200);
 +
HAL_UART_Transmit_IT(&huart3, (uint8_t*) buff_posx,sizeof(buff_posx)); // position x
 +
osDelay(200);
 +
HAL_UART_Transmit_IT(&huart3, (uint8_t*) buff_posy,sizeof(buff_posy)); // position y
 +
osDelay(400);
 +
*Notre code est maintenant prêt à être implémenté sur le robot.
    
Par exemple l'image ci-dessous avec des valeurs fictives (compteurs qui s'incrémente) :
 
Par exemple l'image ci-dessous avec des valeurs fictives (compteurs qui s'incrémente) :
143

modifications