Test transmission

This commit is contained in:
leo 2025-11-29 00:45:51 +01:00
parent 4fe43b9d7a
commit 408f9c4b2c
6 changed files with 33 additions and 12 deletions

View file

@ -28,8 +28,7 @@ void handler_ADC (void){
send_USART_String(USART1,"Batterie : "); send_USART_String(USART1,"Batterie : ");
send_USART(USART1,((int)d/10) + '0'); // Envoie le chiffre des dizaines send_USART(USART1,((int)d/10) + '0'); // Envoie le chiffre des dizaines
send_USART(USART1,((int)d%10) + '0'); // Envoie le chiffre des unités send_USART(USART1,((int)d%10) + '0'); // Envoie le chiffre des unités
send_USART(USART1,'%'); send_USART_String(USART1,"%\r");
send_USART(USART1,'\r');
cpt = 0; cpt = 0;
} }
start_conversion(ADC1); // Recommence la conversion pour le prochain start_conversion(ADC1); // Recommence la conversion pour le prochain

View file

@ -1,7 +1,9 @@
#ifndef MYBATTERIE_H #ifndef MYBATTERIE_H
#define MYBATTERIE_H #define MYBATTERIE_H
void MyBatterie_Init(void); #include <stm32f10x.h>
void handler_ADC(void);
void MyBatterie_Init();
void handler_ADC();
#endif #endif

17
Services/Transmission.c Normal file
View file

@ -0,0 +1,17 @@
#include <stm32f10x.h>
#include <Transmission.h>
#include <USART.h>
void Transmission_Init(void){
My_USART_Init(USART1);
}
void Transmission_allure(int angle_voiles){
if (angle_voiles < 23) send_USART_String(USART1,"Le bateau navigue vent debout. \n");
else if (angle_voiles < 27) send_USART_String(USART1,"Le bateau navigue au pres. \n");
else if (angle_voiles < 38) send_USART_String(USART1,"Le bateau navigue au pres bon plein. \n");
else if (angle_voiles < 53) send_USART_String(USART1,"Le bateau navigue au travers. \n");
else if (angle_voiles < 71) send_USART_String(USART1,"Le bateau navigue au grand large. \n");
else if (angle_voiles <= 90) send_USART_String(USART1,"Le bateau navigue vent arriere. \n");
else send_USART_String(USART1,"ERREUR DANS L'ANGLE!! \n");
}

7
Services/Transmission.h Normal file
View file

@ -0,0 +1,7 @@
#ifndef TRANSMISSION_H
#define TRANSMISSION_H
void Transmission_Init(void);
void Transmission_allure(int angle_voiles);
#endif

View file

@ -38,10 +38,10 @@ void send_USART(USART_TypeDef *USART, char data){
while(!(USART->SR & USART_SR_TXE)) {} // Attente de la fin de transmission --TC ????? Inverser 2 lignes +TC a la fin while(!(USART->SR & USART_SR_TXE)) {} // Attente de la fin de transmission --TC ????? Inverser 2 lignes +TC a la fin
} }
void send_USART_String(USART_TypeDef* USARTx, char* s) { void send_USART_String(USART_TypeDef* USART, char* s) {
while (*s != '\0') { while (*s != '\0') { // Tant qu'on a pas le char null
send_USART(USARTx, *s); // ta fonction qui envoie un char send_USART(USART, *s); // Envoie un char
s++; s++; // Passe au char suivant
} }
} }

View file

@ -1,10 +1,6 @@
#ifndef MYUSART_H #ifndef MYUSART_H
#define MYUSART_H #define MYUSART_H
#include <stm32f10x.h> #include <stm32f10x.h>
#include <math.h>
#define send_USART_init(USART) USART->CR1 |= USART_CR1_TE; // Envoi de la première trame d'attente
#define read_USART_init(USART) USART->CR1 |= USART_CR1_RE; // En attente du premier bit de start
void My_USART_Init(USART_TypeDef *USART); void My_USART_Init(USART_TypeDef *USART);
void send_USART(USART_TypeDef *USART, char data); void send_USART(USART_TypeDef *USART, char data);