Bonjour a tous ,
c'est la première que je pose des questions sur des formes donc si je m'exprime mal ou autres veuillez m'excuser.
Alors je débute avec la programmation de PIC24f et je veux utiliser mes UART pour une communication entre une Raspberry et le PIC.
alors ma communication UART marche bien , par contre le problème ce situe au niveau des nombres de caractères que je peux recevoir ,
si j'envoie de ma Rasp 5 caractères normal j'arrive a les recevoir mais si j'envoie plus de 5 je récupere que les 5 premier caractères les autres non
j'ai lu dans la datasheet du PIC que le buffer pouvait prendre que 5 caractères et que au delà tout les caractères en plus il les mets dans le registres UxRSR et ce registre n'est pas mapper sur le PIC donc il n'est pas utilisable par le programmeur.
Donc si vous avez une piste ou autres je suis preneur.
je vous mets mon code pour la réception et aussi la datasheet du PIC [ Page 18 - 21.6 ]
// code de reception
void UART_Reception(void)
{
char Rx_Reception[8] ;
int i =0;
int toto=0;
for(i=0;i<8 ;i++)
{
while (U1STAbits.URXDA!=1); // Mon buffer si il est vide on sort pas de la boucle des que qu'il se remplit on sort
TEMPO_65500();// c'est une temporisation de 0.1s
Rx_Reception[i] = U1RXREG;// je mets mes caracter dans un tableau
toto=toto+1;
}
toto=toto+1;// elle ne sert a rien mais j'ai juste utiliser pour pouvoir mieux débugger car des fois il plante
}
-----