UART Transmitter 要如何一次送五筆字元給 UxTXB
|
||||
---|---|---|---|---|
新會員
|
如題
一次丟五筆字元給 UxTXB UART Transmitter 只會丟出前四筆字元 要如何正常丟出五筆字元 程式碼如下 #define __dsPIC30F2023__ #include <p30F2023.h> #define FCY 20000000 #define BAUDRATE 9600 #define BRGVAL ((FCY/BAUDRATE)/16)-1 void UART_init(void); int i=0,j=0; int data[4]; int main(void) { UART_init(); for(i=0 ; i<4160 ; i++) { Nop(); } data[0] = 0b00001111; data[1] = 0b11110000; data[2] = 0b10101010; data[3] = 0b01010101; data[4] = 0b00110011; while(1) { while(IFS0bits.U1TXIF == 1) { U1TXREG = data[0]; U1TXREG = data[1]; U1TXREG = data[2]; U1TXREG = data[3]; U1TXREG = data[4]; IFS0bits.U1TXIF = 0; } } } void UART_init(void) { U1MODEbits.STSEL = 0; U1MODEbits.PDSEL = 0; U1MODEbits.ABAUD = 0; U1MODEbits.BRGH = 0; U1MODEbits.ALTIO = 1; U1BRG = BRGVAL; U1STAbits.UTXISEL1 = 1; U1STAbits.UTXISEL0 = 0; IEC0bits.U1TXIE = 0; U1MODEbits.UARTEN = 1; U1STAbits.UTXEN = 1; }
發表於: 2009/10/6 19:08
|
|||
|