中国高校课件下载中心 》 教学资源 》 大学文库

曲阜师范大学:物联网工程专业《嵌入式Linux开发技术》课程教学大纲

文档信息
资源类别:文库
文档格式:DOC
文档页数:7
文件大小:99KB
团购合买:点击进入团购
内容简介
曲阜师范大学:物联网工程专业《嵌入式Linux开发技术》课程教学大纲
刷新页面文档预览

“嵌入式Linux开发技术”课程教学大纲教研室主任:黄勇坚执笔人:黄勇坚一、课程基本信息开课单位:物理工程学院课程名称:嵌入式Linux开发技术课程编号:072511英文名称:EmbeddedTechnologyDevelopment课程类型:专业课总学时:88理论学时:72实验学时:16学分:4开设专业:物联网工程、通信工程专业(物联网方向)先修课程:C语言程序设计、Linux操作系统、单片机原理与应用二、课程任务目标(一)课程任务本课程是物联网工程专业的专业课。本课程主要讲授在嵌入式Linux系统开发过程中,从底层系统支持到上层GUI应用的各种技术。通过学习,使学生熟悉和应用嵌入式Linux操作系统的安装及相关工具的使用、配置,以及嵌入式Linux编程的方法。通过实践使学生掌握整个嵌入式Linux系统的开发方法。(二)课程目标在学完本课程之后,学生能够:1.掌握S3C2440A的GPIO、存储器控制器、UART等常用片内外设的原理及使用;2.掌握嵌入式Linux内核的裁剪、构建与移植;3.掌握在嵌入式Linux环境下的应用编程;4.掌握嵌入式系统接口与Linux驱动程序设计技术;5.了解嵌入式产品和嵌入式应用的技术原理和开发过程。三、教学内容和要求(一)理论教学的内容及要求第一章概述第一节嵌入式系统

“嵌入式 Linux 开发技术”课程教学大纲 教研室主任:黄勇坚 执笔人:黄勇坚 一、课程基本信息 开课单位:物理工程学院 课程名称:嵌入式 Linux 开发技术 课程编号:072511 英文名称:Embedded Technology Development 课程类型:专业课 总 学 时:88 理论学时:72 实验学时:16 学 分:4 开设专业:物联网工程、通信工程专业(物联网方向) 先修课程:C 语言程序设计、Linux 操作系统、单片机原理与应用 二、课程任务目标 (一)课程任务 本课程是物联网工程专业的专业课。本课程主要讲授在嵌入式 Linux 系统开发过程中,从底层 系统支持到上层 GUI 应用的各种技术。通过学习,使学生熟悉和应用嵌入式 Linux 操作系统的安装 及相关工具的使用、配置,以及嵌入式 Linux 编程的方法。通过实践使学生掌握整个嵌入式 Linux 系统的开发方法。 (二)课程目标 在学完本课程之后,学生能够: 1. 掌握 S3C2440A 的 GPIO、存储器控制器、UART 等常用片内外设的原理及使用; 2. 掌握嵌入式 Linux 内核的裁剪、构建与移植; 3. 掌握在嵌入式 Linux 环境下的应用编程; 4. 掌握嵌入式系统接口与 Linux 驱动程序设计技术; 5. 了解嵌入式产品和嵌入式应用的技术原理和开发过程。 三、教学内容和要求 (一)理论教学的内容及要求 第一章 概述 第一节 嵌入式系统

1.了解嵌入式系统的定义和特点。第二节嵌入式处理器1.了解ARM处理器的各版本。第三节嵌入式操作系统1.了解嵌入式Linux操作系统的特点。第四节嵌入式系统开发1.了解嵌入式开发的不同。第五节嵌入式开发环境1.了解嵌入式开发不同阶段开发环境的使用。重点:嵌入式系统的定义、特点及组成;嵌入式Linux操作系统的特点;嵌入式开发的不同;嵌入式开发不同阶段开发环境的使用。难点:嵌入式开发不同阶段开发环境的使用。第二章ARM基础开发第一节S3C2440概述1.了解S3C2440的内核架构。第二节编程基础1.掌握ARM编程基本指令和使用第三节时钟与电源1.掌握S3C2440的时钟和电源系统。第四节GPIO1.掌握S3C2440的GPIO的用法。第五节存储器控制器1.掌握S3C2440的存储器控制器原理。第六节异常系统1.掌握S3C2440的中断处理过程。第七节定时器1.掌握S3C2440的定时器的应用。第八节ADC和触摸屏1.掌握S3C2440的ADC的使用;2.了解触摸屏的原理。重点:S3C2440的内核架构:ARM编程基本指令和使用:GPIO的用法:存储器控制器原理;中断

