Bienvenue aux nouveaux arrivants sur FantasPic !

- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.

--- L’équipe FantasPic ---
On parle des Pics, sans rapport avec le langage ou la programmation

Modérateur : Jérémy

horloge
Claudius
Avatar de l’utilisateur
Passioné
Passioné
Messages : 260
Âge : 69
Enregistré en : septembre 2015
Localisation : ELANCOURT (78 - YVELINES)
Contact :

#11 Message par Claudius » sam. 30 janv. 2016 21:29

Bonsoir,
Generated baud rate is 19231 bps (error = 0.16 percent) avec FOSC 8MHz

Extrait du fil de discussion Tolerance vitesse liaison série avec la conclusion très argumentée d'un grand Monsieur en la matière; à savoir:

-----------------------
La précision nécessaire à la communication dépend uniquement du nombre de bits, et de l'endroit d'échantillonnage du signal.

Par défaut, avec un échantillonnage unique à la moitié du bit, on a une erreur possible admissible de la largeur d'un demi-bit, sinon on tombe sur le bit adjacent.

L'erreur se cumule évidemment pour chaque bit, l'erreur est maximale pour le dernier bit. Il faut donc que l'erreur sur le dernier bit ne dépasse pas la moitié du temps d'un bit, c'est mathématique.

Si on prend une transmission 8 bits + start+stop, ça fait 10 bits.
Comme on a droit à 1/2 bit de dérive au bout de 10 bits, ça fait une erreur maximale de 0,5/10, soit 5%. On pourrait ergotter en disant que ça dépend du sens de la dérive, puisqu'après le stop-bit on a l'équivalant d'un stop-bit, alors qu'avant on a le dernier bit émis. On dirait alors que la vitesse de l'émetteur peut être inférieure de 5% de celle du récepteur, et supérieure de 0,5/9 soit 5,5%. Avec 7 bits au lieu de 8 de data, on tombe à 5,5% et 6,25% respectivement.

5% est donc la tolérance maximale, et cette tolérance est la somme de la tolérance de l'émetteur et du récepteur.

Si on imagine par exemple que le récepteur a une tolérance de 2%, ça fait moins de 3% admissibles pour l'émetteur. Normalement, la tolérance est donnée par le fournisseur de la carte avec laquelle on veut dialoguer (sur un PC, l'erreur est négligeable).

Si le récepteur fait un triple échantillonnage, il faut connaître le temps séparant le premier du dernier, pour connaître la dérive maximale admissible qui est (1 bit - temps en question)/(2*nbre bits), mais en général les 3 mesures sont rapprochées, et on peut négliger le temps.

Pas de magie :)

En général, en restant sous les 3% (pour 10 bits), il est rare qu'on rencontre de problèmes.

A partir de 5%, on a de fortes chances d'avoir des erreurs.

-----------------------

Donc pas problème, et c'est dans ce sens que les tables de précision en fonction du registre Baud Rate et du cadencement du PIC sont données par le constructeur inférieures à 3 %.

horloge
mazertoc
Passioné
Passioné
Messages : 201
Enregistré en : juillet 2015
Localisation : Auvernha

#12 Message par mazertoc » dim. 31 janv. 2016 11:23

Claudius a écrit :Donc pas problème, et c'est dans ce sens que les tables de précision en fonction du registre Baud Rate et du cadencement du PIC sont données par le constructeur inférieures à 3 %.

Ah mais j'ai bien scruté les cours de BIGONOFF pendant mon apprentissage des µC,
et j'en profite pour le remercier de ce qu'il a fait.
Mon calcul est donc cohérent -> erreur totale maxi 2,41 % pour être certain d'être dans les clous
Les tables du BRG donnent l'erreur intrinsèque du générateur de baud rate, incluse dans mes 2,41 %.


Retourner vers « Généralités sur les PICs »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 32 invités