Pic16f887 usart
L'USART (Universal Synchronous Asynchronous Receiver Transmitter) est l'un des deux modules de communication série dont dispose le PIC16F887. L'USART peut être configuré comme système de communication asynchrone full duplex ou comme système synchrone half duplex (non étudié). La communication se fait sur les deux broches RC6/TX et RC7/RX qui doivent être configurés toutes les deux en ENTREE par TRISC. Les signaux sont compatible TTL, il faut utiliser un circuit d'interface du genre MAX232 pour générer un signal conforme au standard RS232. La vitesse de communication est fixée par un générateur de rythme programmable BRG (Baud rate generator). L'accès au module en lecture et en écriture se fait par les registres RCREG et TXREG. Le contrôle du module se fait par les registres TXSTA, RCSTA, SPBRG, SPBRGH et BAUDCTRL
I.1
Mode Asynchrone
Si on place le bit SYNC du registre TXSTAT à 0, l'USART fonctionne dans le mode asynchrone. Deux modes sont disponibles, le mode 8 bits standard et un mode 9 bits qui peut s'avérer intéressant dans le cas de communication point à multipoints. • La transmission se fait sur la broche RC6/TX et la réception sur la broche RC7/RX • La configuration et le contrôle du port se fait par les registres TXSTA, RCSTA et BAUDCTL • La vitesse de communication est fixée par les registre SPBRG, SPBRGH et les bits BRGH et BRG16 • La parité n'est pas gérée d'une façon matérielle, elle peut être gérée par soft si son utilisation est nécessaire. • L'accès au port en lecture ou écriture se fait par les registres d'accès RCREG et TXREG. La transmission et la réception se font par deux registres à décalage, un pour la transmission (TSR) et un pour la réception (RSR). L'accès au registres d'accès peut se faire alors que les registres à décalage sont en train de transmettre/recevoir une donnée. • L'USART peut déclencher deux interruptions différente par le biais des drapeaux PIR1.RCIF et PIR1.TXIF. Ces drapeaux sont très utiles pour