Vai al contenuto
PLC Forum


Usart 16f877


pensante

Messaggi consigliati

Salve ragazzi, ho un problema con la gestione dell'usart di un pic 16f877.

Vorrei sapere se una volta seguiti i passi di normale routine di settaggio, descritti nel data-sheet della microchip (sempre se eseguiti bene), per la trasmissione di un byte basta solo immettere nel registro TXREG il byte da inviare e in automatico il pic invia il pacchetto???

Vi prego delucidatemi sulla gestione dell'usart.

grazie!!!! in anticipo

Link al commento
Condividi su altri siti


Ciao.

Io uso questo semplice codice C per trasmettere un byte con l'UART

void init()

{

// Inizializzazione UART

SPBRG = 8; // 28800 bit/sec (RS232)

set_bit(TXSTA, BRGH); // alta velocita

clr_bit(TXSTA, SYNC); // modalità asincrona

set_bit(TXSTA, TXEN); // abilita trasmissione

set_bit(RCSTA, CREN); // abilita ricezione

set_bit(PIE1, RCIE); // abilitazione interruzione in ricezione

set_bit(RCSTA, SPEN); // abilita UART

set_bit(INTCON, PEIE); // abilitazione interruzione periferiche

}

void putc(char c) // Trasmette un byte

{

while(trmt == 0); // aspetta che trmt (= TXSTA.1) vada a uno

TXREG = c;

}

Anche se non usi il C credo che il codice sia facilmente traducibile in assembly.

Ciao.

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...