项目简介
本项目主要包含两部分。一部分是基于C语言和嵌入式系统构建的实时操作系统(RTOS)调度器,能实现简单的任务调度,管理实时系统里多个任务的执行顺序与时间。另一部分是自动门锁控制系统,借助AVR atmega32等硬件完成门锁控制,具备密码管理、错误尝试处理等功能。
项目的主要特性和功能
实时操作系统调度器
- 支持多任务创建与管理,可设置任务优先级、周期性、初次延迟和任务函数。
- 有任务调度器函数,依据任务优先级和周期性执行任务。
- 支持初次延迟和周期性执行任务,保证任务按设定时间策略运行。
- 用定时器触发调度器函数,实现基于时间的任务调度。
- 提供基础数字输入输出(DIO)功能,控制硬件端口引脚状态。
- 提供全局中断(GI)管理功能,控制中断的启用和禁用。
自动门锁控制系统
- 首次启动默认密码为 00000。
- 可输入 5 位密码并按“+”键更改密码。
- 密码输入错误时,有 3 次尝试机会。
- 3 次尝试失败后,警报开启 5 分钟,随后系统重置。
- 输入 5 位密码并按“C”键开门。
安装使用步骤
实时操作系统调度器
- 下载项目源代码文件。
- 依据项目目录结构,了解各文件功能与依赖关系。
- 通过代码注释和函数名称,明确每个函数用途和参数。
- 根据项目需求,修改配置任务相关参数,如优先级、周期性、任务函数等。
- 编译并运行项目,观察任务调度器工作情况以及LED灯等硬件设备状态变化。
自动门锁控制系统
- 确保硬件连接正确,涉及AVR atmega32、LCD 20x4、伺服电机SG - 90、4x4键盘、红色LED、蜂鸣器、外部EEPROM等。
- 下载项目源代码文件并烧录到AVR atmega32中。
- 首次启动后,可用默认密码 00000 操作,也可按系统提示更改密码。
- 按系统提示输入密码进行开门或修改密码等操作。
注意事项
- 两个子项目代码基于嵌入式系统和实时操作系统,需特定硬件平台运行。
- 代码使用了位操作和硬件寄存器操作,要确保硬件平台支持。
- 对于具体硬件平台,可能需根据平台特性修改适配代码。
- 项目涉及全局中断和硬件端口操作,需在正确上下文和时机进行。
- 调度器基于时间片轮转调度,对实时性要求高的任务,可能需考虑其他调度策略。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】