Ответ в теме: Программирование МК PIC



#22046
EgorU
Участник

Зджравствуйте, имеется контроллер pic18f25k22
На нём запущенО 2а Uart-а
RX1 RC7 TX1 RC6
RX2 RB7 TX2 RB6

Выставленны следующие натройки
OSCCON=0b00110000; //System clock
OSCCON2=0b00000000; //System clock
INTSRC=1; //Internal Oscillator Low-Frequency Source Select bit1 = 31.25 kHz

//UART1
ANSC7=0;
ANSC6=0;
TRISC6=1;
TRISC7=1;
PORTCbits.RC6=1;
SPEN1=0;
CREN1=0;
TXSTA1bits.SYNC=0;
TXSTA1bits.BRGH=0;
RCSTA1bits.SPEN=1;
BAUDCON1bits.BRG16=1;
BAUDCON1bits.CKTXP=0;
BAUDCON1bits.DTRXP=0;
SPBRGH1=0x00;
SPBRG1=0x3F;
SPEN1=1;
TXEN1=1;
CREN1=1;

//UART2
ANSC7=0;
ANSC6=0;
TRISB6 = 0;
TRISB7 = 0;
SPBRGH=0;
SPBRG=0x3F;
PORTBbits.RB6 = 1;
CREN2=0;
TXSTA2bits.SYNC=0;
TXSTA2bits.BRGH=0;
RCSTA2bits.SPEN=1;
BAUDCON2bits.BRG16=1;
BAUDCON2bits.CKTXP=0;
BAUDCON2bits.DTRXP=0;
TXSTA2bits.TX9 = 0;
TXSTA2bits.TXEN = 1;
TXSTA2bits.TX9D = 0;
CREN2=1;

Всё вроде как одинаково, но в реальности скорости передачи разные… смотрю осцилографом
Необходимо настроить на скорость 9600

Подскажите пожалуйста