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.

FREERTOS下如何正确开启DWD

在freertos下系统时间片生成默认采用rti中断实现,rti驱动无法自行生成。

于是手动配置和喂狗,步奏如下:

1)手动开启dwd计时器

rtiREG1->DWDCTRL = 0xA98559DAU;

rtiREG1->DWDPRLD = 4095;(rticlk为11.52MHz)

2)1s周期任务里喂狗 

rtiREG1->WDKEY = 0x0000E51AU;
rtiREG1->WDKEY = 0x0000A35CU;

但计时器开启后,cpu直接跑到 dabort.asm里,无法正常运行正常任务和喂狗。

请问该如何解决该问题。

  • https://e2e.ti.com/support/microcontrollers/hercules/f/312/t/420110

    这个帖子问了和你相似的问题,作者或许已经解开了,跟你的步骤是很类似的,但是他的好像已经正常了。这是TI的英文版论坛,你可以咨询一下贴主。

  • 没有freertos没有问题。

    操作系统调度器启动后,在把系统相关寄存器都保护起来了,用户程序访问相关地址就内存出错。

    这个prvMpuSetRegion参数怎么设置,在用户任务程序里还可以改相关寄存器?