导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→关于void serial (void) interrupt

* 31176: 关于void serial (void) interrupt 4 using 1

   dbrother 
dbrother发表的帖子 

 关于void serial (void) interrupt 4 using 1
我在程序中定义了串口中断处理函数 void serial (void) interrupt 4 using 1 可用
simulator 方式调试时,在发数据时,中断一直无法进入其中,无法进行跟踪,这是怎么回
事?我在串口监视窗口里能看到我所发的数据! ES=1 也在串口初始化内设置了,程序请大
家在此作诊断! (我用的是Keil 7, winXp:和操作系统有关吗?)
void serial (void) interrupt 4 using 1  {    //
  unsigned char c;
  if (RI)  {                        //是接收中断
     c = SBUF;                      // 接收数据*/
     RI = 0;                        //清中断请求标志
     switch (c)  {                  //处理接收的字符
      case 'A':
        break;
      case 'B':
        break;
      default:                       //读取其它字符
        break;
    }
  }
void serial_init (void)  {
  SCON  = 0x50;          // 模式 1: 8位, 接收充许
  TMOD  = 0x20;          // 定时器 1 模式 2: 8位 重装 
  TH1   = 0xFD;          // F4 2400 FD 9600 FE 14400 FF 28800  @11.0592MHz
  TR1   = 1;                         // 定时器 1工作
  ES    = 1;                         // 串口中断充许
}
main(){
 serial_init();
 while(1) {
   SBUF='A';
   while (TI==0);
   TI=0;
}



发表时间:2003年5月20日16:11:57

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:www.realtek.com上有[em11]
[下一篇帖子]:在中断int0服务程序中,能向串口发送数据吗?int0退出后是否会触发串口中断吗?[求助]