1. 了解嵌入式系统的定义和特点。 第二节 嵌入式处理器 1. 了解 ARM 处理器的各版本。 第三节 嵌入式操作系统 1. 了解嵌入式 Linux 操作系统的特点。 第四节 嵌入式系统开发 1. 了解嵌入式开发的不同。 第五节 嵌入式开发环境 1. 了解嵌入式开发不同阶段开发环境的使用。 重点:嵌入式系统的定义、特点及组成;嵌入式 Linux 操作系统的特点;嵌入式开发的不同;嵌 入式开发不同阶段开发环境的使用。 难点:嵌入式开发不同阶段开发环境的使用。 第二章 ARM 基础开发 第一节 S3C2440 概述 1. 了解 S3C2440 的内核架构。 第二节 编程基础 1. 掌握 ARM 编程基本指令和使用 第三节 时钟与电源 1. 掌握 S3C2440 的时钟和电源系统。 第四节 GPIO 1. 掌握 S3C2440 的 GPIO 的用法。 第五节 存储器控制器 1. 掌握 S3C2440 的存储器控制器原理。 第六节 异常系统 1. 掌握 S3C2440 的中断处理过程。 第七节 定时器 1. 掌握 S3C2440 的定时器的应用。 第八节 ADC 和触摸屏 1. 掌握 S3C2440 的 ADC 的使用; 2. 了解触摸屏的原理。 重点:S3C2440 的内核架构;ARM 编程基本指令和使用;GPIO 的用法;存储器控制器原理;中断

处理过程。难点:ARM编程基本指令和使用:存储器控制器原理:中断处理过程。第三章ARM进阶开发第一节 Flash编程1.了解NORFLASH与NANDFLASH的原理及区别:2.掌握NANDFLASH的使用方法。第二节UART1.理解UART的特点及传送方式:2.了解UART的应用。第三节USB1.了解USB协议及分类;2.了解USB的应用。第四节DMA1.了解DMA的主要特性;2.了解DMA的应用。第五节LCD1.理解LCD显示器的接口及时序;2.了解LCD的应用。第六节MMU1.理解虚拟地址与物理地址的关系:2.了解MMU 的应用。重点:NANDFLASH操作:UART的应用:DMA的应用。难点:NANDFLASH操作。第四章系统构建第一节概述1.了解嵌入式Linux系统的主要构成。第二节交叉编译环境1.了解交叉编译环境的概念;2.掌握交叉编译环境的搭建。第三节Linux内核1.了解Linux内核的特点:

处理过程。 难点:ARM 编程基本指令和使用;存储器控制器原理;中断处理过程。 第三章 ARM 进阶开发 第一节 Flash 编程 1. 了解 NOR FLASH 与 NAND FLASH 的原理及区别; 2. 掌握 NAND FLASH 的使用方法。 第二节 UART 1. 理解 UART 的特点及传送方式; 2. 了解 UART 的应用。 第三节 USB 1. 了解 USB 协议及分类; 2. 了解 USB 的应用。 第四节 DMA 1. 了解 DMA 的主要特性; 2. 了解 DMA 的应用。 第五节 LCD 1. 理解 LCD 显示器的接口及时序; 2. 了解 LCD 的应用。 第六节 MMU 1. 理解虚拟地址与物理地址的关系; 2. 了解 MMU 的应用。 重点:NAND FLASH 操作;UART 的应用;DMA 的应用。 难点:NAND FLASH 操作。 第四章 系统构建 第一节 概述 1. 了解嵌入式 Linux 系统的主要构成。 第二节 交叉编译环境 1. 了解交叉编译环境的概念; 2. 掌握交叉编译环境的搭建。 第三节 Linux 内核 1. 了解 Linux 内核的特点;

2.了解Linux内核的结构。第四节内核编译配置1.了解内核配置系统的组成;2.掌握Linux内核的配置过程。第五节内核移植1.掌握Linux内核的移植过程。第六节构建根文件系统1.了解文件系统的概念及组成;2.了解busybox的使用;3.掌握构建Linux根文件系统的过程。第七节Linux内核启动分析1.掌握嵌入式Linux系统的启动过程。重点:构建交叉编译链;Linux内核组成:Linux内核移植;busybox构建根文件系统。难点:Linux内核移植:busybox构建根文件系统:Linux内核启动过程。第五章驱动移植第一节概述1.了解Linux系统设备的分类。第二节字符设备驱动程序1.了解字符设备的特点;2.了解字符设备相关数据结构和函数。第三节块设备驱动程序1.了解块设备的特点。第四节网络设备驱动程序1.了解网络设备的特点;2.掌握设备驱动程序的开发移植过程。重点:Linux系统设备的分类:字符设备驱动程序设计:网络设备驱动程序移植。难点:网络设备驱动程序移植。第六章应用编程第一节概述1.了解应用程序与内核的调用关系。第二节文件I/0编程

