1428|0

2015

帖子

0

TA的资源

纯净的硅(中级)

楼主
 

介绍一下DSP/BIOS硬件中断管理 [复制链接]

使用DSP/BIOS 内核开发应用程序,用户不能随意修改中断向量表的位置,该中断向量表将有DSP/BIOS 配置文件中的MEM模块决定。

       1.硬件中断ISR的调用:(1)使用DSP/BIOS配置工具静态调用ISR函数
                                           (2)使用HWI_dispatchPlug等函数动态指定ISR函数

       当硬件中断的ISR不使用DSP/BIOS提供的调度程序时,在该ISR调用任何影响DSP/BIOS对象的API之前,如需发送一个旗语或启动一个SWI,必须调用HWI_enter汇编宏。一旦调用了HWI_enter汇编宏,在ISR结束时还要调用HWI_exit.具体来讲这些API有:

       SWI_andn:该函数提供的参数与邮箱值做“与”运算,若邮箱为0,则启动该软件中断;
       SWI_andnHook
       SWI_dec:邮箱值减1,若邮箱为0,则启动该软件中断,并恢复邮箱到初始值;
       SWI_inc:启动该软件中断,并对邮箱值加1;
      SWI_or:启动该软件中断,并且邮箱值与该函数提供的参数做“或”运算;
      SWI_orHook
      SWI_post:启动软件中断;
    PIP_alloc
    PIP_free
    PIP_get
    PIP_put
    PRD_tick
    SEM_post
    MBX_post
    TSK_yield
    TSK_tick
复制代码

       2.编写硬件中断ISR注意点:
       1)在一个硬件中断请不要调用SWI_disable和SWI_enable
       2)在NMI(不可屏蔽中断)的ISR中不要使用HWI_enter、HWI_exit以及其他任何API函数
       3)当硬件中断的ISR使用DSP/BIOS的HWI调度程序时,不要再使用HWI_enter、HWI_exit
       4)当任何有关PIP的API调用时该管道的读通知和写通知函数都会运行,所以,当硬件中断ISR调用的PIP的API函数时,这些函数将作为ISR的一部分
       5)当硬件中断ISR调用了HWI_enter、HWI_exit(无论DSP/BIOS调用还是自己调用),中断允许重新打开,这时在一个硬件中断中可以响应另一个硬件中断

       3.HWI模块的API函数
       HWI_disable:禁止硬件中断
       HWI_enable:允许硬件中断
       HWI_enter:硬件中断进入部分宏定义
       HWI_exit:硬件中断ISR退出部分宏定义
       HWI_restore:恢复硬件中断状态
       HWI_dispatchPlug:插入硬件中断ISR函数
复制代码

点赞 关注
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表