《ARM体系结构与编程》教学大纲
课程名称:
| ARM体系结构与编程
|
|
|
课程编号:
| 408306
| 436311
|
|
适用专业:
| 计算机科学与技术
| 软件工程
|
|
课程类别:
| 专业限选
| 专业限选
|
|
课程学分:
| 3
|
|
|
总学时:
| 54
|
|
|
其中:理论学时
| 28
|
|
|
式实验学时
| 26
|
|
|
先修课程:
| C语言程序设计、汇编语言、操作系统原理、计算机组成原理、
电子技术基础
|
一、课程的性质、目的与任务
《ARM体系结构与编程》课程是计算机应用、电子类等专业的一门实践应用较强的课程,是嵌入式课程体系中非常得要的一门基础课程。该课程主要讲述ARM处理器的体系结构、指令系统和开发工具作了比较全面的介绍。其中包括ARM体系介绍、ARM程序设计模型、ARM汇编语言程序设计、ARM C/C++语言程序设计、ARM连接器的使用、ARM集成开发环境CodeWarrior IDE的介绍及高性能的调试工具ADX的使用。并在此基础之上介绍一些典型的基于ARM体系的嵌入式应用系统设计时的基本技术。通过本实验课程,应达到以下几个教学目的:
(1)能够理解ARM处理器的内部功能和特点,包括ARM处理器支持的数据内型、支持的存储格式、内核工作模式和存储系统等;
(2)能够理程ARM程序状态寄存器和寄存器组织;
(3)能熟练掌握各类常用指令的功能,理解各种不同的寻址方式;
(4)能够掌握使用ARM编程方法编写ARM汇编程序和ARM/C混编程序等;
(5)能够掌握一种ARM集成工发环境的工具软件的使用;
(6)能够掌握一种嵌入式ARM处理器(如ARM920T)的结构组成,常用接口的工作原理,并在此基础上编写驱动程序。
二、课程教学基本内容与要求
第一章 嵌入式系统基础知识
(一)教学内容
1.1 嵌入式系统概述
1.2 嵌入式系统的组成
1.3 嵌入式操作系统举例
1.4 嵌入式系统开发概述
(二)基本要求
教学目的:理解嵌入式系统的基本概念,了解嵌入式系统的发展、特点、组成和开发。
教学重点:嵌入式系统的概述,嵌入式系统的组成和开发。
教学难点:嵌入式系统的软硬件组成。
第二章 arm技术概述
(一)教学内容
2.1 arm体系结构的技术特征及发展
2.2 arm微处理器简介
2.3 arm微处理器结构
2.4 arm微处理器的应用选型
2.5 arm920t内部功能及特点
2.6 数据类型
2.7 arm920t内核工作模式
2.8 arm920t存储系统
2.9 流水线
2.10 寄存器组织
2.11 程序状态寄存器
2.12 samsung s3c2410x处理器介绍
(二)基本要求
教学目的:了解ARM体系结构的技术特征及发展,掌握ARM处理器的特点、支持的数据内型、存储格式、流水线及工作模式,掌握ARM处理器在不同模式下的寄存器组和程序状态寄存器中合位的作用。
教学重点:ARM处理器的特点、数据内型、存储格式、流水线、工作模和寄存器组。
教学难点:程序状态寄存器每位的作用和不同模式下能使用的寄存器组。
第三章 arm的指令系统
(一)教学内容
3.1 arm指令的寻址方式
3.2 arm指令集
(二)基本要求
教学目的:理解ARM指令系统和Tumber指令系统的区别,掌握ARM指令系统中各指令的功能和使用,掌握理解ARM指令系统支持的各种寻址方式。
教学重点:解ARM指令系统不同类型指令的使用,支持的各种寻址方式。
教学难点:ARM指令系统中各指令的功能及使用。
第四章 arm汇编语言程序设计
(一)教学内容
4.1 arm汇编器支持的伪操作
4.2 arm汇编器支持的伪指令
4.3 arm汇编语言的语句格式
4.4 arm汇编语言的程序结构
4.5 汇编语言与c语言的混合编程
(二)基本要求
教学目的:学习掌握能使用ARM汇编语言语法和指令编写规范的汇编程序,掌握ARM/C混编方法。
教学重点:arm汇编语言的语句格式,arm汇编器支持的伪操作、过程调用标准aapcs、汇编语言与c语言的混合编程。
教学难点:汇编语言与c语言的混合编程、过程调用标准aapcs。
第五章 realview mdk环境介绍
(一)教学内容
5.1 realview mdk环境介绍
5.2 ulink2仿真器简介
5.3 realview mdk的使用
(二)基本要求
教学目的:学习掌握realview mdk的使用。
教学重点:工程基本配置、工程的编译链接和工程的调试。
教学难点:工程基本配置、工程的调试。
第六章 gpio编程
(一)教学内容
6.1 gpio功能介绍
6.2 s3c2410x芯片的gpio控制器详解
6.3 s3c2410x gpio的应用
(二)基本要求
教学目的:掌握s3c2410x芯片的gpio控制器,掌握通过gpio引脚相关寄存器的配置编写驱动程序。
教学重点:gpio常用寄存器分类、i/o口常用寄存器详解和gpio的应用。
教学难点:i/o口常用寄存器详解和寄存器设置。
第七章 arm异常中断处理及编程
(一)教学内容
7.1 arm异常中断处理概述
7.2 arm体系异常种类
7.3 arm异常的优先级
7.4 arm处理器模式和异常
7.5 arm异常响应和处理程序返回
7.6 arm应用系统中异常中断处理程序的安装
7.7 arm的swi异常中断处理程序设计
7.8 fiq和irq异常中断程序设计
7.9 基于arm9芯片s3c2410x异常中断程序设计
(二)基本要求
教学目的:掌握arm异常中断处理概述,arm处理器异常模式和异常,理解s3c2410x中断机制;掌握通过相关寄存器的配置编写中继方式的驱动程序。
教学重点:arm处理器异常模式和异常、s3c2410x中断机制分析、fiq和irq异常中断程序设计。
教学难点:fiq和irq异常中断程序设计、使用汇编语言安装异常处理程序、从异常处理程序中返回。
第八章 串行通信接口
(一)教学内容
8.1 串行通信
8.2 s3c2410x异步串行通信
8.3 接口电路与程序设计
(二)基本要求
教学目的:了解串口通信概述,理解s3c2410x串口控制器接口路、通信控制原理和相关寄存器;能掌握通过相关寄存器的配置编写串口驱动程序。
教学重点:异步串行异通信控制原理、步串行方式的数据格式、串口控制器寄存器、接口电路与程序设计。
教学难点:s3c2410x串行异通信控制原理、相关寄存器与程序设计。
第十章 pwm定时器
(一)教学内容
10.1 s3c2410x pwm定时器
10.2 s3c2410x看门狗定时器
(二)基本要求
教学目的:了解s3c2410x pwm定时器概述,理解定时器工作原理和相关寄存器,能掌握通过相关寄存器的配置编写定时器驱动程序。
教学重点:s3c2410x定时器工作原理、相关寄存器和驱动程序设计方法。
教学难点:s3c2410x定时器工作原理。
第十一章 a/d转换器
(一)教学内容
11.1 a/d转换器原理
11.2 s3c2410x a/d转换器
11.3 a/d转换器应用举例
(二)基本要求
教学目的:了解s3c2410xa/d转换器概述,理解s3c2410xa/d转换器电路连接、工作原理和相关寄存器,能掌握通过相关寄存器的配置编写驱动程序。
教学重点:s3c2410xa/d转换器工作原理、相关寄存器和驱动程序设计方法。
教学难点:s3c2410xa/d转换器工作原理。
第十二章 lcd接口设计
(一)教学内容
12.1 lcd控制器
12.2 接口电路与程序设计
(二)基本要求
教学目的:了解lcd控制器概述,理解s3c2410x lcd控制器电路连接、工作原理和相关寄存器,能掌握通过相关寄存器的配置编写驱动程序。
教学重点:s3c2410x lcd控制器工作原理、相关寄存器和驱动程序设计方法。
教学难点:s3c2410x lcd控制器工作原理。
第十三章 温度监测仪开发实例
(一)教学内容
13.1项目功能描述
13.2系统组成
13.3接口电路图设计
13.4程序设计
13.5运行结果
(二)基本要求
教学目的:对前面学习的接口技术的一个综合应用,掌握嵌入式驱动程序设计方法。
教学重点:接口电路图设计、驱动程序设计。
教学难点:接口电路图设计、驱动程序设计。
三、课程各章节学时分配
序号
| 内容
| 理论学时
| 实验学时
|
计科
| 软工
| 计科
| 软工
|
1
| 嵌入式系统基础知识
| 1
| 1
| 0
| 0
|
2
| arm技术概述
| 2
| 2
| 0
| 0
|
3
| arm的指令系统
| 2
| 2
| 5
| 5
|
4
| arm汇编语言程序设计
| 2
| 2
| 1
| 1
|
5
| realview mdk环境介绍
| 1
| 1
| 1
| 1
|
6
| gpio编程
| 2
| 2
| 1
| 1
|
7
| arm异常中断处理及编程
| 4
| 4
| 4
| 4
|
8
| 串行通信接口
| 4
| 4
| 4
| 4
|
9
| 定时器
| 2
| 2
| 4
| 4
|
10
| a/d转换器
| 4
| 4
| 4
| 4
|
11
| lcd接口设计
| 2
| 2
| 2
| 2
|
12
| 温度监测仪开发实例
| 2
| 2
| 0
| 0
|
合计
| 28
| 28
| 26
| 26
|
四、本课程课外学习与修学指导
《ARM体系结构与编程》课程是计算机应用、电子类等专业的一门实践应用较强的课程,运用到操作系统原理、C编程基础和计算机组成原理和电子技术基础等软硬件课程的内容,所以要多参考相关书籍,在有限的实验课时以外,结合开发板的技术说明文档和工作图理图,多实践练习操作开发板,编程实现常用接口的驱动程序。
五、本课程考核方式及成绩评定标准
考核方式:闭卷考试
成绩评定方法:本课程的考核是平时成绩、实验成绩和期终考试成绩相结合。具体比例为:上课出勤、作业占20%,实验占20%,期末考试成绩占60%。
其中期未考试总分100分,基础题占50%,中等难度题占40%,较难题占10%。考试题型主要有:选择题、填空题、判断题、简答题、分析设计题等。
六、教材及参考书
1、教材:《ARM嵌入式体系结构与接口技术》,刘洪涛,人发邮电版社,2009年8月
2、主要参考书:
[1]杜春雷主编,ARM体系结构与编程.北京:清华大学出版社.2003
[2]田泽主编,ARM9嵌入式开发实验与实践.北京:北京航空航天大学出版社,2006
[3] Michael Barr主编,于志宏译,C/C++嵌入式系统编程,北京:清华大学出版社,2001
大纲撰写人:刘泽平
大纲审阅人: 刘伟群
教学副主任: 易叶青
编写日期:2012.6