leileimh 发表于 2023-3-16 09:35

关于FreeRTOS实现微秒级tick问题

本帖最后由 leileimh 于 2023-3-16 11:29 编辑

我想在N32G435RB芯片上跑FreeRTOS,并且实现一个8khz频率的任务。目前想的是修改config_rate_hz为1000000,也就是tick为1us,想知道这样是否合适,或者还是单独开个定时器中断来跑这个任务(这个任务大概运行时间30us左右),不知道哪个合适,或者有没有更好的方案(主要目前板子还没到,实测不了,希望大伙能给点建议,谢谢!)

pattywu 发表于 2023-3-16 16:22

肯定不行.
进出中断是有代价的, 光保存与恢复10多个寄存器,所用的时间就不少,中断太频繁, mcu就不用干什么了,一直在保存/恢复寄存器中.

zchong 发表于 2023-3-16 21:11

tick这么高肯定不合适,另外开个定时器中断处理吧

jobszheng 发表于 2023-3-17 10:14

每125us个周期,执行一个30us的任务。
看看其它任务的优先级与占用时间,再评估一下。感觉,您这个系统不适合使用RTOS了。

wsdmzz 发表于 2023-3-17 15:17

兄弟 跑空循环吧 30us 够了定时器和改tick不太现实   我之前也考虑过

coody 发表于 2023-3-17 15:28

RTOS的节拍1us?切换不过来的,死翘翘。

mcu5i51 发表于 2023-3-17 21:06

使用独立中断

10299823 发表于 2023-4-8 22:19

FreeRTOS不是us实现的 吗?

wilhelmina2 发表于 2023-4-9 14:38

有没有嵌入式开发的学习路线,越详细越好

updownq 发表于 2023-4-9 15:04

这个为什么要修改为us级别呢            

lzmm 发表于 2023-4-9 15:07

FreeRTOS切换会占用多大的时钟资源呢

sanfuzi 发表于 2023-4-9 15:29

freertos要学多长时间               

phoenixwhite 发表于 2023-4-9 15:46

freertos任务切换需要多少个时钟周期

tpgf 发表于 2023-4-10 10:07

tick这么高肯定不太好实现 感觉干不了别的了

qcliu 发表于 2023-4-10 11:01

速度太高了降低十倍的速度应该差不多

drer 发表于 2023-4-10 11:22

跑系统也不是什么都能实现的 建议楼主降速处理

coshi 发表于 2023-4-10 11:57

单独开个定时器中断来跑这个任务是不太合适的

kxsi 发表于 2023-4-10 12:16

sanfuzi 发表于 2023-4-9 15:29
freertos要学多长时间

不用专门去学 一边调试一边接触就行

dalarang 发表于 2023-4-10 12:25

这个规划设计是明显不合理的,100kHz的的中断,即便裸机跑也不应该使用。
RTOS上下文切换比中断入栈的开销大多了。
一般情况下,个人不建议使用间隔在100us内的持续触发中断。

wiba 发表于 2023-4-10 13:24

wsdmzz 发表于 2023-3-17 15:17
兄弟 跑空循环吧 30us 够了定时器和改tick不太现实   我之前也考虑过

那么需要跑多少个空循环大概够30us呢
页: [1] 2
查看完整版本: 关于FreeRTOS实现微秒级tick问题