logo资料库

Linux移植及驱动应用程序课程设计任务书.docx

第1页 / 共41页
第2页 / 共41页
第3页 / 共41页
第4页 / 共41页
第5页 / 共41页
第6页 / 共41页
第7页 / 共41页
第8页 / 共41页
资料共41页,剩余部分请下载后查看
第1章 前言
1.1 编写目的
1.2 任务概述
第2章 需求规格说明
2.1 运行环境规定
2.2 对功能的规定
2.3 输入输出要求
2.4 外部接口需求
第3章 开发环境搭建
3.1 Windows开发环境搭建
3.2 Linux开发环境搭建
3.3 Linux交叉开发环境搭建
第4章 Linux系统移植
4.1 引导程序的移植
4.2 Linux内核的移植
4.3 Linux文件系统移植
第5章 系统设计
5.1 硬件概略图
5.2 程序结构
5.3 模块函数设计
5.3.1中断处理函数
第6章 编码与实现
6.1 LED驱动
6.2 蜂鸣器驱动
6.3 按键驱动
6.4 报警驱动应用程序
第7章 系统测试用例
7.1 按键驱动测试用例
结论
参考文献
附录 程序源代码
长 沙 学 院 课 程 设 计 说 明 书 题 学 目 Linux 移植及驱动应用程序 院 计算机工程与应用数学 专 业 ( 班 级 ) 姓 学 名 号 指 导 教 师 起 止 日 期 2019.5.27~2019.6.7
课程设计任务书 课程名称:操作系统原理课程设计 设计题目:Linux 移植及驱动应用程序 已知技术参数和设计要求 1. 问题描述(功能要求) 物联网设备报警功能有很多应用场合,如野外现场监控报警、视频监控报警、设备异常报警等等。 本课题任务是移植安装 Linux 操作系统,开发 LED 或蜂鸣器报警应用设备的驱动程序及其应用程序。要 求完成的任务和实现的功能有: (1) 以 FS4412 开发板为开发平台,移植 Linux 操作系统,含引导程序、Linux 操作系统内核、文 件系统。具体任务有搭建嵌入式 Linux 开发环境、编译 Bootloader、裁剪和编译 Linux 内核、制作和 挂载 NFS 文件系统。 (2) 开发 Linux 按键驱动程序,驱动开发板上三个按键。 (3) 开发 LED 驱动程序或者 PWM 驱动程序。要求 LED 驱动程序能驱动开发板上 4 个 LED,能接收应 用程序控制参数选择 LED、变换 LED 工作模式。PWM 驱动程序能驱动蜂鸣器发声。 (4) 开发 Linux 驱动应用程序,根据控制数据或按键数据控制 LED 或蜂鸣器工作。 2. 运行环境要求 微型计算机:启天 M4500-D600。 Microsoft Windows 7 x64 操作系统 华清远见 FS4412 嵌入式 ARM9 开发板。 3. 技术要求 (1) 移植的 Linux 操作系统版本不低于 Ubuntu 12.04。 (2) Linux 内核需自己配置和编译。 (3) 控制数据以文本文件形式存储,驱动应用程序读取该文件进行控制。 (4) LED 驱动和 PWD 驱动可二选其一。 (5) 要求 LED 至少有 3 种显示方式,具体方式自行设计,此处不做统一规定。 (6) 要求蜂鸣器至少两种鸣叫方式,具体方式自行设计,此处不做统一规定。 设计工作量 40 课时 工作计划 1. 班级 2. 课时及教室安排
课题任务与开发环境:2 课时,致远楼 1301 ARM9 接口编程:4 课时,致远楼 1301 引导程序移植:2 课时,致远楼 1301 Linux 系统移植:4 课时,致远楼 1301 文件系统构建:2 课时,致远楼 1301 驱动程序开发:16 课时,致远楼 1301 应用程序开发:4 课时,致远楼 1301 系统测试:2 课时,致远楼 1301 文档撰写:2 课时,致远楼 1301 检查与答辩:2 课时,致远楼 1301 详细安排请参看“操作系统原理课程设计指导课表”。 注意事项 ■提交文档  长沙学院课程设计任务书 (每学生 1 份)  长沙学院课程设计说明书 (每学生 1 份)  长沙学院课程设计鉴定表 (每学生 1 份) 指导教师签名: 教研室主任签名: 院长签名: 日期: 日期: 日期:
摘要 本实验基于 FS4412 开发板实现课程设计,完成对开发板移植 Linux 操作系统,烧录 引导程序、安装 Linux 操作系统内核、文件系统的操作。具体完成搭建嵌入式 Linux 开发 环境、编译 Bootloader、裁剪和编译 Linux 内核、制作和挂载 NFS 文件系统。 基于以上基础,再去编写 Linux 按键驱动程序,驱动开发板上三个按键。编写 LED 驱 动程序,驱动开发板上 4 个 LED。编写 PWM 驱动程序,驱动蜂鸣器发声。最后设计 Linux 驱动应用程序,实现开发板能接收应用程序控制参数,完成控制 LED 亮灭和蜂鸣器工作。 关键词:FS4412, Linux,驱动程序
目录 第 1 章 前言 ...........................................................................................................................................................1 1.1 编写目的 .................................................................................................................................................1 1.2 任务概述 .................................................................................................................................................1 第 2 章 需求规格说明 ...........................................................................................................................................1 2.1 运行环境规定 ........................................................................................................................................ 1 2.2 对功能的规定 ........................................................................................................................................ 2 2.3 输入输出要求 ........................................................................................................................................ 3 2.4 外部接口需求 ........................................................................................................................................ 3 第 3 章 开发环境搭建 ...........................................................................................................................................6 3.1 Windows 开发环境搭建 ......................................................................................................................... 6 3.2 Linux 开发环境搭建 ............................................................................................................................. 6 3.3 Linux 交叉开发环境搭建 ..................................................................................................................... 6 第 4 章 Linux 系统移植 ....................................................................................................................................... 7 4.1 引导程序的移植.................................................................................................................................... 7 4.2 Linux 内核的移植 ................................................................................................................................. 7 4.3 Linux 文件系统移植 ............................................................................................................................. 8 第 5 章 系统设计 ...................................................................................................................................................9 5.1 硬件概略图.............................................................................................................................................9 5.2 程序结构 ...............................................................................................................................................10 5.3 模块函数设计 .......................................................................................................................................11 5.3.1 中断处理函数 ....................................................................................................................................11 第 6 章 编码与实现 .............................................................................................................................................14 6.1 LED 驱动 ................................................................................................................................................14 6.2 蜂鸣器驱动...........................................................................................................................................16 6.3 按键驱动 ...............................................................................................................................................19 6.4 报警驱动应用程序 .............................................................................................................................. 22 第 7 章 系统测试用例 ........................................................................................................................................ 23 7.1 按键驱动测试用例 .............................................................................................................................. 23 结论 .......................................................................................................................................................................24 参考文献 ...............................................................................................................................................................25 附录 程序源代码.................................................................................................................................................26
第 1 章 前言 1.1 编写目的 需求规格说明书是系统设计的开端,一份好的需求规格说明书能在编写项目策划、概 要设计和详细设计等文档是起到龙头的作用,同时也是编写测试用例和进行系统测试的关 键性依据。本文档是对 Linux 移植及驱动应用程序的指导性文档,该文档明确对 Linux 移 植及驱动应用程序的需求和支持项目的阅读,此文档的主要功能就是详细的说明本次设计 的内容、开发的环境、预期的结果等。适用于本系统的设计人员和开发人员。 1.2 任务概述 物联网设备报警功能有很多应用场合,如野外现场监控报警、视频监控报警、设备异 常报警等等。本系统目标是开发 LED 报警或蜂鸣器报警应用设备的驱动程序。适用于物联 网设备的报警应用。完成系统移植和报警驱动程序的开发。 本系统基于 Linux 操作系统,通过移植到开发板上搭建嵌入式的 Linux 开发环境编译 Bootloader、裁剪和编译 Linux 内核、制作和并挂载 NFS 文件系统。本系统由 Linux 系统 移植到 FS4412 开发板上使用。 第 2 章 需求规格说明 2.1 运行环境规定 2.1.1 设备 列出运行该系统所需要的硬件设备。包括:设备名称与型号、数量;处理器型号、内 存容量、外存容量、输入输入出接口等。 微型计算机:启天 M4500-D600。 Microsoft Windows 7 x64 操作系统 华清远见 FS4412 嵌入式 ARM9 开发板 8KB 内存 2.1.2 支持软件 1
列出支持软件,包括要用到的操作系统、编译程序、测试支持软件等。 Linux 操作系统 Ubuntu 12.0.4 Microsoft Windows 7 x64 操作系统 Linux 编译器:gcc 串口调试工具:PUTTY.exe Window 驱动:Fastboot、USB to UART CH340 2.2 对功能的规定 如表 2.1 所示。 表 2.1 系统功能表 功能名称 用户 功能描述 输入 系统响应 输出 Linux 移植 管理员 将 Linux 系 统移植到目 标开发板 LED 驱动程 序 管理员 开发板启动 led 灯点亮 ls /dev 无 dev 文件下的设备目 录 无 无 Led 灯点亮 编 号 0 1 2 按键驱动 管理员 按键控制 按键按下 无 Led 灯点亮或蜂鸣器 响起 程序 led 灯的亮 灭和蜂鸣器 3 蜂鸣器驱 动程序 管理员 开发板启动 蜂鸣器响起 无 无 蜂鸣器响起 Linux 系统移植:将 Linux 系统通过烧写移植到 FS4412 型号开发板,实现小型计算机 功能,并能够挂载文件系统和编译内核文件。 LED 驱动程序:将在 Linux 环境下编译完成的程序烧录到开发板,使开发板完成 LED 灯亮灭的基本功能。 蜂鸣器驱动程序:将在 Linux 环境下编译完成的程序烧录到开发板,使开发板完成蜂 鸣器响和停的基本功能。 按键驱动程序:结合 LED 和蜂鸣器驱动,利用按键控制 LED 和蜂鸣器,完成按键 1 按 下 LED 灯的亮灭控制,按键 2 按下蜂鸣器响或停的控制。 2
2.3 输入输出要求 说明程序需处理的数据实体及其属性,数据名称,数据格式,数据结构,数据取值范 围,数据存储要求,数据处理过程。表格说明示例如表 2.2 所示。 属性名称 类型 长度 取值范围 精度 是否为空 唯一标识 说明 表 2.2 数据实体名称 ret key_flag keyval major minor devno int int int int int int 8 8 8 8 8 8 所有数值 低 0/1 -1/1/2 0-260 0-260 0-260 低 低 低 低 低 否 否 否 否 否 否 是 是 是 是 是 是 函数返回值 标志 按键标志 主设备号 次设备号 通过 major 和 minor 构 建设备号 2.4 外部接口需求 2.4.1 用户界面 界面的原则要求,如方便、简洁、美观、一致等。整个系统的界面风格定义,某些功 能模块的特殊的界面要求。 (1)输入设备:按键、电源开关; (2)输出设备:LCD 显示器、LED 指示灯、蜂鸣器; (3)显示风格:字符界面、菜单导航方式; (4)显示方式:1024*768、640*480 等; (5)输出格式:显示布局、打印格式由设计者确定,以尽可能在一屏显示更多信息 为原则。系统要求显示设备状态信息、环境信息、文件目录信息、终端信息。 3
分享到:
收藏