2. 了解 Linux 内核的结构。 第四节 内核编译配置 1. 了解内核配置系统的组成; 2. 掌握 Linux 内核的配置过程。 第五节 内核移植 1. 掌握 Linux 内核的移植过程。 第六节 构建根文件系统 1. 了解文件系统的概念及组成; 2. 了解 busybox 的使用; 3. 掌握构建 Linux 根文件系统的过程。 第七节 Linux 内核启动分析 1. 掌握嵌入式 Linux 系统的启动过程。 重点:构建交叉编译链;Linux 内核组成;Linux 内核移植;busybox 构建根文件系统。 难点:Linux 内核移植;busybox 构建根文件系统;Linux 内核启动过程。 第五章 驱动移植 第一节 概述 1. 了解 Linux 系统设备的分类。 第二节 字符设备驱动程序 1. 了解字符设备的特点; 2. 了解字符设备相关数据结构和函数。 第三节 块设备驱动程序 1. 了解块设备的特点。 第四节 网络设备驱动程序 1. 了解网络设备的特点; 2. 掌握设备驱动程序的开发移植过程。 重点:Linux 系统设备的分类;字符设备驱动程序设计;网络设备驱动程序移植。 难点:网络设备驱动程序移植。 第六章 应用编程 第一节 概述 1. 了解应用程序与内核的调用关系。 第二节 文件 I/O 编程

1.掌握文件1/0的常用函数的使用。第三节进程1.了解进程的创建及管理;2.了解多进程间的通信方式;3.了解管道、信号、信号量、共享内存的应用。第四节线程1.掌握线程的创建及多线程的管理。2.理解线程的同步与互斥。第五节网络编程1.了解UDPTCP/IP协议2.掌握SOCKET套接字的使用。重点:文件I/O的常用函数的使用:进程的创建及管理;进程间通信方式的使用:线程的创建及管理;线程的同步与互斥;Linux下的网络编程。难点:线程的同步与互斥:Linux下的网络编程。第七章GUI程序设计第一节图形用户界面1.了解图形用户界面的基本概念及特征。第二节Qt/Embedded开发平台的搭建1.掌握Qt/Embedded开发平台的搭建。第三节QtCreator程序开发流程1.了解QtCreator图形界面设计程序的开发。第四节程序框架类1.了解Qt基本的程序框架类。第五节信号与槽机制1.了解QtSignal/Slot机制的原理及应用。第六节常用窗口部件1..了解Qt基本控件和功能类的应用。重点:Qt/Embedded开发平台的搭建:Qt基本的程序框架类:QtSignal/Slot机制的原理及应用。难点:Qt/Embedded开发平台的搭建;Qt基本的程序框架类:QtSignal/Slot机制的原理及应用

1. 掌握文件 I/O 的常用函数的使用。 第三节 进程 1. 了解进程的创建及管理; 2. 了解多进程间的通信方式; 3. 了解管道、信号、信号量、共享内存的应用。 第四节 线程 1. 掌握线程的创建及多线程的管理。 2. 理解线程的同步与互斥。 第五节 网络编程 1. 了解 UDP TCP/IP 协议; 2. 掌握 SOCKET 套接字的使用。 重点:文件 I/O 的常用函数的使用;进程的创建及管理;进程间通信方式的使用;线程的创建及 管理;线程的同步与互斥;Linux 下的网络编程。 难点:线程的同步与互斥;Linux 下的网络编程。 第七章 GUI 程序设计 第一节 图形用户界面 1. 了解图形用户界面的基本概念及特征。 第二节 Qt/Embedded 开发平台的搭建 1. 掌握 Qt/Embedded 开发平台的搭建。 第三节 Qt Creator 程序开发流程 1. 了解 Qt Creator 图形界面设计程序的开发。 第四节 程序框架类 1. 了解 Qt 基本的程序框架类。 第五节 信号与槽机制 1. 了解 Qt Signal/Slot 机制的原理及应用。 第六节 常用窗口部件 1. 了解 Qt 基本控件和功能类的应用。 重点:Qt/Embedded 开发平台的搭建;Qt 基本的程序框架类;Qt Signal/Slot 机制的原理及应 用。 难点:Qt/Embedded 开发平台的搭建;Qt 基本的程序框架类;Qt Signal/Slot 机制的原理及应 用

