智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 546|回复: 0
打印 上一主题 下一主题

是龙丘库的中断优先权的问题嘛

[复制链接]

49

主题

848

帖子

1

精华

知名人物

说和做是两码事

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

积分
32825

优秀会员奖章活跃会员奖章论坛元老奖章在线王奖章资源大师奖章

威望
29437
贡献
1934
兑换币
1870
注册时间
2013-12-10
在线时间
727 小时
跳转到指定楼层
1#
发表于 2015-4-3 18:30:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
void set_irq_priority (int irq, int prio)
{
    uint8 *prio_reg;
    int div;

    //确定irq号和优先级有效
    if (irq > 91)        irq=91;
    if (prio > 15)        prio=15;
   
   // div = irq/32;
   
   
    //确定对应的NVICISER
    prio_reg = (uint8 *)(((uint32)&NVICIP0) + irq);
    //设置优先级
    *prio_reg = ( (prio&0xF) << (8 - ARM_INTERRUPT_LEVEL_BITS) );            
}

龙丘是这样写的 但我最近发现好像优先权的效果不明显   

我的编码器采用DMA采集的  然后优先权设置为set_irq_priority(0,0); 、

尽管如此 我编码器采集的值还是会被多少干扰,

所以问问大家有没有这类的问题呢
回复

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-10-1 19:20 , Processed in 0.036241 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表