fdr1-modbus-slave/src/uart.c
2026-03-09 15:08:40 +01:00

18 lines
469 B
C

#include <xc.h>
void UART_Init() {
TRISC |= 0b11000000;
RCSTA = 0xB0; // SPEN | SREN | CREN
TXSTA = 0x24; // TXEN | BRGH
// SPBRG = 1; // 250000bps at 8MHz
// SPBRG = 7; // 250000bps at 32MHz
// SPBRG = 3; // 500000bps at 32MHz
// SPBRG = 1; // 1000000bps at 32MHz
// SPBRG = 17; // 115200 bps à 32MHz, erreur -1.36%
SPBRG = 16; // 115200 bps à 32MHz, erreur +2.12%
// EUSART interrupts as low prio, enable
IPR1bits.RCIP = 0;
PIE1bits.RCIE = 1;
}