This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AWR2944: 如何触发NMI中断

Part Number: AWR2944
Other Parts Discussed in Thread: SYSCONFIG

我想观察NMI中断在各种场景下是如何处理的,现在使用的是AWR2944的板子,根据手册/cfs-file/__key/communityserver-discussions-components-files/118/AWR2944-technical-reference.pdf中描述,我令

DSS_WDT_RTIDWDCTRL= 0xA98559DA,RTIWWDRXNCTRL = 0x0A,RTIWDKEY = 0xFFFFFFFF,也打开了NMIE使能,但是没有触发NMI中断,是哪里做的不对吗,各位工程师帮我看看。然后我又使用以下路径中提供的看门狗驱动程序示例(由 mmWave MCU Plus SDK 安装程序提供)/mmwave_mcuplus_sdk_04_04_00_01/mcu_plus_sdk_awr294x_08_06_00_28/examples/drivers/watchdog_interrupt/awr294x-evm/c66ss0_nortos,想要通过看门狗触发NMI中断,可以触发NMI中断,但是在程序上看不出来他是怎么触发的NMI,我想利用AWR2944这块板子找到一个便捷的软件触发NMI中断的方法,请各位大佬帮帮忙

  • 你好。请问你是什么样的应用需要一个软件方法来出发NMI中断?

    你可以通过看门狗来触发NMI中断,推荐你使用sysconfig来进行配置。

    打开sysconfig,TI DRIVERS下的WDT,添加一个实例,WDT Reset Mode选择trigger WDT interrupt。跟你的需要配置WDT Runtime Timeout.

    另外需要添加ESM实例,在ESM Notifier Configuration的Notify Callback下添加中断处理函数。

    看门狗(DWD)到期后触发NMI中断。

    看门狗如何触发NMI中断,你可以参考)/mmwave_mcuplus_sdk_04_04_00_01/mcu_plus_sdk_awr294x_08_06_00_28/source/drivers/watchdog/v0/watchdog_rti.c

  • 您好,我是使用CCS来连接板子的,使用mmwave_mcuplus_sdk_04_04_00_01/mcu_plus_sdk_awr294x_08_06_00_28/examples/drivers/watchdog_interrupt库函数可以触发,但是我想观察在循环缓冲区等特殊情况下发生的NMI要怎么处理,所以想找到一种更简便的方法触发,查看手册是配置DSS_WDT_RTIDWDCTRL,RTIWWDRXNCTRL ,RTIWDKEY 即可触发,不知道是不是我理解有误,配置了寄存器后没有触发NMI所以有些疑问

  • 你好。

    根据你的需求来看

    参考TI的文档:Interrupt and Exception Handling on Hercules ARM Cortex-R4/5-Based Microcontrollers (SPNA218)寻找答案。

    这份参考文档有对控制器的中断和异常处理进行说明

    谢谢!