打印

如何在中断服务程序中使用汇编语言

[复制链接]
2740|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hank2014|  楼主 | 2014-8-15 16:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现在做的一个课题,对实时性有一定的要求,采集需要在3.125us内完成,ADC完成转换就需要680ns,需要在中断中完成总共8个乘累加运算,当然还有采集的任务,现在采用C语言无法满足时间的要求,通过实验发现,只能完成7个乘累加运算。不会用汇编来编写这个中断服务程序,有哪位大侠给一些用汇编编写的中断服务程序或者类似的程序啊,多谢了!!!

相关帖子

沙发
airwill| | 2014-8-16 07:25 | 只看该作者
不知道用的是什么芯片, 什么开发环境?
CCS 直接支持嵌入汇编, 如:
__interrupt void rsvd_ISR(void)      // For test
{
  __asm ("      ESTOP0");
  for(;;);
}
或者直接用汇编写中断函数, 或者子程序, 如:

   .def _DSP28x_DisableInt
   .def _DSP28x_RestoreInt

_DSP28x_DisableInt:
    PUSH  ST1
    SETC  INTM,DBGM
    MOV   AL, *--SP
    LRETR

_DSP28x_RestoreInt:
    MOV   *SP++, AL
    POP   ST1
    LRETR


使用特权

评论回复
板凳
hank2014|  楼主 | 2014-8-16 09:58 | 只看该作者
我用的是CCS3.3,DSP是TMS320F2812

使用特权

评论回复
地板
hank2014|  楼主 | 2014-8-16 09:58 | 只看该作者
谢谢了

使用特权

评论回复
5
hank2014|  楼主 | 2014-8-16 10:01 | 只看该作者
请问有没有中断的例程,还有讲解,否则看不太明白,不敢使用,其实单纯汇编并不难,也知道该如何进行保护现场等,但还是需要一些例程及讲解,有没有相关的书

使用特权

评论回复
6
siyida| | 2014-8-16 13:13 | 只看该作者
学习

使用特权

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

本版积分规则

12

主题

29

帖子

0

粉丝