Bonjour,
Pour la realisation de mon projet j'ai besoin d'envoyer des donnees par liaison radio a un certain intervalle de temps, et en meme temps de stocker ces donnees sur une carte SD.
Pour gerer la communication radio j'ai un module connecte a mon uC via UART et pour le stockage de donnees j'ai un lecteur de carte connecte en SPI.
J'envoie les donnees sur l'uart toutes les minutes. Et j'aimerais par exemple stocker les donnees sur ma carte SD toutes les 10 secondes.
Cependant, le code que j'ai actuellement me "bloque" a chaque fois que j'attends une minute pour renvoyer sur l'uart, je ne peux rien faire d'autre en meme temps.
Voici en gros comment j'ai code cela:
Code c : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 machine_SD_write(FALSE,mot_sd_2,nom_fichier); //ecrit les donnees dans la carte SD sigfox_send_frame(lat_rmc,long_rmc,gps_datas.altitude,temp1); //envoie les donnees sur l'uart
Dans la fonction sigfox_send_frame(...), j'ai mis un delay a la fin:
Code c : Sélectionner tout - Visualiser dans une fenêtre à part HAL_Delay(60000);
Le probleme c'est que ce delai s'applique egalement pour l'envoie des donnees sur ma carte SD, comment faire pour que je puisse ecrire toutes les 10 secondes des donnees sur la carte SD et que dans le meme temps, les donnees soient envoyees sur l'uart toutes les minutes?
Merci








Répondre avec citation
Partager