环境为win keil,主要完成进程调度功能,同时引入小型FS,使用方法参考main.c。
进程调度
- 建立位就序表,就绪任务的位为1,可通过轮询获得最高优先级,数字越小,优先级越高
- 延时函数会挂起任务,延时计数设定,就绪表该位置零。
- 定时器中断,挂起的每个任务的延时计数变化
- 当所有任务不再运行时,所以我们需要创建一个空闲任务,当CPU没有东西可以运行时,运行空闲任务,优先级最低
FS
- 包括目录和文件,每种类型占用SD卡一个盘块的空间
- 第一个盘块存着每个盘块的使用情况
- 目录项,包括目录项数目和一个结构体数组:包括文件名,文件类型和FCB盘块
- FCB项,包括数据的起始盘块,盘块数目,已写入文件大小,读指针
- 文件项,实际的文件存储