打印

晕死了,AW16,SCI串口中断接收,进不去中断

[复制链接]
4127|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
winter1999|  楼主 | 2007-10-10 15:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

interrupt VectorNumber_Vsci1rx void isrSCI1(void)
{
  byte  temp;
  temp = SCI1S1;
  
  LedFlash = ~LedFlash;
  
  if (SCI1S1_RDRF)
  {
      
    COMM_BUF = SCI1D;
    
    
    RD_FLAG = YES;
  }
}
/*串口1初始化*/
void SCI1_Init(void)
{  
  SCI1BD = (BUSCLK/BandRate/16);  //bandrate
  SCI1C1 = 0x00;       //8bit
  SCI1C2 = 0x2C;       //允许接收中断,接收和发送允许
  SCI1C3 = 0x00;
}
主程序里已经  EnableInterrupts;用串口调试助手调试,波特率是对的,因为发送是正确的。然后依然用串口调试助手调试接收,进不去串口接收中断,而定时器溢出中断是正常的,这是怎么回事呢?谢谢

相关帖子

沙发
张明峰| | 2007-10-10 15:42 | 只看该作者

你能保证PC发出的数据抵达芯片的RX引脚?

串口调试助手连续不停地发送0x55,然后用示波器看芯片RX引脚波型,没有示波器就用万用表量RX引脚直流电压,应该为0.5VDD左右。

使用特权

评论回复
板凳
winter1999|  楼主 | 2007-10-10 16:21 | 只看该作者

是的

张老师,我在RX和TX都加了LED,我用PC发数据的时候,可以观察到那个LED会按我发数据的频率闪。

使用特权

评论回复
地板
winter1999|  楼主 | 2007-10-10 16:23 | 只看该作者

我按您说的试了

我的VDD是5.03V,不过RX脚只有1.8V

使用特权

评论回复
5
free_tech| | 2007-10-10 16:29 | 只看该作者

还是查硬件吧

估计你的max232接错线了,可以先把tx于rx短接,自发自收,肯定能进中断

使用特权

评论回复
6
winter1999|  楼主 | 2007-10-10 16:31 | 只看该作者

free_tech您好,

您说232接错了,那怎么用AW16发正常呢,我试试自发自收

使用特权

评论回复
7
winter1999|  楼主 | 2007-10-10 18:00 | 只看该作者

还不成:(而且有奇怪的问题

1、如果我用串口调试助手发数据,那么回过头用AW16发数据给PC,结果肯定收不到,要重启N次串口调试助手才OK。
2、取消AW16上的发送程序,用PC发数据给AW16,结果串口调试助手的接收窗口也有显示,内容和发送窗口一样。

使用特权

评论回复
8
张明峰| | 2007-10-10 23:21 | 只看该作者

查你的电路吧,兄弟

肯定是你板子的线路有问题。别急,慢慢查。
要验证接受软件很简单:SCI1C1控制寄存器内置“LOOPS=1”“RSRC=0”就实现内部自发自收。你发什么就能收到什么。

使用特权

评论回复
9
winter1999|  楼主 | 2007-10-11 11:39 | 只看该作者

终于可以了,谢谢二位老师

换了块232,奇怪,这个232用来烧STC居然可以

使用特权

评论回复
10
dinizhuzhu| | 2010-8-17 11:17 | 只看该作者
void uart2_init(void)
{
    SCI2BDH=(unsigned char)(BAUD_DIV >> 8);
    SCI2BDL=(unsigned char)(BAUD_DIV & 0x00ff);
    SCI2C1 = 0x00;       //8bit
    SCI2C2 |= 0x3C;       //允许接收中断,接收和发送允许   
    SCI2S2 |= 0xC0;  
    //SCI2C1=0x00;
    //SCI2C2=SCI1C2_TE_MASK | SCI1C2_RE_MASK | SCI1C2_RWU_MASK ;
}

使用特权

评论回复
11
dinizhuzhu| | 2010-8-17 11:18 | 只看该作者
告诉你一下吧!SCI2S2寄存器必须设置!!!!!!!!!!!!!!!!!!!!!!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

37

主题

136

帖子

2

粉丝