|
第八集 定时器周期性调度任务 1、 周期性任务介绍 数组的使用 (1)定义:类型 名称[长度] = { 数值 }; (2)使用:赋值:名称[索引] = 数值 For语句的使用 任务1:用一个定时器实现这个任务。LED1实现0.3秒取反一次,LED2实现0.6秒取反一次,LED3 0.9秒取反一次 注意:通过一个变量计数,假设这个变量1ms自加一次,加到300即为300ms,加到600就是600ms;计数到达后重新清0。 任务2:数组点亮LED,实现流水灯 注意:LED是0点亮,1熄灭;数组长度需要把握好;流水灯移动的时间。 任务3:按键1按一下,LED通过数组移动一下。 注意:按键不能在通过while判断是否按下松开了;可以通过按键按下计数。检测到按键连续按下,按键计数变量+1,只要松开一下,计数清0,计数累积到50ms的时候判定为按下。 实现串口打印+按键切换+LED指示任务,同时独立进行 2、 文件的创建(.c和.h) 创建程序文件三步,把硬件需要的初始化弄一个config.c (1)新建文件并保存 (2)添加到工程 (3)添加引用路径 .h文件创建格式:方框里是文件名称(__XXX_H) .c文件创建格式: #include “xxx.h” 函数定义 添加文件一定要记得引用新的文件夹路径和添加到工程里。可以将主程序、功能程序、IO口任务程序分开放入不同的.c.h文件中,在需要使用时调用。 3、结构体的介绍 4、结构体数据的周期性任务调度 任务4:按键1按一下,LED通过数组移动一下,用虚拟LED显示; 定时器驱动的多任务单独运行
第八集定时器周期性调度任务.zip
(138.28 KB, 下载次数: 0)
|