(二)实践教学的内容及要求1.开发软件的安装与使用掌握RealvieWMDK-ARM、JLINK驱动等开发软件的安装:掌握S3C2440内部相关寄存器的操作方法,最终实现对外部设备的控制:熟练掌握在ARM裸机环境下的C语言编程。2.按键与蜂鸣器控制实验通过对S3C2440的寄存器的配置,掌握对外设进行控制的方法;熟悉C语言裸机编程。3.AD转换实验理解AD转换原理;掌握s3c2440A的内部ADC控制器的编程方法。4.串口通信实验掌握ARM处理器的串行通信原理;通过编程,实现开发板与PC机之间的串行收发数据。5.NANDFLASH编程实验掌握NandFLASH工作原理;掌握S3C2440A对K9F2G08UOBNandFLASH的编程。6.中断实验理解中断的实质;学习ARM9中断处理过程,掌握中断程序的编写。7.linux内核移植及烧写实验了解交叉编译及交叉编译器:掌握交叉编译工具的安装和使用:掌握内核编译方法及过程:掌握Linux内核的烧写方法。8.根文件系统构建及烧写实验了解文件系统;掌握文件系统制作方法;掌握文件系统的烧写方法。四、学时分配各教学环节学时分配章次上小讲实习讨课备注计验机题论外授2第一章:概述682028第二章:ARM基础开发14122第三章:ARM进阶开发128第四章:系统构建88第五章:驱动移植1212第六章:应用编程88第七章:GUI程序设计合计887216

(二)实践教学的内容及要求 1. 开发软件的安装与使用 掌握 Realview MDK-ARM、JLINK 驱动等开发软件的安装;掌握 S3C2440 内部相关寄存器的操 作方法,最终实现对外部设备的控制;熟练掌握在 ARM 裸机环境下的 C 语言编程。 2. 按键与蜂鸣器控制实验 通过对 S3C2440 的寄存器的配置,掌握对外设进行控制的方法;熟悉 C 语言裸机编程。 3. AD 转换实验 理解 AD 转换原理;掌握 s3c2440A 的内部 ADC 控制器的编程方法。 4. 串口通信实验 掌握 ARM 处理器的串行通信原理;通过编程,实现开发板与 PC 机之间的串行收发数据。 5. NAND FLASH 编程实验 掌握 Nand FLASH 工作原理;掌握 S3C2440A 对 K9F2G08U0B Nand FLASH 的编程。 6. 中断实验 理解中断的实质;学习 ARM9 中断处理过程,掌握中断程序的编写。 7. linux 内核移植及烧写实验 了解交叉编译及交叉编译器;掌握交叉编译工具的安装和使用;掌握内核编译方法及过程;掌 握 Linux 内核的烧写方法。 8. 根文件系统构建及烧写实验 了解文件系统;掌握文件系统制作方法;掌握文件系统的烧写方法。 四、学时分配 章 次 各教学环节学时分配 小 计 讲 授 实 验 上 机 习 题 讨 论 课 外 备 注 第一章:概述 6 4 2 第二章:ARM 基础开发 28 20 8 第三章:ARM 进阶开发 14 12 2 第四章:系统构建 12 8 4 第五章:驱动移植 8 8 第六章:应用编程 12 12 第七章:GUI 程序设计 8 8 合 计 88 72 16

五、考核说明课程考核方法:闭卷考试。课程成绩评定方法:总成绩包括平时成绩、实验成绩和期末成绩三部分,其中平时成绩占比10%实验成绩占比30%,期末成绩占比60%。六、主要教材及教学参考书目(一)主要教材1:青岛东合信息技术有限公司著《嵌入式Linux开发技术及实践》,西安电子科技大学出版社2014年。(二)主要参考书目毛德操,《Linux内核源代码情景分析》,浙江大学出版社,2001年。1.2.杜春雷,《ARM体系结构与编程》,清华大学出版社,2003年。3.韦东山,《嵌入式Linux应用开发一完全手册》,人民邮电出版社,2008年

五、考核说明 课程考核方法:闭卷考试。 课程成绩评定方法:总成绩包括平时成绩、实验成绩和期末成绩三部分,其中平时成绩占比 10%, 实验成绩占比 30%,期末成绩占比 60%。 六、主要教材及教学参考书目 (一)主要教材 1.青岛东合信息技术有限公司 著《嵌入式 Linux 开发技术及实践》,西安电子科技大学出版社, 2014 年。 (二)主要参考书目 1. 毛德操,《Linux 内核源代码情景分析》,浙江大学出版社,2001 年。 2. 杜春雷,《ARM 体系结构与编程》,清华大学出版社,2003 年。 3. 韦东山,《嵌入式 Linux 应用开发—完全手册》,人民邮电出版社,2008 年

已到末页,全文结束
刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档