板子的基本外设差不多都跑了一遍例程,也都了解了一下。
接下来就是应用层上的例程了,先看看比较流行的FreeRTOS系统。
从main函数开始,可以看到,在初始化了系统之后,对两个LED进行了设置。
LED1、LED3,的定义可以看stm32469i_discovery.h中
之后就是FreeRTOS的函数了。
第一个就是osThreadDef函数。
它是定义任务的一个函数,只是定义,而没有创建任务。
第1个参数是任务名。
第2个参数是任务的函数名,也是任务的主体部分。
它就是一个函数的函数名。如下:
第3个参数是任务的优先级。
第4个参数是任务的实例数。
第5个参数是任务分配的栈大小。
之后就是创建真实的任务了。
使用的是osThreadCreate函数
第1个参数是指向任务的指针。与上一个函数定义的任务是对应的名字。
第2个参数是向任务传递的参数,这里是NULL,不传递任何参数。
最后,就是打开系统内核了。
打开后,系统会根据之前创建的任务进行自动的任务调度。
会看到两个LED灯以不同的闪烁频率在闪烁。
|