DÉCODEUR
DE TRAME TYPE UM3750 / 8 VOIES - Explications
|
| |
|
|
|
|
|
|
|
Contitution
d'un bit pour un UM3750

Coté émetteur, l'UM3750 est équipé pour son
cadencement d'une résistance de 100 k et d'un condensateur de 120
pF.
Le codage d'un bit a une durée de 531 µs. Il se décompose
en 3 étapes de 177 µs chacunes qui sont :
un bit de start à l'état 1 suivi d'un état 0 et enfin
le bit lui-même qui prend un état 0 ou 1.
|
Exemple de la réception
de 2 bits
Pour le premier bit reçu, on identifie le bit de start puis la
durée de 177 µs à l'état 0 et enfin l'état
du bit qui dans ce cas là est à 0.
Suit un autre bit de start, une durée de 177 µs à
l'état 0 et le deuxième bit qui dans ce cas est à
l'état 1.
On peut remarquer que le deuxième bit est accolé au bit
de start du bit suivant (état 1 de 354 µs).
|
Réception et décodage d'une
trame

Lorsqu'on examine le chronogramme, la réception se fait en commençant
par le bit A1 (broche1 du 3750) vers le bit A12 (broche 12 du 3750).
Il faut remarquer que lorsqu'un switch est fermé,
il engendre un état 1 de son bit associé.
|
1. Trois
bits pour huit voies.
Les trois bits de poids faible servent
à coder une des huit sorties du port B.
Le nombre binaire affiché
sur le chronogramme est 011 ( donc 3 en décimal ).
C'est donc la sortie repérée
X3 sur le schéma d'implantation qui est forcée à
l'état 1.
2. Les quatre switchs de la carte réception.
Le switch repéré 1
sur la photo ci-contre est celui qui arrive après les 3 bits de
poids faible.
Il est sur OFF et c'est donc un
état logique 0 qui apparait sur le chronogramme.
Le swich repéré 2
est sur ON, c'est un état logique 1 qui apparait sur le chronogramme.
Les deux autres switchs sont sur
OFF, donc deux fois 0.
3. Les cinq bits codés par programmation.
Le bit T0 est encodé par les deux lignes de programme
movlw 0x80 Si vous voulez que le
bit soit à 0, remplacer la ligne par movlw 0x00
movwf T0
Le quartet T1 est encodé par les deux lignes de programme
movlw 0x0E Seul le quartet de poids
faible est utilisé, le quartet de poids fort doit être laissé
à 0.
movwf T1
Pour modifier les 5 bits de poids fort, il suffit de modifier les deux
lignes et de recompiler le programme. |
|
|
| |
Les
switchs coté émetteur pour cette configuration
A4=OFF A5=ON A6=OFF A7=OFF A8=ON A9=OFF A10=ON A11=ON A12=ON
A1 A2 A3 en fonction de la sortie que l'on désire activer.
|
Le
programme |
Début
Les 8 sorties à 0
Lecture des 5 bits de poids fort
Détection d'une durée
de 2ms à l'état bas du signal de réception, si ce
n'est pas le cas on revient au Début
Sous-programme de lecture d'une
trame
Mémorisation de la trame
1
Lecture trame 2
Détection d'une durée
de 2ms à l'état bas du signal de réception, si ce
n'est pas le cas on revient au Début
Sous-programme de lecture d'une
trame
Mémorisation de la trame
2
Comparer les deux trames recues
par HF, si elles sont différentes on revient au Début
Élaboration de la trame codée
sur la carte PIC
Comparaison de la trame PIC avec
la trame 2 (sans tenir compte des 3 bits de poids faible), si différentes
revenir au Début
Extraction des 3 bits de poids faible
et mise à l'état 1 de la sortie concernée
Retour à Lecture trame 2
|
Le
sous-programme de lecture d'une trame |
Les
12 bits de la mémoire trame sont forcés à 0
K=12
Ext1
On teste si le signal de réception
est à l'état bas (entre deux trames), si c'est le cas on
revient à Ext1
Ext2 (Le signal, vient de passer à l'état 1)
On teste si le signal de réception
est à l'état haut (bit start), si c'est le cas on revient
à Ext2
On vient de passer le front descendant,
on attend une durée d'1,5 bit
On lit le bit et on le sauvegarde
en décalant la mémoire de trame
Attente d'une durée d'un
bit pour se retouver sur le bit Start suivant
On décrémente K
Si K est différent de 0,
on saute à Ext2 (lecture du bit suivant)
On décale la mémoire
trame de 4 bits (car on a lu 12 bits alors que le stockage se fait sur
16)
Temporisation pour se retrouver
entre deux trames
Fin du SP
|
Pour
les personnes intéressées, le projet
complet sous MPLAB.
Il permet entre-autre de modifier les cinq bits de poids fort, la valeur
d'un composant associé au circuit UM3750.
Si vous le diffusez merci de laisser mon mail dans le listing. |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|