| void USART_Init(uint16 baud)//设置串口为8bit,1stop bit,0奇偶校验 {
 RPINR18bits.U1CTSR = 0;
 RPINR18bits.U1RXR = 17;//配置RP17为串口1的RxD引脚,实际未用此功能
 RPOR5bits.RP10R = 3;//配置RP10为串口1的TxD引脚
 
 U1BRG = baud;
 
 U1MODEbits.USIDL = 1;//模块空闲模式下不工作
 U1MODEbits.UEN   = 0;//使能U1TX,U1RX,禁用CTS、RTS引脚
 #ifdef USART_HIGH_SPEED
 U1MODEbits.BRGH = 1;//高速模式
 #endif
 U1MODEbits.PDSEL = 0;//8位数据位,无奇偶校验
 U1MODEbits.STSEL = 0;//1停止位
 
 
 U1MODEbits.ABAUD = 0;
 U1STAbits.URXISEL = 0;//缓冲器收到数据马上中断
 IFS0bits.U1RXIF = 0;//中断标志清零
 IEC0bits.U1RXIE = 1;//UART1接收器中断允许
 IPC2bits.U1RXIP = 7;
 
 U1MODEbits.UARTEN = 1;//使能串口
 
 U1STAbits.UTXEN = 1;//使能发送
 
 }
 初始化代码如上。
 |