0

我是 freeRTOS 的新手。我目前正在开发一个使用运行 freeRTOS 的 cerebot Mx7ck(PIC32) 的项目。我需要使用一些事件读取按钮(即使用按钮输入作为输入事件)?但我不允许使用 freeRTOS 中可用的轮询技术或 ISR。

教授建议使用事件处理程序。我对 freeRTOS 中的事件管理一无所知。如果不使用中断服务例程,freeRTOS 中似乎没有事件处理程序和管理。

请帮忙。我被困在这很长一段时间了。

4

1 回答 1

2
  1. 配置按钮以产生中断。

  2. 按照 FreeRTOS PIC32 端口的文档页面中的说明编写中断处理程序(请参阅下一页上的“中断服务例程”部分:http ://www.freertos.org/port_PIC32_MIPS_MK4.html )

  3. 按下按钮时,让中断服务程序执行您想要发生的任何事情。

如果您希望中断解除对任务的阻塞,则可以使用此页面上演示的任务通知:http ://www.freertos.org/RTOS-task-notifications.html或更准确地说是 http://www.freertos。 org/RTOS_Task_Notification_As_Binary_Semaphore.html

如果您使用的不是支持任务通知的 FreeRTOS 版本,那么您可以使用二进制信号量 - FreeRTOS.org 网站上也有相关文档。

于 2015-01-31T06:48:42.590 回答