广州致远电子股份有限公司(www.zlg.cn)/广州周立功单片机科技有限公司(www.zlgmcu.com)
目 录
2.1
3.2
3.3
1.2
1.3
2.2
2.3
3.1
1.1
2.1.1
2.1.2
第 1 章 嵌入式系统概述 ·································································································· 1
嵌入式系统 ···················································································································· 1
1.1.1 现实中的嵌入式系统 ····························································································· 1
1.1.2 嵌入式系统的定义特点 ························································································· 1
1.1.3 嵌入式系统的技术前沿 ························································································· 2
嵌入式处理器 ················································································································ 3
1.2.1 嵌入式处理器介绍 ································································································· 3
1.2.2 嵌入式微处理器分类 ····························································································· 3
ARM 简介 ······················································································································ 4
RISC 结构特性 ······································································································· 5
1.3.1
1.3.2 常用 ARM 处理器 ·································································································· 5
第 2 章 I.MX28 系列 ARM9 处理器介绍 ········································································ 8
I.MX28 系列 ARM9 简介 ······························································································ 8
I.MX28 概述 ··········································································································· 8
I.MX28 性能特色 ··································································································· 8
I.MX28 系列 ARM9 器件选型信息 ··············································································· 9
I.MX28 系列 ARM9 的功能框 ···················································································· 10
第 3 章 EasyARM-i.MX283(7)A 快速入门 ···································································· 12
EasyARM-i.MX283(7)A 简介 ······················································································ 12
3.1.1 产品图片 ·············································································································· 12
3.1.2 产品特性 ·············································································································· 12
EasyARM-i.MX283A 与 EasyARM-i.MX287A 资源对比表 ······························ 13
3.1.3
EasyARM-i.MX283(7)A 的积木塔式结构 ··························································· 14
3.1.4
EasyARM-i.MX283(7)A 配套的产品生态链 ······················································· 14
3.1.5
EasyARM-i.MX283(7)A 使用指南 ·············································································· 16
3.2.1 开发必备工具 ······································································································· 16
EasyARM-i.MX283(7)A 机械尺寸 ······································································ 19
3.2.2
EasyARM-i.MX283(7)A 组装 ·············································································· 19
3.2.3
EasyARM-i.MX283(7)A 管脚说明 ·············································································· 24
3.3.1 指示灯说明 ··········································································································· 24
3.3.2 调试串口与启动功能配置 ··················································································· 24
IDC 接口定义说明 ······························································································· 25
3.3.3
IDC-A 接口默认功能说明 ··················································································· 26
3.3.4
IDC-B 接口默认功能说明 ··················································································· 27
3.3.5
IDC-A/B 接口复用功能说明 ··············································································· 28
3.3.6
10/100M 以太网接口 ··························································································· 30
3.3.7
3.3.8 MicroUSB 接口 ···································································································· 30
USB Host 接口 ····································································································· 31
3.3.9
TFT 液晶 FFC 连接器接口 ·················································································· 31
3.3.10
JTAG 接口 ············································································································ 33
3.3.11
TF 卡接口 ············································································································· 33
3.3.12
EasyARM-i.MX283(7)A 性能参数 ·············································································· 34
3.4
i
广州致远电子股份有限公司(www.zlg.cn)/广州周立功单片机科技有限公司(www.zlgmcu.com)
4.5
4.6
4.1
4.2
4.3
4.4
3.4.1 系统功耗 ·············································································································· 34
3.4.2 系统主要性能配置 ······························································································· 34
第 4 章 EasyARM-i.MX283(7)A 硬件电路分析 ···························································· 36
EasyARM-i.MX283(7)A 系统框图 ·············································································· 36
启动配置说明 ·············································································································· 36
系统时钟电路设计 ······································································································· 38
电源电路设计 ·············································································································· 39
4.4.1 总系统电源电路设计 ··························································································· 39
5V 电源 ················································································································· 39
4.4.2
4.2V 电源 ·············································································································· 39
4.4.3
3.3V 电源 ·············································································································· 40
4.4.4
i.MX28 内部 PMU 介绍 ······················································································ 40
4.4.5
i.MX28 采用 5V 单独供电 ··················································································· 41
4.4.6
i.MX28 采用 4.2V(DCDC_BATT)单独供电 ··················································· 42
4.4.7
4.4.8 电池供电应用 ······································································································· 43
EasyARM-i.MX283(7)A 默认供电方案 ······························································· 45
4.4.9
存储器电路设计 ··········································································································· 45
NAND Flash 电路设计 ························································································· 45
DDR2 电路设计 ··································································································· 47
复位电路设计 ·············································································································· 47
4.6.1 看门狗复位电路 ··································································································· 47
4.6.2 按键复位及 5V 关断电路 ···················································································· 48
USB 电路设计 ·············································································································· 49
USB Host 电路 ····································································································· 49
USB Device 电路设计 ·························································································· 50
以太网接口电路设计 ··································································································· 50
4.8.1 以太网收发器电路 ······························································································· 51
4.8.2 以太网变压器电路 ······························································································· 53
TF 卡接口电路设计 ····································································································· 54
LCD 接口电路设计 ······································································································ 55
蜂鸣器电路设计 ··········································································································· 56
RTC 电路设计 ·············································································································· 57
i.MX28 硬件设计检查事项·························································································· 58
第 5 章 嵌入式 SoC 开发································································································ 61
嵌入式 SoC ·················································································································· 61
5.1.1 嵌入式 SoC 设计思想 ·························································································· 61
5.1.2 嵌入式 SoC 设计重用技术 ·················································································· 61
跳过“0”阶段设计 ····································································································· 62
5.2.1 MiniARM M28A 嵌入式工控核心板 ·································································· 62
EPC 嵌入式工控机 ······························································································ 64
5.2.2
4.9
4.10
4.11
4.12
4.13
4.7
4.8
5.1
5.2
4.5.1
4.5.2
4.7.1
4.7.2
ii
广州致远电子股份有限公司(www.zlg.cn)/广州周立功单片机科技有限公司(www.zlgmcu.com)
第1章 嵌入式系统概述
1.1 嵌入式系统
嵌入式计算机系统的出现,是现代计算机发展史上的里程碑。嵌入式系统诞生于微型计算
机时代,与通用计算机的发展道路完全不同,形成了独立的单芯片的技术发展道路。由于嵌入
式系统的诞生,现代计算机领域中出现了通用计算机与嵌入式计算机的两大分支。通用计算机
按照高速、海量的技术发展;嵌入式计算机系统则为满足对象嵌入式智能化控制要求发展。不
可兼顾的技术发展道路,造成了两大分支的相对独立。经独立的分工发展,20 世纪末,现代计
算机的两大分支都得到了迅猛的发展。
经过十几年的发展,嵌入式系统已经在很大程度改变了人们的生活、工作和娱乐方式,而
且这些改变还在加速。嵌入式系统具有无数的种类,每种都具有自己独特的结构和功能。例如,
MP3、数码相机与打印机就有很大的不同。
1.1.1 现实中的嵌入式系统
嵌入式系统多“嵌入”在产品内部,即使不可见,但几乎无处不在。嵌入式系统在很多产
业中得到了广泛的应用并逐步改变着这些产业,包括工业自动化、国防、运输和航天领域。例
如神舟飞船和长征火箭中有很多嵌入式系统,导弹的制导系统也是嵌入式系统,高档汽车中也
有多达几十个嵌入式系统。
在日常生活中,人们使用各种嵌入式系统,但未必知道它们。图 1-1 就是一些生活中比较
常见的嵌入式系统。事实上,几乎所有带有一点“智能”的家电(全自动洗衣机、电脑电饭煲„„)
都是嵌入式系统。嵌入式系统广泛的适应能力和多样性,使得视听、工作场所甚至健身设备中
到处都有嵌入式系统。
图 1-1 常见的嵌入式系统应用实例
1.1.2 嵌入式系统的定义特点
嵌入式系统诞生于微型计算机,是嵌入到对象体系中,实现对象智能化的微型计算机。由
于通用计算机无法满足绝大多数对象体在体积、价位及可靠性等方面的要求,因此,嵌入式系
统迅速走上了独立发展的单片机道路。首先是将计算机芯片化集成为单片微型计算机(SCMP),
其后,为满足对象体系的应用要求,单片机不断从单片微型计算机向微控制器(MCU)与片上
系统(SoC)发展。但无论怎样发展变化,都改变不了“微计算机”、“嵌入到对象体系中”、“满
足对象智能化控制要求”的技术本质。
1
DC
广州致远电子股份有限公司(www.zlg.cn)/广州周立功单片机科技有限公司(www.zlgmcu.com)
因此,我们可以将嵌入式系统定义成:“嵌入到对象体系中的专用计算机应用系统”。
随着网络、通信时代的到来,不少嵌入式系统形成了一些独立的应用产品,如手机、PDA、
MP3、数码伴侣等,这些产品没有像电视机、电冰箱、空调、洗衣机、汽车等那样明显的嵌入
对象,这时嵌入式系统定义中的“嵌入到对象体系中”含义,可以广义地理解成“內嵌有计算
机”的含义。
1. 嵌入式系统的特点
按照嵌入式系统的定义,嵌入式系统有 3 个基本特点,即“嵌入性”、“专用性”与“计算
机”。
“嵌入性”由早期微型机时代的嵌入式计算机应用而来,专指计算机嵌入到对象体系中,
实现对象体系的智能控制。当嵌入式系统变成一个独立应用产品时,可将嵌入性理解为内部嵌
有微处理器或计算机。
“计算机”是对象系统智能化控制的根本保证。随着单片机向 MCU、SoC 发展,片内计算
机外围电路、接口电路、控制单元日益增多,“专用计算机系统”演变成为“内含微处理器”的
现代电子系统。与传统的电子系统相比较,现代电子系统由于内含微处理器,能实现对象系统
的计算机智能化控制能力。
“专用性”是指在满足对象控制要求及环境要求下的软硬件裁剪性。嵌入式系统的软、硬
件配置必须依据嵌入对象的要求,设计成专用的嵌入式应用系统。
2. 嵌入式系统的相关技术
嵌入式系统应是计算机的一个重要分支。但是,作为一个重要的计算机工具,有不断完善
的基础技术与在各个领域中的应用技术,并且依靠着多学科,如计算机学科、电子技术学科、
微电子学科、集成电路设计等的交叉与综合。
1.1.3 嵌入式系统的技术前沿
目前,无论是嵌入式系统基础器件、开发手段,还是应用对象,都有了很大变化。无论是
从事 8 位、16 位、32 位的嵌入式系统应用,都应该了解嵌入式系统的技术前沿。这些技术前沿
体现了嵌入式系统应用的一些基本观念,它们是:基于集成开发环境的应用开发、应用系统的
用户 SoC 设计、操作系统的普遍应用、普遍的网络接入、先进的电源技术以及多处理器 SoC 技
术。
早在 1990 年之前,嵌入式系统通常是很简单的且具有很长的产品生命周期的自主设备。近
些年来,嵌入式工业经历了巨大的变革。
产品市场窗口现在预计翻番的周期狂热到 6~9 个月;
全球重新定义市场的机会和膨胀的应用空间;
互联网现在是一个刚性需求而不是辅助性的,包括用有线和无线技术;
基于电子的产品更复杂化;
互联嵌入式系统产生新的依赖网络基础设施的应用;
微处理器的处理能力按莫尔定律(Moore’s L aw)预计的速度在增加。该定律认为集
成电路和晶体管个数每 18 个月翻一番。
如果说过去的趋势能指明未来,那么随着技术的革新,嵌入式软件将继续增加新的应用,
并产生更加灵巧的产品种类。根据人们对于自身虚拟运行设备的消费要求增加而不断壮大的市
场,以及由 Internet 创造的无限的机会,嵌入式系统将不断地重新塑造未来的世界。
2
广州致远电子股份有限公司(www.zlg.cn)/广州周立功单片机科技有限公司(www.zlgmcu.com)
1.2 嵌入式处理器
1.2.1 嵌入式处理器介绍
普通个人计算机(PC)中的处理器是通用目的的处理器。它们的设计非常丰富,因为这些
处理器提供全部的特性和广泛的功能,故可以用于各种应用中。使用这些通用处理器的系统有
大量的应用编程资源。例如,现代处理器具有内置的内存管理单元(MMU),提供内存保护和
多任务能力的虚存和操作系统。这些通用的处理器具有先进的高速缓存逻辑。许多这样的处理
器具有执行快速浮点运算的内置数学协处理器。这些处理器提供接口,支持各种各样的外部设
备。这些处理器能源消耗大,产生的热量高,尺寸也大。其复杂性意味着这些处理器的制造成
本昂贵。在早期,嵌入式系统通常用通用目的的处理器建造。
近年来,随着微处理器制造技术的发展,越来越多的嵌入式系统用嵌入式处理器建造,而
不是用通用处理器。这些嵌入式处理器是为完成特殊的应用而设计的处理器。
一类嵌入式处理器注重尺寸、能耗和价格。因此,某些嵌入式处理器限定其功能,即处理
器对于某类应用足够好,而对于其他类的应用可能就不够好了。这就是为何许多的嵌入式处理
器没有太高的 CPU 速度的原因。例如,为个人数字助理(PDA)设备选择的就没有浮点协处理
器,因为浮点运算没有必要。这些处理器可以是 16 bit 地址体系结构,而不是 32 bit 的;处理
器可以是 200MHz CPU 频率,因为应用的主要特性是交互和显示密集性的,而不是计算密集性
的。这类嵌入式处理器很小,因为整个 PDA 装置尺寸很小并能放在手掌上。限制功能意味着降
低能耗并延长电池供电时间。更小的尺寸可降低处理器的制造成本。
另一类嵌入式处理器更关注性能。这些处理器功能很强,并用先进的芯片设计技术包装,
如先进的管道线和并行处理体系结构。这些处理器设计满足那些用通用目的处理器难以达到的
密集性计算的应用需求。新出现的高度特殊的高性能的嵌入式处理器,包括为网络设备和电信
工业开发的网络处理器。总之,系统和应用速度是人们关心的主要问题。
还有一类嵌入式处理器关注全部 4 个需求——性能、尺寸、能耗和价格。例如,摄像机中
的嵌入式数字信号处理器(DSP)具有特殊性的计算单元、内存中的优化设计、寻址和带多个
处理能力的总线体系结构,这样 DSP 可以非常快地实时执行复杂的计算。在同样的时钟频率下,
DSP 执行数字图像信号处理要比通用的处理器速度快若干倍,这就是在摄像机的设计上用 DSP
而不用通用的处理器的原因。并且 DSP 具有非常快的速度和强大的嵌入式处理器,其价格是相
当合适的,使得摄像机的整体价格具有相当的竞争力。
1.2.2 嵌入式微处理器分类
嵌入式微处理器(Embedded Microprocessor Unit, EMPU)
嵌入式微处理器的基础是通用计算机中的 CPU。在应用中,将微处理器装配在专门设计的
电路板上,只保留和嵌入式应用有关的母板功能,这样可以大幅度减小系统体积和功耗。为了
满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但
在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。
和工业控制计算机相比,嵌入式微处理器具有体积小、重量轻、成本低、可靠性高的优点,
但是在电路板上必须包括 ROM、RAM、总线接口、各种外设等器件,从而降低了系统的可靠
性,技术保密性也较差。嵌入式微处理器及其存储器、总线、外设等安装在一块电路板上,称
为单板计算机。如 STD-BUS、PC104 等。近年来,德国、日本的一些公司又开发出了类似“火
柴盒”式名片大小的嵌入式计算机系列 OEM 产品。
嵌入式处理器目前主要有 Am186/88、386EX、SC-400、Power PC、68000、MIPS、ARM
系列等。
3
广州致远电子股份有限公司(www.zlg.cn)/广州周立功单片机科技有限公司(www.zlgmcu.com)
嵌入式微控制器(Microcontroller Unit, MCU)
嵌入式微控制器又称单片机,顾名思义,就是将整个计算机系统集成到一块芯片中。嵌入
式微控制器一般以某一种微处理器内核为核心,芯片内部集成 ROM/EPROM、RAM、总线、
总线逻辑、定时/计数器、WatchDog、I/O、串行口、脉宽调制输出、A/D、D/A、Flash RAM、
EEPROM 等各种必要功能和外设。为适应不同的应用需求,一般一个系列的单片机具有多种衍
生产品,每种衍生产品的处理器内核都是一样的,不同的是存储器和外设的配置及封装。这样
可以使单片机最大限度地和应用需求相匹配,功能不多不少,从而减少功耗和成本。
和嵌入式微处理器相比,微控制器的最大特点是单片化,体积大大减小,从而使功耗和成
本下降、可靠性提高。微控制器是目前嵌入式系统工业的主流。微控制器的片上外设资源一般
比较丰富,适合于控制,因此称微控制器。
嵌入式微控制器目前的品种和数量最多,比较有代表性的通用系列包括 8051、P51XA、
MCS-251、MCS-96/196/296、C166/167、MC68HC05/11/12/16、68300、数目众多 ARM 芯片等。
目前 MCU 占嵌入式系统约 70%的市场份额。
嵌入式 DSP 处理器(Embedded Digital Signal Processor, EDSP)
DSP 处理器对系统结构和指令进行了特殊设计,使其适合于执行 DSP 算法,编译效率较高,
指令执行速度也较高。在数字滤波、FFT、谱分析等方面 DSP 算法正在大量进入嵌入式领域,
DSP 应用正从在通用单片机中以普通指令实现 DSP 功能,过渡到采用嵌入式 DSP 处理器。
嵌入式 DSP 处理器比较有代表性的产品是 Texas Instruments 的 TMS320 系列和 Motorola
的 DSP56000 系列。TMS320 系列处理器包括用于控制的 C2000 系列,移动通信的 C5000 系列,
以及性能更高的 C6000 和 C8000 系列。DSP56000 目前已经发展成为 DSP56000,DSP56100,
DSP56200 和 DSP56300 等几个不同系列的处理器。另外 PHILIPS 公司近年也推出了基于可重
置嵌入式 DSP 结构低成本、低功耗技术上制造的 R. E. A. L DSP 处理器,特点是具备双 Harvard
结构和双乘/累加单元,应用目标是大批量消费类产品。
嵌入式片上系统(System On Chip)
随着 EDI 的推广和 VLSI 设计的普及化及半导体工艺的迅速发展,在一个硅片上实现一个
更为复杂的系统的时代已来临,这就是 System On Chip(SOC)。各种通用处理器内核将作为 SOC
设计公司的标准库,和许多其它嵌入式系统外设一样,成为 VLSI 设计中一种标准的器件,用
标准的 VHDL 等语言描述,存储在器件库中。用户只需定义出其整个应用系统,仿真通过后
就可以将设计图交给半导体工厂制作样品。这样除个别无法集成的器件以外,整个嵌入式系统
大部分均可集成到一块或几块芯片中去,应用系统电路板将变得很简洁,对于减小体积和功耗、
提高可靠性非常有利。
SOC 可以分为通用和专用两类。通用系列包括 Infineon 的 TriCore,Motorola 的 M-Core,
某些 ARM 系列器件,Echelon 和 Motorola 联合研制的 Neuron 芯片等。专用 SOC 一般专用于某
个或某类系统中,不为一般用户所知。一个有代表性的产品是 Philips 的 Smart XA,它将 XA
单片机内核和支持超过 2048 位复杂 RSA 算法的 CCU 单元制作在一块硅片上,形成一个可加
载 JAVA 或 C 语言的专用的 SOC,可用于公众互联网如 Internet 安全方面。
1.3 ARM 简介
ARM 公司是一家知识产权(IP)供应商,它与一般的半导体公司最大的不同就是不制造芯
片且不向终端用户出售芯片。而是通过转让设计方案,由合作伙伴生产出各具特色的芯片。ARM
公司利用这种双赢的伙伴关系迅速成为了全球性 RISC 微处理器标准的缔造者。这种模式也给
用户带来巨大的好处,因为用户只需掌握了一种 ARM 内核结构及其开发手段,就能够使用多
家公司相同 ARM 内核的芯片。
4
广州致远电子股份有限公司(www.zlg.cn)/广州周立功单片机科技有限公司(www.zlgmcu.com)
目前,总共有超过 100 家公司与 ARM 公司签订了技术使用许可协议,其中包括 Intel、IBM、
LG、NEC、Freescale、NXP(原 PHILIPS)和 NS 这样的大公司。至于软件系统的合伙人,则
包括微软、升阳和 MRI 等一系列知名公司。
ARM 架构是 ARM 公司面向市场设计的第一款低成本 RISC 微处理器,它具有极高的性价
比和代码密度以及出色的实时中断响应和极低的功耗,并且占用硅片的面积极少,从而使它成
为嵌入式系统的理想选择,因此应用范围非常广泛,比如手机、PDA、MP3/MP4 和种类繁多的
便携式消费产品中。2004 年 ARM 公司的合作伙伴生产了 12 亿片 ARM 处理器。
1.3.1
RISC 结构特性
ARM 内核采用精简指令集计算机(RISC)体系结构,它是一个小门数的计算机,其指令
集和相关的译码机制比复杂指令集计算机(CISC)要简单得多,其目标就是设计出一套能在高
时钟频率下单周期执行,简单而有效地的指令集。RISC 的设计重点在于降低处理器中指令执行
部件的硬件复杂度,这是因为软件比硬件更容易提供更大的灵活性和更高的智能化,因此 ARM
具备了非常典型的 RISC 结构特性:
具有大量的通用寄存器;
通过装载/保存(load-store)结构使用独立的 load 和 store 指令完成数据在寄存器和外
部存储器之间的传送,处理器只处理寄存器中的数据,从而可以避免多次访问存储器;
寻址方式非常简单,所有装载/保存的地址都只由寄存器内容和指令域决定;
使用统一和固定长度的指令格式。
此外,ARM 体系结构还提供:
每一条数据处理指令都可以同时包含算术逻辑单元(ALU)的运算和移位处理,以实
现对 ALU 和移位器的最大利用;
load/store 指令可以批量传输数据,从而实现了最大数据吞吐量;
使用地址自动增加和自动减少的寻址方式优化程序中的循环处理;
大多数 ARM 指令是可“条件执行”的,也就是说只有当某个特定条件满足时指令才会
被执行。通过使用条件执行,可以减少指令的数目,从而改善程序的执行效率和提高
代码密度。
这些在基本 RISC 结构上增强的特性使 ARM 处理器在高性能、低代码规模、低功耗和小的
硅片尺寸方面取得良好的平衡。
从 1985 年 ARM1 诞生至今,ARM 指令集体系结构发生了巨大的改变,还在不断地完善和
发展。为了清楚地表达每个 ARM 应用实例所使用的指令集,ARM 公司定义了 7 种主要的 ARM
指令集体系结构版本,以版本号 V1~V7 表示。
1.3.2 常用 ARM 处理器
ARM 公司开发了很多系列的 ARM 处理器核,应用比较多的是 ARM7 系列、ARM9 系列、
ARM10 系列、ARM11 系列、Cortex-A8 系列、Cortex-A9 系列,还有针对低端 8 位 MCU 市场
最新推出的 Cortex-M3 系列,其具有 32 位 CPU 的性能、8 位 MCU 的价格。
1. CortexTM-M3 处理器
ARM CortexTM-M3 处理器是一个面向低成本,小管脚数目以及低功耗应用,并且具有极高
运算能力和中断响应能力的一个处理器内核。其问世于 2006 年,第一个推向市场的是美国
LuminaryMicro 半导体公司的 LM3S 系列 ARM。
CortexTM-M3 处理器采用了纯 Thumb2 指令的执行方式,使得这个具有 32 位高性能的 ARM
内核能够实现 8 位和 16 位处理器级数的代码存储密度,非常适用于那些只需几 K 存储器的 MCU
5