小编use*_*230的帖子

如何在RTOS中使用看门狗定时器?

假设我在嵌入式环境中有一个协作调度程序.我有很多进程在运行.我想利用看门狗定时器,以便我可以检测进程何时因任何原因停止运行并重置处理器.

在没有RTOS的简单应用程序中,我总是会从主循环接触看门狗,这总是足够的.但是,在这里,有许多进程可能会挂起.什么是定期触摸看门狗定时器的清洁方法,同时确保每个过程都处于良好状态?

我想我可以为每个进程提供一个回调函数,这样它就可以让另一个监督所有进程的函数知道它仍然存在.回调将传递一个参数,该参数将是任务唯一ID,因此监督者可以确定谁正在回叫.

c embedded rtos watchdog

12
推荐指数
2
解决办法
1万
查看次数

如何在使用FreeRTOS时保持代码的可移植性

我很想知道如何在我的应用程序中使用FreeRTOS.让我提出一个简单的方案.假设我有main和一个具有一些硬件特定代码的模块.该代码可用于控制系统或传感器中的特定电机......具有定义角色的任何硬件.在module.c中,我有一个名为的函数ModuleNameTask.在main我创建任务使用xTaskCreate,我通过ModuleNameTask.由于我ModuleNameTask是在module.c而不是main.c中定义的,所以我现在必须在module.c中包含一些FreeRTOS,以便使用类似的函数vTaskDelay.我不喜欢我在module.c中包含这些文件的事实,因为我觉得它不再可移植.

那么,我该如何处理呢?我应该ModuleNameTask从module.c中删除它并将其放在main.c中吗?或者只是接受我必须将FreeRTOS的位包含到module.c中的事实.有什么建议?

c embedded portability freertos

3
推荐指数
2
解决办法
1478
查看次数

标签 统计

c ×2

embedded ×2

freertos ×1

portability ×1

rtos ×1

watchdog ×1