PIC18诡异的问题

     今天调试PIC18的串口,发现个诡异的问题。

     先初始化串口,屏蔽串口中断,用查询的方式发送串口数据。然后通过串口发送调试信息。如果main函数中有类似于while(1)的操作,即正常现象。如果main函数中没有类似于while(1)的主循环,则会不断的重复发送数据。

代码如下:

main()

{

 OpenUSART( USART_TX_INT_OFF  /*Set TXSTA Reg. =0b00100100*/
   & USART_RX_INT_ON   /*Set RCSTA Reg. =0b10010000*/
    & USART_ASYNCH_MODE
   & USART_EIGHT_BIT
   & USART_CONT_RX
   & USART_BRGH_HIGH
   ,25);      /*Set SPBRG=25, Baud Rate = 9600*/

 PIE1bits.TXIE=0;    /*disable debug port interrupt*/
 PIR1bits.RCIF=0;    
 IPR1bits.RCIP=1;          /*Set Receive of USART are High priority*/
 PIE1bits.RCIE=1;    /* Enable RxD Interrupt*/



 while (BusyUSART());
 WriteUSART('A');



while(1);

}


 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值