摘要:
RTOS中断处理Interrupt Handling 在RTOS中使用信号来触发线程间的行为是比较简单和高效的,而对于Cortex-M微控制器来讲,从中断源获取信号来触发线程同样是一种重要的方式。虽然在中断服务程序ISR中运行一段代码也可以,但在RTOS系统中,在中断运行的时间越短越好,因为太长的时 阅读全文
posted @ 2018-08-28 12:42
小时候挺菜
阅读(810)
评论(0)
推荐(0)
摘要:
信号量Semaphores 和信号类似,信号量也是一种同步多个线程的方式,简单来讲,信号量就是装有一些令牌的容器。当一个线程在执行过程中,就可能遇到一个系统调用来获取信号量令牌,如果这个信号量包含多个令牌,线程就会继续执行,同时信号量令牌的数量就会减一。如果此时信号量中没有令牌,线程就会被置于等待状 阅读全文
posted @ 2018-08-28 12:42
小时候挺菜
阅读(815)
评论(0)
推荐(0)
摘要:
虚拟定时器Virtual Timers CMSIS-RTOS API里有几个向下计数的虚拟定时器,它们实现计数完成时用户的回调功能。每个定时器都可以配置成单次计数或重复计数模式,它们可以在定义定时器结构体的时候被创建: 在上面的代码中给定时器定义了一个名字timer0,并同时定义了回调函数led_f 阅读全文
posted @ 2018-08-28 11:58
小时候挺菜
阅读(893)
评论(0)
推荐(0)
摘要:
时间管理 Time Management 此RTOS除了可以把你的应用代码作为线程运行,它还可以提供一些时间服务功能,使用这些功能你就可以访问RTOS的一些系统调用。 时间延迟Time Delay 在所有的时间服务功能中,最基本的一个就是延时函数。它可以在你的应用中提供非常简单易用的延时功能。也许你 阅读全文
posted @ 2018-08-28 11:57
小时候挺菜
阅读(2947)
评论(0)
推荐(0)
摘要:
创建线程Creating Threads 一旦RTOS开始运行,就会有很多系统调用来管理和控制活跃的线程。默认情况下,main()函数自动被创建为第一个可运行的线程。在第一个例子里我们使用main()函数创建了其他线程,并且随后让main()结束运行。然而我们还可以让main当成一个真正的threa 阅读全文
posted @ 2018-08-28 11:56
小时候挺菜
阅读(12505)
评论(0)
推荐(2)
浙公网安备 33010602011771号