嵌入式系统教案李震.docx
《嵌入式系统教案李震.docx》由会员分享,可在线阅读,更多相关《嵌入式系统教案李震.docx(11页珍藏版)》请在冰豆网上搜索。
嵌入式系统教案李震
嵌入式系统教案
教材:
《ARM9嵌入式系统设计—基于S3C2410与Linux(第二版)》,徐英慧,马忠梅,王磊,王琳编著,北京航空航天大学出版社
课时分配:
理论课32学时,实验课8学时,共40学时
第1章嵌入式系统基础
一、教学目的:
介绍嵌入式系统的基本概念,包括嵌入式系统的概念、特点及应用,由本章了解嵌入式系统的基础知识,掌握嵌入式的发展方向。
学时分配:
2学时
二、教学重点:
实时操作系统的多任务内核,实时操作系统的任务管理机制
三、教学难点:
理解和掌握嵌入式系统中任务间采用的共享数据结构和消息机制等两种通信方式,嵌入式系统的优先级继承,抢占式调度和非抢占式调度间的区别。
四、教学方法:
课题讲授及嵌入式系统在精细农业中的应用实例演示
五、教学过程设计:
(2学时)
一、嵌入式系统概念
(一)嵌入式系统的定义
(二)嵌入式系统的组成
(三)嵌入式系统的特点
(四)嵌入式系统的应用
(五)实时系统
二、嵌入式处理器
(一)嵌入式处理器分类
(二)微控制器的定义及特点
(三)嵌入式微处理器的定义及特点,介绍主流的微处理器,包括ARM、MIPS、MC68K、PowerPC、X86微处理器等。
(四)DSP处理器的定义及特点
(五)片上系统的定义及特点
(六)典型的嵌入式处理器
三、嵌入式操作系统
(一)操作系统的概念和分类
(二)实时操作系统
(三)常见的嵌入式操作系统
四、实时操作系统的内核
(一)任务管理
(二)任务间的通信和同步
(三)存储器管理
(四)定时器和中断管理
五、嵌入式技术发展现状及趋势
六、思考题
1、什么是嵌入式系统?
它由哪几部分组成?
(作业)
2、嵌入式系统有何特点?
(作业)
3、嵌入式处理器分为哪几类?
4、ARM英文原意是什么?
它是一个怎样的公司?
其处理器有何特点?
5、什么事实时系统?
实时系统有何特点?
如何划分?
6、实时操作系统常用的任务调度算法有哪几种?
第2章嵌入式系统开发过程
一、教学目的:
介绍嵌入式软件的开发过程和调试手段,使学生了解嵌入式软件与普通计算机软件在开发和调试上的区别。
学时分配:
2学时
二、教学重点:
嵌入式系统与通用计算机在人机交互界面、有限功能及时间关键性和稳定性方面的区别,板级支持包的定义及其作用,嵌入式系统软件的调试方式。
三、教学难点:
嵌入式应用软件开发所使用的交叉开发环境的定义,嵌入式开发时宿主机和目标机间的区别及其协调工作关系。
四、教学方法:
课题讲授及实例演示,采用多媒体教学方法,利用Powerpoint将本节课的关键内容归类,并通过Internet收集相关的资料融入教学内容中。
五、教学过程设计:
(2学时)
一、嵌入式软件开发的特点
二、嵌入式软件的开发流程
三、嵌入式系统的调试
四、板级支持包
六、思考题
1、嵌入式系统开发分为哪几个阶段?
每个阶段的特点是什么?
2、嵌入式系统有哪几种调试方式?
现在最流行的是哪种?
使用什么接口?
3、什么是板级支持包?
它一般完成什么工作?
(作业)
第3章ARM体系结构
一、教学目的:
介绍ARM的体系结构,主要包括ARM体系结构的特点,ARM处理器的结构和分类,ARM存储器及存储器说明,ARM的编程模型,ARM指令集,主要包括ARM指令集的分类、ARM和Thumb指令集。
学时分配:
10学时
二、教学重点:
ARM体系结构的特点,ARM中ALU的基本结构、ALU的时序、桶形移位寄存器的工作过程、高速乘法器的实现原理、ARM的寄存器组织形式,ARM的9种基本寻址方式,ARM指令集的四大类指令及伪指令。
三、教学难点:
理解和掌握7种工作模式下ARM31个通用寄存器的分组和使用方式,理解和熟练使用ARM指令集中四大类指令的符号及调用格式。
四、教学方法:
课题讲授及例程解析,采用多媒体教学方法,利用Powerpoint将本节课的关键内容归类,并通过Internet收集相关的资料融入教学内容中。
五、教学过程设计:
一、arm体系结构概述(2学时)
(一)arm体系结构的特点
(二)arm处理器结构
(三)arm处理器内核
(四)arm处理器核
二、编程模型(2学时)
(一)数据类型
(二)处理器模式
(三)处理器工作状态
(四)寄存器组织
(五)异常
(六)存储器和存储器映射i/o
三、arm基本寻址方式(2学时)
四、arm指令集(4学时)
(一)条件执行
(二)指令分类说明
(三)thumb指令集与arm指令集的区别
(四)thumb指令分类说明
六、思考题
1、ARM7和ARM9在流水线设计方面有何不同?
ARM9处理器有和特点?
2、ARM处理器支持的数据类型有哪些?
3、写出ARM使用的各种工作模式和工作状态
4、ARM处理器总共有多少个寄存器?
其中哪个用过PC?
哪个用过LR?
5、ARM920T处理器加入了哪两个协处理器?
各自的主要功能是什么?
6、ARM920T支持哪些时钟模式?
7、简述ARM的CPSR寄存器中各位的作用。
(作业)
第4章ARM系统硬件设计基础
一、教学目的:
介绍ARM系统硬件设计的基础知识,包括ADS集成开发环境,对ARM的汇编程序设计和混合编程以及ARM硬件启动程序设计。
学时分配:
8学时,其中6个理论学时,2个实验学时
二、教学重点:
基于ARM的汇编语言程序设计,包括ARM汇编器支持的伪指令、基于ARM的汇编语言语句格式和ARM汇编语言程序的基本结构等。
基于ARM的C语言与汇编语言混合编程,包括C语言与汇编语言混合编程应遵守的规则和C语言与汇编语言之间的相互调用与混合使用方法。
三、教学难点:
理解和掌握ARM汇编器支持的伪指令及其使用方式、基于ARM的汇编语言语句格式和ARM汇编语言程序的基本结构等。
四、教学方法:
课题讲授、例程解析与上机实验相结合,采用多媒体教学方法,利用Powerpoint将本节课的关键内容归类,在课堂上对ARM的汇编语言进行讲解的同时布置相关练习,加深学生对ARM汇编语言的理解,利用上机实验的方法使学生加深对ARM开发环境ADS的了解。
五、教学过程设计:
一、ARM开发环境简介(0.5学时)
(一)RealViewMDK开发工具简介
(二)IAREWARM集成开发环境简介
二、基于ARM的汇编语言程序设计(1.5学时)
(一)ARM汇编器支持的伪指令
(二)基于ARM的汇编语言语句格式
(三)ARM汇编语言程序的基本结构
(四)基于ARM的汇编语言程序举例
三、基于ARM的硬件启动程序设计(2学时)
(一)分配中断向量表
(二)初始化存储系统
(三)初始化堆栈
(四)初始化有特殊要求的硬件模块
(五)初始化应用程序执行环境
(六)改变处理器模式
(七)调用主应用程序
四、基于ARM的C语言与汇编语言混合编程(2学时)
(一)C语言与汇编语言混合编程应遵守的规则
(二)汇编程序调用C程序的方法
(三)C程序调用汇编程序的方法
(四)C程序中内嵌汇编语句
(五)基于ARM的C语言与汇编语言混合编程举例
五、上机实验:
ADS1.2嵌入式系统开发环境(2学时)
六、思考题
1、基于ARM的硬件启动程序应该包含哪些工作?
2、简述C语言与汇编语言混合编程时应该遵循的参数传递规则。
3、C程序中内嵌ARM汇编语句的格式是怎样的?
应该注意哪些内容?
4、C语言中如何内嵌汇编实现对链表的简单操作?
5、ARM启动程序中如何设置中断向量?
如何初始化堆栈和寄存器?
6、在对ARM集成开发环境进行设置时如何设置ARM内核和内存地址范围?
第5章基于S3C2410的系统硬件设计
一、教学目的:
介绍S3C2410系统的硬件设计,分别介绍I/O口、中断、DMA、UART、A/D接口、键盘、LCD、触摸屏、音频及USB设备的硬件设计要点等。
学时分配:
10学时,其中6个理论学时,4个实验学时
二、教学重点:
S3c2410A的I/O口工作原理,ARM的中断原理及S3c2410A的中断控制器,UART的工作原理,A/D接口原理以及LCD显示原理等。
三、教学难点:
理解和掌握S3c2410A的I/O口编程、中断控制器的程序设定、通过程序设定UART帧格式、A/D转换的流程及相关的程序编制等。
四、教学方法:
课题讲授、例程解析与上机实验相结合,采用多媒体教学方法,利用Powerpoint将本节课的关键内容归类,在课堂上对S3c2410A的结构进行讲解,课堂上携带开发板,给学生一个感性的认识,进行讲解的同时布置相关练习,加深学生对S3c2410A结构的理解,本章节共安排三次实验,内容分别为:
GPIO实验、UART实验和A/D实验。
通过实验,是学生更加了解S3c2410A处理器的内部功能。
五、教学过程设计:
一、S3c2410简介(1学时)
(一)S3c2410A的特点
(二)存储器控制
(三)NANDFlash控制器
(四)时钟和电源管理
二I/O口(1学时)
(一)S3c2410A的I/O口工作原理
(二)I/O口编程实例
三、中断(1学时)
(一)ARM的中断原理
(二)S3c2410A的中断控制器
(三)中断编程实例
四、UART(1学时)
(一)UART的工作原理
(二)S3c2410A的UART
(三)UART编程实例
五、A/D接口(1学时)
(一)A/D接口原理
(二)S3c2410A的A/D转换
(三)A/D接口编程实例
六、LCD(1学时)
(一)LCD显示原理
(二)S3c2410A的LCD控制器
(三)LCD显示的编程实例
六、思考题
1、S3c2410A采用的是哪种CPU内核?
实现了什么样的体系结构?
2、简述S3c2410ANandFlash启动装载器的特点。
3、S3c2410A的中断控制器有多少个中断源?
4、S3C2410A的存储器控制器的特性是什么?
5、S3c2410A共有多少个功能复用的I/O口?
如何分组?
6、S3c2410A的UART数据发送时的帧格式是怎样的?
如何进行设定?
7、S3c2410A的A/D转换器的类型是什么?
第6章Linux操作系统基础
一、教学目的:
介绍Linux的基础知识,包括内核结构、进程调度、内存管理、虚拟文件、进程通信、网络接口、设备管理以及Linux基本命令等。
学时分配:
6学时,其中4个理论学时,2个实验学时
二、教学重点:
嵌入式Linux开发概述、开发环境构建、嵌入式编程基础知识;Linux系统与Windows系统在进程调度、内存管理、虚拟文件系统、进程间通信、网络接口以及各子系统之间的依赖关系等方面的区别。
三、教学难点:
makefile文件的编写规则,并结合使用工具aclocal、autoconf和automake生成makefile文件;掌握gcc和gdb的基本用法。
四、教学方法:
课题讲授及实例演示,采用多媒体教学方法,利用Powerpoint将本节课的关键内容归类,并通过Internet收集相关的资料融入教学内容中,安排一次Linux系统配置及简单程序运行实验。
五、教学过程设计:
一、Linux操作系统概述(1.5学时)
(一)Linux操作系统的产生及发展
(二)Linux操作系统的特点
二、Linux内核的结构(2.5学时)
(一)进程调度
(二)内存管理
(三)虚拟文件系统
(四)进程间通信
(五)网络接口
(六)各子系统之间的依赖关系
六、思考题
1、Linux操作系统有哪些特点?
2、操作系统有哪些内核的结构模式?
3、单内核操作系统有何特点?
微内核操作系统有何特点?
4、什么是进程?
Linux的进程有哪些种类?
5、Linux虚拟内存技术提供哪些功能?
6、简述进程调度与内存管理之间的关系。
简述内存管理与虚拟文件系统之间的关系。
复习
一、教学目的:
复习所学内容,帮助学生对嵌入式系统课程所设计的知识点进行总结和归纳。
学时分配:
2学时
二、教学重点:
嵌入式系统的定义、嵌入式系统的组成、嵌入式系统的特点,嵌入式系统的应用,操作系统的概念和分类、实时操作系统、常见的嵌入式操作系统,arm体系结构概述、arm体系结构的特点、arm处理器结构、arm处理器内核、arm处理器核,Linux内核等。
三、教学方法:
课题讲授,采用多媒体教学方法,利用Powerpoint将本节课的关键内容归类。