teaching
material
《深入浅出 Cortex M0——LPC1100 系列》
配套教材
TM01010101
Date: 2010/04/01
V0.99
类别
关键词
摘 要
内容
Cortex-M0、LPC1100、接口技术与可靠性设计
深入浅出地介绍了 LPC1100 的内核、功能部件、接口技术与
可靠性设计等知识
广州周立功单片机发展有限公司
i
广州周立功单片机发展有限公司 Tel:(020)38730976 38730977 Fax:38730925 http://www.zlgmcu.com
修订历史
版本
V0.99
日期
2010/04/01
原因
创建文档
若对教材有任何疑问或建议,请联系 NXPARM@zlgmcu.com。
ii
广州周立功单片机发展有限公司 Tel:(020)38730976 38730977 Fax:38730925 http://www.zlgmcu.com
销售与服务网络(一)
广州周立功单片机发展有限公司
地址:广州市天河北路 689 号光大银行大厦 12 楼 F4
邮编:510630
电话:(020)38730916 38730917 38730972 38730976 38730977
传真:(020)38730925
网址:www.zlgmcu.com
广州专卖店
地址:广州市天河区新赛格电子城 203-204 室
电话:(020)87578634 87569917
传真:(020)87578842
北京周立功
地址:北京市海淀区知春路 113 号银网中心 A 座
1207-1208 室(中发电子市场斜对面)
电话:(010)62536178 62536179 82628073
传真:(010)82614433
杭州周立功
地址:杭州市天目山路 217 号江南电子大厦 502 室
电话:(0571)28139611 28139612 28139613
28139615 28139616 28139618
传真:(0571)28139621
深圳周立功
地址:深圳市深南中路 2070 号电子科技大厦 C 座 4
楼 D 室
电话:(0755)83781788(5 线)
传真:(0755)83793285
上海周立功
地址:上海市北京东路 668 号科技京城东座 7E 室
电话:(021)53083452 53083453 53083496
传真:(021)53083491
南京周立功
地址:南京市珠江路 280 号珠江大厦 2006 室
电话:(025)83613221 83613271 83603500
传真:(025)83613271
重庆周立功
地址:重庆市石桥铺科园一路二号大西洋国际大厦
(赛格电子市场)1611 室
电话:(023)68796438 68796439
传真:(023)68796439
成都周立功
地址:成都市一环路南二段 1 号数码同人港 401 室(磨
子桥立交西北角)
电话:(028)85439836 85437446
传真:(028)85437896
武汉周立功
地址:武汉市洪山区广埠屯珞瑜路 158 号 12128 室(华
中电脑数码市场)
电话:(027)87168497 87168297 87168397
传真:(027)87163755
西安办事处
地址:西安市长安北路 54 号太平洋大厦 1201 室
电话:(029)87881296 83063000 87881295
传真:(029)87880865
iii
广州周立功单片机发展有限公司 Tel:(020)38730976 38730977 Fax:38730925 http://www.zlgmcu.com
销售与服务网络(二)
(楼宇自动化事业部)
广州致远电子有限公司
地址:广州市天河区车陂路黄洲工业区 3 栋 2 楼
邮编:510660
传真:(020)38601859
网址:www.embedtools.com (嵌入式系统事业部)
www.embedcontrol.com (工控网络事业部)
www.ecardsys.com
技术支持:
CAN-bus:
电话:(020)22644381 22644382 22644253
邮箱:can.support@embedcontrol.com
MiniARM:
电话:(020)28872684 28872347
邮箱:miniarm.support@embedtools.com
无线通讯:
电话:(020) 22644386
邮箱:wireless@embedcontrol.com
编程器:
电话:(020)22644371
邮箱:programmer@embedtools.com
ARM 嵌入式系统:
电话:(020) 22644383 22644384 28267813
邮箱:NXPARM@zlgmcu.com
TIARM@zlgmcu.com
销售:
电话:(020)22644249 22644399 22644372 22644261 28872524
28872342 28872349 28872569 28872573 38601786
维修:
电话:(020)22644245
iCAN 及数据采集:
电话:(020)28872344 22644373
邮箱:ican@embedcontrol.com
以太网:
电话:(020)22644380 22644385
邮箱:ethernet.support@embedcontrol.com
串行通讯:
电话:(020)28267800 22644385
邮箱:serial@embedcontrol.com
分析仪器:
电话:(020)22644375 28872624 28872345
邮箱:tools@embedtools.com
楼宇自动化:
电话:(020)22644376 22644389 28267806
邮箱:mjs.support@ecardsys.com
mifare.support@zlgmcu.com
iv
广州周立功单片机发展有限公司 Tel:(020)38730976 38730977 Fax:38730925 http://www.zlgmcu.com
目 录
第 3 章 LPC1100 功能部件
3.1
A/D转换器(ADC)
······························································································· 1
······································································································ 1
························································································································ 1
························································································································ 1
················································································································· 1
····························································································· 1
············································································································· 2
················································································································· 6
········································································································ 7
········································································································ 9
3.1.1 概述
3.1.2 特性
3.1.3 引脚描述
3.1.4 时钟供应和功率控制
3.1.5 寄存器描述
3.1.6 基本操作
3.1.7
3.1.8
ADC中断设置
ADC应用举例
v
广州周立功单片机发展有限公司 Tel:(020)38730976 38730977 Fax:38730925 http://www.zlgmcu.com
第3章 LPC1100 功能部件
3.1 A/D转换器(ADC)
3.1.1 概述
LPC1100 系列 Cortex-M0 微处理器 A/D 转换器的基本时钟由 APB 时钟提供。A/D 转换器包
含一个可编程的分频器,它可以将 APB 时钟调整为逐次逼近转换所需的时钟(最大可达 4.5MHz,
并且完全满足精度要求的转换需要 11 个这样的时钟)。
3.1.2 特性
10 位逐次逼近式模数转换器;
在 8 个管脚间实现输入多路复用;
掉电模式;
测量范围:0~3.6V,不超出 VDD(3V3)的电压;
10 位转换时间≥2.44μs;
一个或多个输入的突发转换模式;
可选择由输入跳变或定时器匹配信号触发转换;
每个 A/D 通道的独立结果寄存器减少了中断开销;
3.1.3 引脚描述
ADC 各相关管脚的描述见表 3.1。
表 3.1 ADC 管脚描述
管脚名称
CPU 引脚
类型
描述
AD0
AD1
AD2
AD3
AD4
AD5
AD6
AD7
VDD(3V3)
P0.11
P1.0
P1.1
P1.2
P1.3
P1.4
P1.10
P1.11
输入
模拟输入。A/D 转换器单元可测量所有这些输入信号上的电压。
注意:尽管这些管脚在数字模式下具备 5V 的耐压能力,但是,当他
们被配置为模拟输入的时候最大的输入电压不得超过 VDD(3V3)的大
小
输入
VREF;参考电压
若要通过监控的管脚获得准确的电压读数,必须事先通过 IOCON 寄存器选用 ADC 功能。
对于作为 ADC 输入的管脚来说,在选用数字功能的情况下仍能获得 ADC 读取值的情况是不可
能存在的。在选用数字功能的情况下,内部电路会切断该管脚与 ADC 硬件的连接。
3.1.4 时钟供应和功率控制
系统时钟负责向 ADC 以及可编程 ADC 时钟分频器提供外部时钟信号(见本章“A/D 控制
寄存器”小节)。可通过 AHBCLKCTRL 寄存器的位 13 来禁能该时钟信号,从而达到节省功耗
的目的。通过 PDRUNCFG 寄存器可以在运行的时候使 ADC 下电。
1
广州周立功单片机发展有限公司 Tel:(020)38730976 38730977 Fax:38730925 http://www.zlgmcu.com
A/D 转换器的基本时钟信号供应取决于 APB 时钟(PCLK)。每个转换器都带有一个可编程
的分频器,可对时钟频率进行分频以便使频率达到逐次逼近过程所需的 4.5MHz(最大值)。一次
准确的转换需要占用 11 个时钟周期。
3.1.5 寄存器描述
ADC 的基地址为 4001 C000。A/D 转换器所包含的寄存器如表 3.2 所示
表 3.2 ADC 寄存器一览(基地址 4001 C000)
名称
访问 地址偏移量
描述
AD0CR
AD0GDR
-
R/W
R/W
-
0x000
0x004
0x008
AD0INTEN
R/W
0x00C
AD0DR0
R/W
0x010
AD0DR1
R/W
0x014
AD0DR2
R/W
0x018
AD0DR3
R/W
0x01C
AD0DR4
R/W
0x020
AD0DR5
R/W
0x024
AD0DR6
R/W
0x028
AD0DR7
R/W
0x02C
AD0STAT
RO
0x030
A/D 控制寄存器。A/D 转换开始前,必须写 AD0CR
寄存器来选择工作模式
A/D 全局数据寄存器。包含最近一次 A/D 转换的结果
保留
A/D 中断使能寄存器。该寄存器包含的使能位控制每
个 A/D 通道的 DONE 标志是否用于产生 A/D 中断
A/D 通道 0 数据寄存器。该通道包含在通道 0 上完成
的最近一次转换的结果
A/D 通道 1 数据寄存器。该通道包含在通道 1 上完成
的最近一次转换的结果
A/D 通道 2 数据寄存器。该通道包含在通道 2 上完成
的最近一次转换的结果
A/D 通道 3 数据寄存器。该通道包含在通道 3 上完成
的最近一次转换的结果
A/D 通道 4 数据寄存器。该通道包含在通道 4 上完成
的最近一次转换的结果
A/D 通道 5 数据寄存器。该通道包含在通道 5 上完成
的最近一次转换的结果
A/D 通道 6 数据寄存器。该通道包含在通道 6 上完成
的最近一次转换的结果
A/D 通道 7 数据寄存器。该通道包含在通道 7 上完成
的最近一次转换的结果
A/D 状态寄存器。该寄存器包含所有 A/D 通道的
DONE 和 OVERRUN 标志,以及 A/D 中断标志
复位值[1]
0x0000 0001
NA
-
0x0000 0100
NA
NA
NA
NA
NA
NA
NA
NA
0
[1]、保留值只反映使用位中所保存的数据。不包括保留位内容。
1. A/D控制寄存器(AD0CR–0x4001 C000)
A/D 控制寄存器中的位可用于选择要转换的 A/D 通道、A/D 转换时间、A/D 模式和 A/D 启
动触发。
2
广州周立功单片机发展有限公司 Tel:(020)38730976 38730977 Fax:38730925 http://www.zlgmcu.com
表 3.3 A/D 控制寄存器位描述(AD0CR)
位
符号
值
描述
7:0
SEL
15:8
CLKDIV
从 AD7:0 中选择采样和转换的输入脚。对于 ADC,bit0 选择管脚 AD0,
bit1 选择引脚 AD1…bit7 选择引脚 AD7。
软件控制模式下(BURST=0),只能选择一个通道,也就是说,这
些位中只有一个位可置为 1。
硬件扫描模式下(BURST=1),可选用任意数目的通道,也就是说,
可以把任意的位或者全部的位都置为 1。但若全部位都为零,那么将
自动选用通道 0(SEL=0x01)。
将 APB 时钟(PCLK)进行(CLKDIV 值+1)分频得到 A/D 转换时
钟,该时钟必须小于或等于 4.5 MHz。通常软件将 CLKDIV 编程为
最小值来得到 4.5 MHz 或稍低于 4.5 MHz 的时钟,但某些情况下(例
如高阻抗模拟信号源)可能需要更低的时钟
注:A/D 转换时钟 = FPCLK / (CLKDIV + 1)
0 软件控制模式:转换由软件控制,需要 11 个时钟才能完成
硬件扫描模式:A/D 转换器以 CLKS 字段选择的速率重复执行转换,
并扫描所有 SEL 字段中被置为 1 的位所对应的管脚(如有必要)。
A/D 转换器启动后,首先转换的是 SEL 字段中被置为 1 的最低位所
对应的通道,然后,若较高位中还存在被置为 1 的位,那么由低到高
进行扫描。清零该位可终止这个轮流重复转换的过程,但是该位清零
时并不能终止正在进行的转换
注:当 BURST=1 时 START 位必须为 000,否则转换无法启动
该字段选择 Burst 模式下每次转换占用时钟数 以及 AD0DRn 的
V/VREF 位中转换结果的有效位数,设定的范围在 11 个时钟(10 位)
和 4 个时钟(3 位)之间
11 个时钟/10 位
10 个时钟/9 位
9 个时钟/8 位
8 个时钟/7 位
7 个时钟/6 位
6 个时钟/5 位
5 个时钟/4 位
4 个时钟/3 位
保留,用户软件不应向保留位写 1。从保留位读出的值未定义
16
BURST
1
000
001
101
011
100
101
110
111
19:17
CLKS
-
23:20
复位值
0x01
0
0
000
NA
3