PIC16F1934 串口接收中断就响应两次

[复制链接]
5248|6
 楼主| fq1110 发表于 2010-10-15 19:31 | 显示全部楼层 |阅读模式
初始化与中断代码如下:
void InitUSart()
{
TRISC6=1; //txd pin
TRISC7=1; //rxd pin
SPBRG=0x67; //16000000/(16*(SPBRG+1))=9600
TXSTA=0x24;                    
RCSTA=0x90;
BAUDCON=0x00;
//PIE1|=0x20; //open usart rx interrupt
PIE1|=0x30; //open usart interrupt
}

void interrupt ISR(void)
{
if(RCIE&&RCIF)  //USart接收中断
{
   u8 i=RCREG;
   PushDataToBuf(&g_USartRcvBuf,i);
}
}
发送没有问题,接收中断两次后就不产生中断了,请问大侠们,有可能是什么原因啊?
 楼主| fq1110 发表于 2010-10-15 19:43 | 显示全部楼层
我是用PC端串口调试做的实验,一次如果1个字符,中断没有问题,但一次发多了,PIC就只中断两次后面就不再中断了。我怀疑是PIC缓冲区溢出了,但我不知道如何处理。
 楼主| fq1110 发表于 2010-10-15 19:45 | 显示全部楼层
但是查看FERR与OERR寄存器的值都为零。是正常的。
 楼主| fq1110 发表于 2010-10-16 12:12 | 显示全部楼层
PIC论坛怎么这么冷啊。不能让它沉下去,顶起来。
tcc8073 发表于 2010-10-16 13:07 | 显示全部楼层
开串口连续接受功能
clarkzeng 发表于 2010-10-16 13:59 | 显示全部楼层
Mary_luo 发表于 2010-10-19 14:42 | 显示全部楼层
帮楼主顶起来
您需要登录后才可以回帖 登录 | 注册

本版积分规则

68

主题

530

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部