7.2. Le port série (UART)
MCS-51 microcontrôleurs de la famille ont le matériel nécessaire pour effectuer la communication en duplex intégral de série (émettre et recevoir simultanément), en incorporant un UART ou Universal Asynchronous Receiver et de l'émetteur (Universal Asynchronous Receiver-Transmitter).
Le registre) SCON (98H, 152
paramètres d'enregistrement port série .
MSB | | | | | | | LSB |
SM0 | SM1 | SM2 | REN | TB8 | Rb8 | IT | RI |
9FH | 9EH | 9DH | 9CH | 9bh | 9AH | 99h | 98H |
SM0 - SM1. Sélection du mode de fonctionnement du port série.
Mode | SM0 | SM1 | Description | Vitesse de fonctionnement |
0 | 0 | 0 | Registre à décalage | ensemble (horloge / 12) |
1 | 0 | 1 | 8-bit UART | variable |
2 | 1 | 0 | 9-bit UART | ensemble (horloge / horloge 64 ou / 32) |
3 | 1 | 1 | 9-bit UART | variable |
SM2. Configuration spéciale des modes de fonctionnement.
- Mode 0: SM2 doit rester à 0.
- Mode 1: Si SM2 est de 1, RI n'est pas activée si elle reçoit le bit d'arrêt.
- Dans les modes 2 et 3: Si SM2 est de 1, permet multi-mode, et RI n'est pas activé lorsque l'e bit 9 (Rb8) est égal à 0.
REN. contrôle de réception
0 -> Désactiver la réception.
1 - les caractères> Activer la réception.
> Réception - Air> 0 Mode: 0 à 1,.
TB8. Pour la communication avec le contrôle de parité, de la transmission.
Correspondant au 9 ème bit (bit de parité) pour transmettre des communications de 9 bits avec contrôle de parité dans les modes 2 et 3.
Rb8. Pour la communication avec contrôle de parité, de la réception.
- Mode 0: Non utilisé.
- Mode 1: Prenez le bit est Stop.
- Dans les modes 2 et 3: Obtenez le 9ème bit (bit de parité).
IT. Indicateur de transmission ou indicateur d'interruption.
Cet indicateur indique la fin de la transmission d'un caractère. Est activée au début du bit d'arrêt.
0 mode est activé à la fin du 8 ème bit.
Il doit être clair par le programme.
RI. Indicateur ou recevoir indicateur d'interruption.
Cet indicateur indique la réception d'un nouveau personnage est disponible dans SBUF. Est activé à la fin du 8 ème bit en mode 0, et dans le bit d'arrêt dans les autres modes (à l'exception des multiprocesseurs).
Il doit être clair par le programme.