张亚飞 发表于 2017-5-26 16:52:25

关于STM32cubemx 中断配置界面的use freeRTOS function 到底什么作用

如下图所示,每次开启中断的时候默认右下角的uses FreeRTOS functions 都是选中状态,对应的中断优先级是5。我猜着是使用freeRTOS 的任务调度机制,然后优先级就低于stm32本身所有的优先级。不知道对不对。另外还有Code gerneration 界面上边的Select for init squence ordering 这个选项是用来调整main函数里边的各个中断的代码顺序吗?这两个功能我都实验过,但是有一次莫名其妙导致程序死了,怎么改都好不了,没办法重新生成的ioc工程,而且不敢轻易改这块的内容了。   抽个空在论坛请教一下各位。没有亲手操作过的问题我是不会发帖谈论的,希望使用stm32cubemx 的达人们可以不吝赐教,谢谢。




生命大陆 发表于 2017-8-24 15:21:54

所谓use freeRTOS function 指的是该中断是否需要使用freertos的API,若选中,则中断优先级只能从5~15中选择,因为优先级高于5即大于所设LIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY时,不允许使用任何freertos的API,所以当你清楚的知道自己的中断不会用到任何API时,可以取消选择,并能够把中断优先级调高,此时该中断将不会被freertos禁止,不会因为执行freertos而延时。

eagle0754 发表于 2017-5-26 21:11:37

:Q目前为止还没有用过MX

张亚飞 发表于 2017-5-27 09:45:12

eagle0754 发表于 2017-5-26 21:11
目前为止还没有用过MX

真挺好用的,如果你们有简单的片子可以按照教程做几个简单的功能。

any012 发表于 2017-5-27 14:17:52

试了下勾选select for init sequnce ordering,生成的工程代码里,各部件初始化函数里没有配置中断部分了,都集中到static void MX_NVIC_Init(void)函数里,该函数在main.c里各部分初始化完后才被调用。





any012 发表于 2017-5-27 14:31:37

使用freertos默认中断优先级是5,这个应该是和这里有关:


张亚飞 发表于 2017-5-27 16:53:51

any012 发表于 2017-5-27 14:31
使用freertos默认中断优先级是5,这个应该是和这里有关:

知道了,谢谢。 等着把手头项目做完了,好好用这个软件调试调试。

张亚飞 发表于 2017-8-24 15:41:43

生命大陆 发表于 2017-8-24 15:21
所谓use freeRTOS function 指的是该中断是否需要使用freertos的API,若选中,则中断优先级只能从5~15中选 ...

:handshake

当幸福来敲men 发表于 2017-10-22 19:31:39

给力

井下石 发表于 2018-4-21 20:22:58

生命大陆 发表于 2017-8-24 15:21
所谓use freeRTOS function 指的是该中断是否需要使用freertos的API,若选中,则中断优先级只能从5~15中选 ...

给力
页: [1]
查看完整版本: 关于STM32cubemx 中断配置界面的use freeRTOS function 到底什么作用