通信与信息处理实验中心 ARM 实验指导书
0
通信与信息处理实验中心 ARM 实验指导书
0
目录
嵌入式系统的前景与发展 ................................................................................................... 2
第一章
基础实验
......................................................................................................3
第一节 实验教学系统介绍 ............................................................................................ 3
1.1.1 实验系统..............................................................................................................................3
1.1.2 ARM ADS............................................................................................................................8
1.1.2 仿真器................................................................................................................................13
第二节 实 验 ................................................................................................................ 23
1.2.1 ADS 1.2 集成开发环境练习 .......................................................................................23
1.2.2 汇编指令实验...............................................................................................................26
1.2.3 ARM微处理器工作模式实验 ......................................................................................28
1.2.4 C语言程序和C调用汇编程序实验..............................................................................33
1.2.5 GPIO输出控制实验......................................................................................................36
1.2.6 GPIO输入实验..............................................................................................................37
1.2.7 存储器重映射实验 .......................................................................................................39
1.2.8 外部中断实验...............................................................................................................41
1.2.9 外部存储器接口实验(NAND Flash) ...........................................................................50
1.2.10 定时器实验...................................................................................................................57
1.2.11 UART实验 ....................................................................................................................63
1.2.12 I
2
C接口实验.....................................................................................................................69
1.2.13 SPI接口触摸屏实验 ........................................................................................................80
1.2.14 PWM输出实验 .............................................................................................................91
1.2.15 RTC实验 .....................................................................................................................100
1.2.16 A/D转换实验 ............................................................................................................ 111
1.2.18 WDT实验....................................................................................................................117
1.2.18 基于CPLD的HDL实验.............................................................................................124
1.2.19 语音采集........................................................................................................................126
1.2.20 语音放送........................................................................................................................128
1.2.21 mp3 解码........................................................................................................................141
1.2.22 USB device实验.............................................................................................................148
1.2.23 STN屏初始化实验 ........................................................................................................155
1.2.24 TFT屏初始化实验.........................................................................................................165
1.2.25 ATA指令集实验 ............................................................................................................168
1.2.26 FAT32、FAT16 文件系统读写实验 .............................................................................185
第二章
嵌入式操作系统实验
..............................................................................188
第一节 嵌入式操作系统 ............................................................................................ 188
第二节 实验 ................................................................................................................ 188
2.2.1 uC/OS-II移植实验...........................................................................................................188
2.2.2 uC/OS-II多任务调度实验 ...............................................................................................197
2.2.3 uC/OS-II中断实验...........................................................................................................201
2.2.4 uC/OS-II任务间通讯实验 ...............................................................................................205
通信与信息处理实验中心 ARM 实验指导书
1
2.2.5 uC/OS-II + uC/GUI实验..................................................................................................210
2.2.6 uC/OS-II+文件系统实验.................................................................................................220
2.2.7 uC/OS-II+LWIP协议栈 ...................................................................................................222
2.2.8 Linux 系统上交叉编译实验 ..........................................................................................231
2.2.9 Bootloader实验................................................................................................................233
2.2.10 Linux 移植实验 ............................................................................................................241
2.2.11 uCLinux 文件系统实验................................................................................................244
2.2.12 Linux + MiniGUI实验 ...................................................................................................246
2.2.13 Linux 下驱动程序编写实验 ........................................................................................246
2.2.14 IDE驱动实验 .................................................................................................................251
2.2.15 以太网驱动实验............................................................................................................255
2.2.16 USB驱动实验................................................................................................................257
2.2.17 uCLinux下应用程序编写实验......................................................................................258
第三章
工控类实验
..............................................................................................262
第一节 工控板介绍 .................................................................................................... 262
第二节 实验 ................................................................................................................ 262
3.2.1 I/O控制LED 驱动实验..............................................................................................262
3.2.2 矩阵键盘驱动及数码管实验 .....................................................................................265
3.2.3 A/D转换及触摸屏驱动实验 ......................................................................................268
3.2.4 D/A转换及函数信号发生实验 ..................................................................................271
3.2.5 直流电机控制实验 .....................................................................................................273
3.2.6 步进电机控制实验 .....................................................................................................279
3.2.7 交通灯控制实验 .........................................................................................................283
3.2.8 蜂鸣器控制实验 .........................................................................................................292
第四章
通信与网络类实验
..................................................................................296
第一节 实验 ................................................................................................................ 296
4.1.1 RS232/RS485 串口通信实验 ..........................................................................................296
4.1.2 CAN总线通信实验 .........................................................................................................298
4.1.3 以太网通信实验..............................................................................................................300
4.1.4 IrDA红外通信实验 .........................................................................................................303
通信与信息处理实验中心 ARM 实验指导书
2
前言
嵌入式系统的前景与发展
嵌入式系统主要由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程
序等四个部分组成,它是集软硬件于一体的可独立工作的“器件”。目前,嵌入式系统技术
日益完善,正处于一个迅速发展的阶段。32 位微处理器在该系统中占主导地位,嵌入式操
作系统已经从简单走向成熟,它与网络、Internet 结合日益密切,因而,嵌入式系统应用将
日益广泛。通过必要的基础理论教学与大量的实践练习环节相结合,利用先进的教学实验仪
器、开发环境,使学生了解嵌入式应用的基本特点,并掌握开发嵌入式应用所需的基本技能,
为毕业生在进入社会工作前进行技术培训创造条件。同时,针对嵌入式应用大多使用操作系
统的特点,本方案还要求学生掌握嵌入式实时操作系统的原理、特点,并能够熟练编写基于
嵌入式实时操作系统的应用软件。通过这些训练,使学生具有较强的综合素质,成为具有良
好的实际操作能力、设计能力,符合社会需求的开拓型电子应用人才。
通信与信息处理实验中心 ARM 实验指导书
3
第一章 基础实验
ARM系列处理器核是英国先进RISC机器公司(Advanced RISC Machines,亦称为ARM
公司)的产品。ARM公司自成立以来,一直以IP(Intelligence Property)提供者的身份向
各大半导体制造商出售知识产权,而自己从不介入芯片的生产销售。它提供一些高性能、低
功耗、低成本和高可靠性的RISC处理器核、外围部件和系统及芯片的应用解决设计方案。
ARM处理器核具有低功耗、低成本等卓越性能和显著优点,越来越多的芯片厂商早已
看好ARM的前景。ARM处理器核得到了众多的半导体厂家和整机厂商的大力支持,在32位
嵌入式应用领域获得了巨大的成功,如Intel、Motorola、IBM、NS、Atmel、Philips、NEC、
OKI、SONY等世界上几乎所有知名的半导体公司都获得了ARM公司的授权,开发具有自己
特色的基于ARM核的嵌入式系统芯片。
目前非常流行的 ARM 内核有 ARM7TDMI、ARM720T、ARM9TDMI、ARM920T、
ARM940T、ARM946T、ARM966T 和 XScale 等。ARM 公司最近在美国加利福尼亚州圣荷
西市召开的嵌入式处理器论坛上公布了 4 个新的 ARM11 系列处理器内核(ARM1156T2-S、
ARM1156T2F-S、ARM1176JZ-S 和 ARM11JZF-S),以及应用 ARM1176JZ-S 和 ARM11JZF-S
内核系列的 PrimeXsys 平台和相关的 CoreSight 技术。此外,ARM 芯片还获得了许多实时操
作系统(PTOS,Real Time Operating System)供应商的支持,比较知名的有 Windows CE、
μCLinux、Psos
、VxWorks、Nucleus、EPOC、μC/OS、BeOS、Palm OS 和 QNX 等。
ARM 公司具有完整的产业链,ARM 公司的全球合作伙伴主要为半导体和系统伙伴、
操作系统伙伴、开发工具伙伴、应用伙伴、ARM 技术共享计划(ATA P)伙伴。ARM 公司
的紧密合作伙伴已发展为 122 家半导体和系统合作伙伴、50 家操作系统合作伙伴、35 家技
术共享合作伙伴,并于 2002 年在上海成立中国全资子公司。早在 1999 年,ARM 核就已突
破 1.5 亿个,市场分额超过了嵌入式处理器的 50%。而最新的市场调查表明,在 2001 年度,
ARM 占据了整个 32 位和 64 位嵌入式微处理器市场的 75%;在 2002 年度,占据了整个 32
位和 64 位嵌入式微处理器市场的 79.5%。全世界已使用了 20 多亿个 ARM 核。ARM 公司
已经成为业界的龙头老大,“每个人口袋中都装着 ARM”是毫不夸张的,因为几乎所有的手
机、移动设备、PDA 几乎都是用具有 ARM 核的系统芯片开发的。
第一节 实验教学系统介绍
1.1.1 实验系统
一、开发平台概述
Arm7 嵌入式实验箱采用当前流行的 32 位嵌入式处理机和基于开放源代码的 Linux 或
μC/OSII 实时操作系统,构建了模块化、开放式的新型开发平台。该开发平台设计配置灵
活、接口丰富,基于统一总线的模块化、开放式结构设计,极大地方便用户进行创新实验设
计;支持实时操作系统运行,提供分层设计的设备驱动模块;采用 20 针标准 JTAG 接口,
支持小 JTAG 板和 Multi-ICE 仿真器,是一款理想的、高性能的现代嵌入式系统实验平台。
Arm7嵌入式实验箱,包括Arm7核心板一块,基板一块,工控板一块。Arm7内核使用
Samsung S3C44B0X 处理器。基板接口包括单色/彩色LCD(STN /TFT )和触摸屏接口、标准
RS-232 串行接口、10M 以太网接口、USB 接口、存储接口、音频接口等功能。工控板可提
供矩阵键盘、LED数码显示接口、智能IC卡、A/D变换处理等丰富的接口功能。