打印

串口中断进不去,急?

[复制链接]
3560|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zjnbmxm|  楼主 | 2008-5-30 09:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  我是用72324,外部4MHz晶体,用inDART硬件仿真,现在有两个问题:
   1,调试通信不成功,但用inDART下的DataBlaze完全正常,读写都正常?没办法我先配置成内部振荡,可以进入硬件仿真,只是速度慢?
   2,我的SCI中断进不去,先不管其它设置对不对,我想只要我发个数据,总应该进入我的SCI中断才对,应该说只要:
    1)、SCIBRR=0xd0;SCICR1=0x10;;SCICR2=0xe8;  
    2)、往SCIDR送一个数据;
    3)、在interrupt_vector函数矢量地址为0FFE6处加上我的串口中断服务程序;
    上述条件是否就是能产生串口中断的充分条件?只要能进中断,我再进行其它通信设置,但现在就是进不去中断?
    请各位高手帮我看看?
沙发
zjnbmxm|  楼主 | 2008-5-30 09:56 | 只看该作者

SCI中断进不去?

   不可思议,中断总该进去,会不会是因为用了内部晶振的原因?

使用特权

评论回复
板凳
香水城| | 2008-5-30 10:10 | 只看该作者

开全局中断了吗?

查看一下SCISR的状态是否正确。

使用特权

评论回复
地板
zjnbmxm|  楼主 | 2008-5-30 10:13 | 只看该作者

串口中断进不去,急?

香水城,你好!
   我就是前次给你写mail的客户,现在我的代码只剩通信和定时还没搞定,哪个是全局中断,我几51里都有全局中断,但我反复看了pdf,没有说到全局中断呀?

使用特权

评论回复
5
香水城| | 2008-5-30 10:44 | 只看该作者

全局中断是CPU中控制中断的控制位

在ST的单片机中没有使用“全局中断”这种说法,但不表示不存在。

请看手册中介绍CPU中断的章节(应该是第5章)。简单地说全局中断由Condition Code Register中的I位控制。

使用特权

评论回复
6
zjnbmxm|  楼主 | 2008-5-30 10:59 | 只看该作者

串口中断进不去,急?

   香水城你好!
   我看到了cc寄存器里有管这个的,那就好说了.但如何对CC寄存器操作呀,我在st72324.h里都没找到对它的物理定址,就是说我如何实现
                   ClrBit(CCR,5);
         ClrBit(CCR,3);
   编译后提示CC没定义呀?

使用特权

评论回复
7
香水城| | 2008-5-30 11:06 | 只看该作者

请参考ST提供的例子

使用 _asm("rim");     开放全局中断。

使用特权

评论回复
8
zjnbmxm|  楼主 | 2008-5-30 11:16 | 只看该作者

串口中断进不去,急?

  香水城,你好!
  我现在还是进不去中断,你看看:
  1)、我先设置了口;
      PEDDR=0x01;
      PEOR=0x01;   
  2)、SCIBRR=0xd0;
       SCICR1=0x10; 
       SCICR2=0xc8;
  3)、在interrupt_vector.c里:
       INT_Serial,      /* 0xFFE6 */
  4)、_asm("rim");     //在你的指导下刚加的,开全局中断
  5)、SCIDR=0xaa;
  5)、我的断点就停在@interrupt void INT_Serial(void)里下,但就进不了中断?
   请你帮我看看?

使用特权

评论回复
9
zjnbmxm|  楼主 | 2008-5-30 11:41 | 只看该作者

香水城,帮我看看,老板催着我!

  香水城,你好!
  我现在还是进不去中断,你看看:
  1)、我先设置了口;
      PEDDR=0x01;
      PEOR=0x01;   
  2)、SCIBRR=0xd0;
       SCICR1=0x10; 
       SCICR2=0xc8;
  3)、在interrupt_vector.c里:
       INT_Serial,      /* 0xFFE6 */
  4)、_asm("rim");     //在你的指导下刚加的,开全局中断
  5)、SCIDR=0xaa;
  5)、我的断点就停在@interrupt void INT_Serial(void)里下,但就进不了中断?
   请你帮我看看?谢先!

使用特权

评论回复
10
zjnbmxm|  楼主 | 2008-5-30 13:29 | 只看该作者

香主,帮我看看!

香主,你好!
  我现在还是进不去中断,你看看:
  1)、我先设置了口;
      PEDDR=0x01;
      PEOR=0x01;   
  2)、SCIBRR=0xd0;
       SCICR1=0x10; 
       SCICR2=0xc8;
  3)、在interrupt_vector.c里:
       INT_Serial,      /* 0xFFE6 */
  4)、_asm("rim");     //在你的指导下刚加的,开全局中断
  5)、SCIDR=0xaa;
  5)、我的断点就停在@interrupt void INT_Serial(void)里下,但就进不了中断?
   请你帮我看看?谢先!

使用特权

评论回复
11
香水城| | 2008-5-30 14:08 | 只看该作者

我这里有一个例子,很简单

使用特权

评论回复
12
aes_sea| | 2008-5-30 14:16 | 只看该作者

re:

你的ISPR1/2...(中断优先级相关)配置了吗?要将SCI的优先级配置一下

使用特权

评论回复
13
zjnbmxm|  楼主 | 2008-5-30 14:39 | 只看该作者

香主!

香主,你好!
   我把你的例子也试了,也进不去呀。
   其实我的设置虽跟你不一样,但是一样的。我能否把我的projet发给你,你帮我看一下?我知道你的邮箱,可一吗?

使用特权

评论回复
14
香水城| | 2008-5-30 15:14 | 只看该作者

我们已经通知代理商给你提供直接帮助

负责支持你的代理都经过我们的培训,可以很好地帮助你。

使用特权

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

本版积分规则

7

主题

17

帖子

0

粉丝