bian 发表于 2019-4-7 15:59:51

MM32移植FreeRTOS出现问题


FreeRTOS Kernel V10.1.1。大家好,我在mm32上移植FreeRTOS,在开启调度器里面卡死了。
0xe000e400 地址 在stm32与mm32中,读出的值不同,有的人说是mm32只有3个中断位,stm32是4个。但是mm32f103.h 的定义 显示是4,#define __NVIC_PRIO_BITS          4 。

难道是驱动文件错了?

1.我把configASSERT 这两句注释掉,其他什么都不改,却能运行了

2.改成#define __NVIC_PRIO_BITS          3,确实可以过configASSERT 这两句。但是发生了硬件错误。
将FreeRTOSConfig.h中,
#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY                        0x0f,改成0x07,
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);                改成NVIC_PriorityGroup_3 都还是硬件错误。




bian 发表于 2019-4-7 16:45:39

求助求助求助求助求助

eric2013 发表于 2019-4-8 02:30:56

找下这个寄存器,有指出,看看MM32的那个手册有此寄存器说明


一颗豆子 发表于 2021-7-31 16:03:40

楼主你好,我在灵动的用户手册中查到支持8位中断优先级,所以应该是三位,
我将reg_common.h文件中的__NVIC_PRIO_BITS改为3,
#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY    改为7
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4); 中断优先级分组不变
系统成功移植没有错误,希望能够帮到楼主。
页: [1]
查看完整版本: MM32移植FreeRTOS出现问题