查看: 3084|回复: 8

[求助] K21的eDMA错误中断问题

[复制链接]
  • TA的每日心情
    慵懒
    2018-12-14 15:07
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    4

    主题

    71

    帖子

    0

    注册会员

    Rank: 2

    积分
    194
    最后登录
    2020-7-11
    发表于 2016-7-1 12:02:09 | 显示全部楼层 |阅读模式
    本帖最后由 芝麻-407597 于 2016-7-1 12:06 编辑

    在使用KSDK1.3.0的时候发现一个问题
    fsl_edma_common.c中有这么一段
    #if !defined FSL_FEATURE_EDMA_HAS_ERROR_IRQ
    const IRQn_Type g_edmaErrIrqId[DMA_INSTANCE_COUNT] = DMA_ERROR_IRQS;
    #endif
    同时在fel_edma_driver.c中也有相应的
    #if !defined FSL_FEATURE_EDMA_HAS_ERROR_IRQ
            /* Enable the error interrupt for eDMA module. */
            irqNumber = g_edmaErrIrqId;
            INT_SYS_EnableIRQ(irqNumber);
    #endif

    但是在fsl_edma_irq.c中是这样的
    #if FSL_FEATURE_EDMA_HAS_ERROR_IRQ
    /*! @brief EDMA ERROR IRQ handler with the same name in the startup code*/
    void DMA_Error_IRQHandler(void)
    {
        EDMA_DRV_ErrorIRQHandler(0);
    }
    #endif


    这个FSL_FEATURE_EDMA_HAS_ERROR_IRQ字面意思应该是定义的芯片的特性吧?
    为什么在未定义这个特性的时候要声明这个g_edmaErrIrqId的数组而且还使能了这个中断?那定义这个特性的时候为什么就不使能这个中断不定义这个数组了呢?
    另外中断处理函数是在定义的FSL_FEATURE_EDMA_HAS_ERROR_IRQ不为0的时候才有的这个倒是能理解

    我知道答案 目前已有8人回答
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2018-12-14 15:07
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    4

    主题

    71

    帖子

    0

    注册会员

    Rank: 2

    积分
    194
    最后登录
    2020-7-11
     楼主| 发表于 2016-7-1 13:40:16 | 显示全部楼层
    你们都不用KSDK么?用KSDK的都不用DMA么?用DMA的都不用错误中断么?这个地方到底是怎么个思路啊
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2017-1-4 08:05
  • 签到天数: 11 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    85

    主题

    1629

    帖子

    1

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    2569

    优秀版主

    最后登录
    2019-3-28
    发表于 2016-7-1 14:06:00 | 显示全部楼层
    楼主仔细看看,SDK中是不是有个XXXX_features.h的文件,里面有很多宏的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    712

    主题

    6371

    帖子

    0

    超级版主

    Rank: 8Rank: 8

    积分
    24863
    最后登录
    2025-7-18
    发表于 2016-7-1 14:20:49 | 显示全部楼层
    芝麻-407597 发表于 2016-7-1 13:40
    你们都不用KSDK么?用KSDK的都不用DMA么?用DMA的都不用错误中断么?这个地方到底是怎么个思路啊 ...

    我看了一下,确实像你讲的一样,FSL_FEATURE_EDMA_HAS_ERROR_IRQ这个宏定义决定着ERROR的使能与否,但是具体设计思路就不了解了,建议楼主直接跳转到V2.0版本,跟1.3显得简单,明了多了。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2018-12-14 15:07
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    4

    主题

    71

    帖子

    0

    注册会员

    Rank: 2

    积分
    194
    最后登录
    2020-7-11
     楼主| 发表于 2016-7-1 14:23:21 | 显示全部楼层
    技术范儿 发表于 2016-7-1 14:06
    楼主仔细看看,SDK中是不是有个XXXX_features.h的文件,里面有很多宏的

    是啊,这些宏我知道,我只是不理解的是对这个宏的使用上为什么会出现这种结果?
    这个宏是这样的
    /* @brief Define this chip have a error IRQ*/
    #define FSL_FEATURE_EDMA_HAS_ERROR_IRQ (1)

    但是按照给出的代码,此时就不会有以下的定义
    const IRQn_Type g_edmaErrIrqId[DMA_INSTANCE_COUNT] = DMA_ERROR_IRQS;
    和以下的调用
    irqNumber = g_edmaErrIrqId;
    INT_SYS_EnableIRQ(irqNumber);

    为什么定义了有这个中断反而不进行这些操作呢?是不是有些片子没有定义这个宏就可以启用上面那些操作了呢?
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2018-12-14 15:07
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    4

    主题

    71

    帖子

    0

    注册会员

    Rank: 2

    积分
    194
    最后登录
    2020-7-11
     楼主| 发表于 2016-7-1 14:26:48 | 显示全部楼层
    小恩GG 发表于 2016-7-1 14:20
    我看了一下,确实像你讲的一样,FSL_FEATURE_EDMA_HAS_ERROR_IRQ这个宏定义决定着ERROR的使能与否,但是 ...

    多谢版主回复!

    已经有2.0版的了?
    我用的是MK21FN1M0VLQ12这颗片子
    不知道有没有适合的?
    能给个链接不?
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    712

    主题

    6371

    帖子

    0

    超级版主

    Rank: 8Rank: 8

    积分
    24863
    最后登录
    2025-7-18
    发表于 2016-7-1 14:40:04 | 显示全部楼层
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2018-12-14 15:07
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    4

    主题

    71

    帖子

    0

    注册会员

    Rank: 2

    积分
    194
    最后登录
    2020-7-11
     楼主| 发表于 2016-7-1 16:12:00 | 显示全部楼层
    小恩GG 发表于 2016-7-1 14:40
    http://www.nxp.com/zh-Hans/products/software-and-tools/run-time-software/kinetis-software-and-tool ...

    好的,下载到了,有些日子没上网站感觉变化蛮大的还
    多谢了!
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    712

    主题

    6371

    帖子

    0

    超级版主

    Rank: 8Rank: 8

    积分
    24863
    最后登录
    2025-7-18
    发表于 2016-7-1 16:46:24 | 显示全部楼层
    芝麻-407597 发表于 2016-7-1 16:12
    好的,下载到了,有些日子没上网站感觉变化蛮大的还
    多谢了!

    不客气,有疑问论坛内讨论
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-19 01:33 , Processed in 0.109062 second(s), 30 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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