新書推薦:
《
中国近现代名家精品——项维仁:工笔侍女作品精选
》
售價:HK$
66.1
《
宋瑞驻村日记(2012-2022)
》
售價:HK$
115.6
《
汗青堂丛书138·帝国的切口:近代中国口岸的冲突与交流(1832-1914)
》
售價:HK$
127.4
《
人世事,几完缺 —— 啊,晚明
》
售價:HK$
115.6
《
樊树志作品:重写明晚史系列(全6册 崇祯传+江南市镇的早期城市化+明史十二讲+图文中国史+万历传+国史十六讲修订版)
》
售價:HK$
498.0
《
真谛全集(共6册)
》
售價:HK$
1156.4
《
敦煌通史:魏晋北朝卷
》
售價:HK$
162.3
《
唯美手编16:知性优雅的编织
》
售價:HK$
54.9
|
編輯推薦: |
教材从物联网基础知识入手,坚持由浅入深、由里及外、循序渐进的学习导向,让物联网教学不再乏味。? 教材层次分明,从基础知识、入门初探、理论指引层层探究,*后过渡至实验应用,让读者渐入佳境。? 弱化理论灌输,强化软件编程与硬件设计能力培养,将大量实验引入教材,引导读者从概念定义、理论学习逐渐过渡至实验应用。? 打破教条界限,根据相关专业课对物联网专业知识的关联,形成独具多板块、多层次、多接口特色的教材,适合相关多专业选用。
|
內容簡介: |
全书共4篇,基础篇主要对物联网的概念、组成、发展进行概述,同时简单介绍物联网中的关键技术和一些常用的物联网传感器及其特点,最后列举物联网技术的典型应用;理论篇主要对CC2530内部模块的GPIO、外部中断、定时器、DMA、UART等内部资源的设置及相关寄存器进行讲解,同时在每节最后提供相关参考程序供读者参考和使用;入门篇主要对CC2530相关的基本硬件结构进行介绍,同时对编辑软件的安装、应用,以及程序的烧写进行介绍;实践篇设置一系列实验,从最基础的无线控制LED实验开始到较复杂的ZigBee管理系统实验,从易到难,适合不同层次的读者进行递阶学习。同时,为了帮助读者能够清晰地理解程序的设计思路,在主要实验中都给出了相关的程序流程图,并在程序中标注了大量的注解。 本教材从物联网基础知识入手,坚持由浅入深、由里及外、循序渐进的学习导向,使物联网教学不再乏味,适合零基础的读者学习物联网系统。本书适合作为电气信息类(物联网、电气工程及其自动化、自动化、电子信息工程、通信工程、计算机科学与技术、电子科学与技术等)等专业的大学高年级学生和研究生的必修或选修教材,以及嵌入式计算机方面的指导用书,也可以作为相关科技人员的自学用书。
|
目錄:
|
目录基础篇
第1章物联网技术简介3
1.1物联网概述 3
1.1.1物联网基本概念3
1.1.2物联网概念的比较4
1.2物联网的发展过程5
1.2.1物联网的起源5
1.2.2物联网的现状6
1.3物联网的基本层次6
1.3.1感知层6
1.3.2传输层8
1.3.3应用层8
1.4物联网关键技术8
1.4.1感知与识别技术8
1.4.2节点软硬件设计技术9
1.4.3组网与泛在接入技术9
1.4.4大规模的感知信息处理技术10
1.5物联网架构10
习题与思考11
第2章物联网关键技术12
2.1感知层技术12
2.1.1EPC技术12
2.1.2RFID技术12
2.1.3传感器技术16
2.1.4无线传感器网络技术18
2.2传输层汇聚网技术20
2.2.1ZigBee技术20
2.2.2蓝牙技术24
2.2.3WiFi技术26
2.2.4UWB技术28
物联网技术及应用
目录2.3传输层网络接入技术29
2.3.1M2M接入技术29
2.3.26LoWPAN技术33
2.4传输层承载网技术36
2.4.13G WLAN36
2.4.2TDSCDMA37
2.4.3光纤通信技术37
习题与思考38
第3章物联网用传感器39
3.1传感器工作原理39
3.1.1机械结构型传感器39
3.1.2物性型传感器40
3.2物联网中常用传感器42
3.2.1热学量传感器42
3.2.2密度和浓度传感器47
3.2.3光学量传感器48
3.2.4气体传感器53
3.2.5湿度传感器56
3.2.6生物量传感器58
3.2.7身份识别传感器和雷达65
习题与思考71
第4章物联网技术典型应用72
4.1物联网在物流行业的应用72
4.2物联网在医疗保健中的应用76
4.3物联网在智能交通中的应用80
4.4物联网在智能家居中的应用84
4.5物联网在智能电网中的应用87
4.6物联网在环保行业的应用90
4.7物联网应用新视野91
4.7.1车联网91
4.7.2人体感知网92
习题与思考92
理论篇
第5章物联网系统解决方案95
5.1CC2530内部结构95
5.1.1CPU与内存95
5.1.2外部设备97
5.1.3无线电98
5.2MCS51单片机98
5.3CPU存储器98
5.3.1存储器映射98
5.3.2CPU存储空间99
5.3.3物理存储器100
5.3.4XDATA存储空间106
5.3.5存储器仲裁106
5.4CPU寄存器107
5.4.1数据指针107
5.4.2寄存器R0~R7108
5.4.3程序状态字108
5.4.4累加器109
5.4.5寄存器B109
5.4.6堆栈指针109
5.5指令集综述110
5.6中断原理及相关设置114
5.6.1中断屏蔽115
5.6.2中断处理117
5.6.3中断优先级120
5.6.4应用示例121
习题与思考123
第6章调试接口、电源管理与闪存控制器124
6.1调试接口124
6.1.1调试模式124
6.1.2调试传输124
6.1.3锁位125
6.1.4调试配置126
6.1.5调试状态128
6.1.6硬件断点与闪存编程129
6.1.7调试接口与供电模式129
6.1.8调试寄存器130
6.2电源管理与时钟130
6.2.1电源管理130
6.2.2电源管理控制132
6.2.3电源管理寄存器132
6.2.4振荡器与时钟133
6.3复位137
6.4闪存控制器138
6.4.1闪存存储器组织138
6.4.2闪存写138
6.4.3闪存页面擦除140
6.4.4闪存DMA触发140
6.4.5闪存控制器的寄存器141
习题与思考142
第7章IO端口143
7.1未使用的IO引脚143
7.2低IO电压143
7.3通用IO143
7.4通用IO中断144
7.5通用IO DMA144
7.6外设IO145
7.7调试接口148
7.8XOSC输入149
7.9无线测试输出信号149
7.10掉电信号MUXPMUX149
7.11IO引脚149
7.12应用示例157
习题与思考161
第8章DMA控制器及操作162
8.1DMA操作162
8.2DMA配置参数162
8.3DMA配置、传输与中断165
8.4DMA配置数据结构与存储访问166
8.5DMA寄存器167
习题与思考169
第9章定时器170
9.1定时器1170
9.1.1计数器170
9.1.2通道模式控制171
9.1.3IR信号的产生和线性化174
9.1.4定时器1中断与DMA触发177
9.1.5定时器1寄存器177
9.1.6应用示例183
9.2定时器2184
9.2.1定时器操作184
9.2.2定时器2中断186
9.2.3事件输出(DMA触发和CSP事件)186
9.2.4定时器启动停止同步186
9.2.5定时器2寄存器187
9.3定时器3和定时器4191
9.3.1位定时器计数器191
9.3.2定时器3定时器4模式控制192
9.3.3通道模式控制192
9.3.4定时器34中断与DMA触发193
9.3.5定时器3 与定时器4 寄存器193
9.3.6应用示例198
9.4睡眠定时器199
9.4.1定时器比较199
9.4.2定时器捕获200
9.4.3睡眠定时器寄存器200
9.4.4应用示例203
9.5看门狗定时器205
9.5.1看门狗模式206
9.5.2定时器模式206
9.5.3看门狗定时器寄存器206
9.5.4应用示例207
习题与思考209
第10章模数转换器、随机数发生器与AES协处理器210
10.1ADC模数转换210
10.1.1ADC操作211
10.1.2ADC寄存器213
10.2随机数发生器215
10.2.1随机数发生器的运行216
10.2.2随机数发生器的寄存器217
10.3AES协处理器217
10.3.1AES操作217
10.3.2密钥和IV218
10.3.3协处理器与CPU通信218
10.3.4运行模式218
10.3.5AES DMA触发221
10.3.6AES寄存器221
习题与思考222
第11章UART与USB接口223
11.1UART模式223
11.1.1UART发送223
11.1.2UART接收223
11.1.3UART硬件流控制224
11.1.4UART特征格式224
11.1.5SPI模式224
11.1.6SSN从模式选择引脚225
11.1.7波特率的产生225
11.1.8清除USART226
11.1.9USART中断226
11.1.10USART DMA触发226
11.1.11USART寄存器227
11.1.12应用示例231
11.2USB235
11.2.1USB的使能与中断236
11.2.2端口0237
11.2.3端口1~5239
11.2.4DMA242
11.2.5USB复位242
11.2.6挂起与恢复243
11.2.7远程唤醒243
11.2.8USB寄存器243
习题与思考250
第12章CC2530相关无线通信技术251
12.1RF内核251
12.1.1RF收发器中断相关251
12.1.2中断寄存器251
12.2FIFO访问255
12.3RF内核的DMA触发255
12.4存储器映射255
12.4.1RXFIFO256
12.4.2TXFIFO256
12.4.3帧过滤和源匹配存储器映射256
12.5频率和通道编程257
12.6IEEE 802.15.42006调制格式258
12.7IEEE 802.15.42006帧格式259
12.8发送模式260
12.9接收模式264
12.9.1RX控制264
12.9.2RX状态时序265
12.9.3帧处理265
12.9.4同步头和帧长度域265
12.9.5帧过滤266
12.9.6源地址匹配269
12.9.7帧校验序列271
12.9.8确认传输271
12.10RXFIFO访问273
12.10.1使用FIFO和FIFOP274
12.10.2错误情况275
12.10.3RSSI275
12.10.4链路质量指示275
12.11无线电控制状态机制275
12.12随机数的产生277
12.13数据包分析器和无线电测试输出信号278
12.14命令选通CSMACA处理器278
12.14.1指令存储器279
12.14.2数据寄存器279
12.14.3中断请求280
12.14.4随机数指令280
12.14.5运行CSP程序280
12.14.6寄存器280
12.14.7指令集综述281
12.14.8指令集定义283
12.15寄存器一览表295
12.15.1寄存器设置更新296
12.15.2寄存器访问模式296
12.15.3寄存器描述297
习题与思考316
入门篇
第13章SUSTEB2530硬件原理与结构319
13.1功能特点319
13.2管脚信息320
13.3硬件原理320
13.3.1SUSTEB2530 PACK板原理图320
13.3.2SUSTEB2530底板原理图320
13.4硬件结构322
13.4.1元件布局图322
13.4.2开发板使用说明322
第14章ZigBee开发平台的构建326
14.1实验介绍与准备工作326
14.2IAR集成开发环境介绍327
14.3IAR Embedded Workbench的安装327
14.4新建工程与工程设置331
14.4.1建立一个新的工程331
14.4.2建立一个源文件332
14.4.3添加源文件到工程332
14.4.4编写代码334
14.4.5工程的设置335
14.4.6编译工程341
14.5安装SmartRF Flash Programmer和仿真器341
14.6程序仿真与调试345
14.7安装USB转串口驱动345
14.8安装ZStackCC25302.3.01.4.02.5.1.a协议栈346
习题与思考347
实践篇
实验1BasicRF无线点控LED实验351
习题与思考354
实验2无线传输质量检测实验355
习题与思考357
实验3无线收发控制LED实验358
习题与思考370
实验4协议栈中串口基础实验371
习题与思考375
实验5广播组网无线数据传输实验376
习题与思考383
实验6组播多终端控制协调器LED实验384
习题与思考389
实验7点播通信无线通信实验390
习题与思考397
实验8DS18B20温度传感器数据采集实验398
习题与思考406
实验9DHT11温湿度传感器数据采集实验407
习题与思考413
实验10气体浓度数据采集实验414
习题与思考418
实验11光敏和热敏传感器数据采集实验419
习题与思考422
实验12红外热释电传感器数据采集实验423
习题与思考427
实验13按键无线点控台灯实验428
习题与思考433
实验14串口透传无线QQ实验434
习题与思考441
实验15基于GenericApp无线收发实验442
习题与思考449
实验16新建一个自己的ZStack工程实验450
习题与思考453
实验17协议捕捉与分析实验454
习题与思考457
实验18SUSTEB2530路由器编译实验458
习题与思考462
实验19协议栈读MQ2浓度模拟量实验463
习题与思考466
实验20协议栈读光敏光强模拟量实验467
习题与思考468
实验21协议栈RFID射频卡实验469
习题与思考470
实验22ZigBee管理系统实验471
附录A开发板图474
附录B硬件原理图475
附录C网络层所定义的特性常量484
附录D常用术语英汉对照表488
参考文献493
|
內容試閱:
|
前言 在现实物理世界与虚拟计算机世界之间实现信息交互这一革命性的理念,突破了以往信息网络技术发展的固有模式和思路,使得物联网一跃成为全国乃至世界关注的焦点,国内外都把物联网的发展提到了国家级的战略高度,称之为继计算机、互联网之后世界信息产业的第三次浪潮。何谓物联网?不同的阶段在不同的场合有不同的描述。目前对物联网比较准确的表述是: 通过各种信息传感设备及系统(传感网、射频识别系统、红外感应器、激光扫描器等)、条码与二维码、全球定位系统,按约定的通信协议,将物与物、人与物连接起来,通过各种接入网、互联网进行信息交换,以实现智能化识别、定位、跟踪、监控和管理的一种信息网络。物联网的主要特征是每一个物件都可以寻址,每一个物件都可以控制,每一个物件都可以通信。显然,作为感知、传输、应用三项技术相结合的一种产物,它是一种全新的信息获取和处理技术。随着物联网技术进步的同时,新兴的短距离无线通信技术和无线网络技术也在飞速发展,ZigBee技术应运而生,正以空前的速度走进人们的生活,使人们的生活和工作更加方便,更加安全。2002年8月,由英国Invensys公司、日本三菱电气公司、美国Motorola公司和荷兰Philips公司共同发起了ZigBee联盟,致力于以IEEE 802.15.4 MAC和物理层协议为基础,进行ZigBee技术的网络层和高层应用规范的指定、设备测试和市场推广工作,实现各家产品的相互兼容,以期望与其他类似无线通信产品相抗衡并迅速拓展在这一领域的市场。ZigBee是一种网络容量大、节点体积小、架构简单、低速率、低功耗的无线通信技术。由于其节点体积小,且能自动组网,所以布局十分方便;又因其强调由大量的节点进行群体协作,网络具有很强的自愈能力,任何一个节点的失效都不会对整体任务的完成造成致命性影响,所以特别适合用来组建无线传感器网络。用ZigBee技术来实现无线传感器网络,主要需要考虑通信节点的硬件设计,以及实现相应功能所必需的软件开发。基于TI(德州仪器公司)的CC2530芯片在中国推广已经有好几年了,具备了实现ZigBee技术的各种底层硬件需求,是真正的一体化解决方案,完全符合ZigBee技术对节点体积小的要求,另外,TI还提供了ZStack协议栈,尽可能地减轻了软件开发的工作量。本书从实际出发,从简至难地解析用ZigBee技术开发无线传感器网络的各个要点,由浅入深地讲述如何开发具体的无线传感器网络系统。本教材通俗易懂,真正适合物联网零基础读者的学习。本书从实际应用入手,由浅到深、循序渐进地诠释了物联网的相关概念、关键技术及应用,其中着重分析讲述了CC2530芯片的内部资源配置及使用方法,以实验过程和实验现象为主导,详细叙述了使用C语言对CC2530进行编程的方法,为读者详细分析ZigBee 无线网络的实现及开发技巧,引导读者自己动手进行ZigBee无线网络项目实验。本书不同于传统的物联网技术与应用书籍,本书中的所有例程均以实际硬件为依托,以最新版的ZigBee协议栈为中心,用C语言进行软件设计,目的是让读者在各种ZigBee无线网络基础实验和CC2530无线数据收发应用模式实验中理解ZigBee协议栈,对ZigBee技术知其然,又能知其所以然,从而让读者在实际应用中彻底理解和掌握ZigBee技术。
物联网技术及应用前言本书内容共分为4部分,分别为基础篇、理论篇、入门篇和实践篇。基础篇主要对物联网的概念、组成、发展做了概述,同时简单介绍了物联网中的关键技术和一些常用的物联网传感器及其特点,最后列举了物联网技术的典型应用。理论篇主要对CC2530内部模块的GPIO、外部中断、定时器、DMA、UART等内部资源的设置及相关寄存器进行了讲解,同时在每节最后都提供了相关参考程序供读者参考和使用。入门篇主要对CC2530的基本硬件结构进行介绍,同时对编辑软件的安装、应用,以及程序的烧写进行介绍。实践篇设置了一系列实验,从最基础的无线控制LED实验开始到较复杂的ZigBee管理系统实验,从易到难,适合不同层次的读者进行递阶学习。同时,为了帮助读者能够清晰地理解程序的设计思路,在主要实验中都给出了相关的程序流程图,并在程序中标注了大量的注解。本书由陕西科技大学的张开生编著,负责拟定编写教材大纲、设计内容框架、定稿。在编写过程中得到陕西科技大学电信学院研究生宫瑶、彭朋、张盟蒙、许萌、权思敏等在录入、排版、绘图、软件调试等方面的大力协助,在此一并表示感谢。为了使教材更具全面性、实用性,在编写过程中查阅并引用了大量的参考资料及文献,并选用了其中的一些实例,因篇幅有限,难以一一列举,在此,谨致衷心的感谢。在编写过程中虽然做了很多力所能及的努力,但限于作者的水平,书中疏漏及不足之处在所难免,敬请广大读者批评指正,以便修订再版时得以改正提高。本书适合作为电气信息类(如物联网、电气工程及其自动化、自动化、电子信息工程、通信工程、计算机科学与技术、电子科学与技术等)等专业的大学高年级学生和研究生的必修或选修教材,以及嵌入式计算机方面的指导用书,也可以作为相关科技人员的指导用书。书中所涉及相关文档电子版、PPT、实验板请联系skdzks@163.com。
编者2016年6月于陕西科技大学
第5章物联网系统解决方案嵌入式ZigBee应用解决方案的应用实现,目前主要采用一种系统级芯片CC2530。该芯片是由Chipcon公司推出的,融合RF应用和ZigBee为一体的片上系统(SoC)解决方案,它支持2.4GHz IEEE 802.15.4ZigBee协议。CC2530根据芯片内置闪存的不同容量,为用户提供4个不同版本: CC2530F3264128256,分别具有32KB64KB128KB256KB的闪存。CC2530的主要特性如下\[42\]。(1) 高性能、低功耗的增强型8051微控制器内核;(2) 内嵌适应2.4GHz IEEE 802.15.4的RF收发器;(3) 极高的接收灵敏度和抗干扰性能;(4) 32KB64KB128KB256KB的闪存;(5) 内部8KB SRAM,具备在各种供电方式下的数据保持能力;(6) 具有强大的5通道DMA功能;(7) MAC定时器,通用定时器(一个16位定时器,一个8位定时器);(8) 32kHz睡眠定时器具有捕获功能;(9) 6mm6mm的QFN40封装;(10) 21个通用IO引脚;(11) AES安全协处理器;(12) 具有8路12位的ADC;(13) 具备两个支持多种串行通信协议的USART;(14) 具有看门狗定时器;(15) 支持硬件调试;(16) 电源电压范围宽2.0~3.6V;(17) 硬件支持避免冲突的载波侦听多路存取(CSMACA)。5.1CC2530内部结构如图51所示为CC2530系列设备的内部模块构造分布图。图51CC2530框图从图51中可以看出,CC2530内部主要由CPU与内存相关的模块;外部设备、时钟与电源管理相关的模块;无线电相关的模块三大类型的模块组成。5.1.1CPU与内存CC2530作为一个具有增强型8051内核的无线单片机。它的存储器访问总线有三个,分别为: SFR、DATA 和CODEXDATA,以单周期访问SFR、DATA 和主SRAM。CC2530设备还包括一个调试接口和一个扩展中断单元,其中拓展中断单元具有18位输入。
物联网技术及应用第5章物联网系统解决方案CC2530具备18个中断源,这些中断源由6个中断组的中断控制器控制,在每个中断组按照中断优先级划分为4个等级。CC2530芯片可通过中断的方式唤醒处于睡眠模式的设备,同时每当设备从空闲模式激活时,都将触发一个中断服务请求。内存仲裁器负责执行仲裁,并确定同一时刻到同一个物理存储器的内存访问的顺序,内存仲裁器通过SFR总线,把CPU 与DMA 控制器、物理存储器,以及所有外部设备连接在一起。CC2530的 CPU包含超低功耗的8KB SRAM,尤其在设备数字部分掉电时,它仍然能够保留自身的数据内容。SRAM中的数据可以映射到DATA存储空间和XDATA存储空间。CC2530具有内电路可编程的非易失性程序存储器,支持设备重新启动后直接读取之前应用程序中保存的网络数据而不需要经过完整的启动、网络寻找和加入过程。此外,CC2530提供一个电源管理功能,允许电池在不同的供电模式的低功耗应用运行。5.1.2外部设备通过CC2530专有两线串行调试接口,可以对CC2530的闪存存储器进行擦除,并控制使能振荡器、停止和开始执行用户程序、执行8051内核提供的指令、设置代码断点,以及内核中全部指令的单步调试,从而实现内电路的调试与外部闪存的编程。IO控制器负责管理、配置所有通用IO引脚的输入、输出方式,是否需要上拉或下拉电阻。此外,CPU还可以配置外部设备模块是否控制某个引脚或它们是否受软件控制,外部设备根据实际情况可配置至任意IO引脚。CC2530提供改善系统实时效能的一个5通道DMA控制器,通过使用DMA控制器,实现在SFR或XREG地址和闪存SRAM之间进行数据传输,获得高效率操作。CC2530包括定时器1、定时器2、定时器3、定时器4和睡眠定时器,以及看门狗定时器。其中,定时器1为16位,定时器2即MAC定时器,定时器3和定时器4均为8位,它们均具有定时器计数器PWM功能,并且定时器1、定时器3、定时器4分别包含一个可编程的分频器,具有16位和8位周期值以及可编程的计数器捕获通道,每个计数器捕获通道均可用作一个PWM输出或捕获输入信号边沿的时序。定时器2(MAC定时器)是专为支持IEEE 802.15.4 MAC协议而设计的,包含一个可配置的定时器周期和一个8位溢出计数器,用于保持、跟踪已经经过的周期数。睡眠定时器是CC2530包含的一个超低功耗的定时器,主要用作唤醒定时器使设备停止休眠跳出供电模式1或模式2,但由于供电模式3下CC2530低功耗运行,数字内核关闭,所有振荡器都不工作,所以睡眠定时器不能在供电模式3下运行,其他供电模式下均可正常运行。CC2530提供模拟数字转换器ADC并且支持7~12位的分辨率,输入可以选择作为单端或差分。其中,参考电压可以由内部电压、AVDD或是一个单端或差分外部信号提供。并且ADC还具有一个温度传感输入通道,使用时可以直接对相应的引脚和通道进行配置;同时,ADC可以自动执行定期抽样或转换通道序列的程序。CC2530提供随机数发生器,产生的伪随机数可直接被CPU读取,用作产生安全随机密钥使用。CC2530在无线网络中传输数据的加密由AES协处理器来完成,允许用户使用带有128位密钥的AES算法加密和解密数据,并且支持IEEE 802.15.4 MAC安全、ZigBee网络层和应用层要求的AES操作\[43\]。CC2530具有全双工串行通信串口USART 0和USART 1,每个串口被配置为一个SPI主从或一个UART,并且每个串口都配备有自己的高精度波特率发生器,因此可以使普通定时器空闲出来用作其他用途。5.1.3无线电CC2530支持兼容IEEE 802.15.4 的RF无线收发器,其中RF内核为用户提供了一个MCU 与无线设备之间的接口,实现命令的发送、读取等相关无线设备事件操作。5.2MCS51单片机Intel公司在MCS48系列的基础上,于1980年推出了8位MCS51系列单片机,包括8051、8751、8031、8951。CC2530使用增强型8051内核,相比于标准的8051,增强型8051内核指令执行速度更快,在结构上也有一定的改善,原因如下。(1) 每个指令周期是一个时钟,而标准的8051 每个指令周期是12个时钟;(2) 消除了总线状态的浪费;(3) 第二个数据指针;(4) 一个扩展的18 源中断单元。5.3CPU存储器8051 CPU分配独立的程序存储空间和数据存储空间,包含CODE、DATA、XDATA、SFR这4个不同的存储空间,这些存储空间在结构上是独立的,但同时存在部分重叠,用以减轻DMA传输和调试的负担,具体如下\[44\]。CODE: 只读程序存储空间,存储空间地址为64KB。DATA: 数据存储空间,地址共256B,可以直接或间接地被一个单周期CPU指令访问。XDATA: 数据存储空间,地址共64KB。CPU访问XDATA存储器的指令周期为CPU访问DATA存储器的4~5倍,并且访问执行速度也慢于访问DATA,因为通常需要4、5个CPU指令周期来访问。SFR: 读写的寄存器存储空间,可直接被CPU指令访问。5.3.1存储器映射存储器映射不同于标准的8051内存映射,主要体现在以下两个方面\[44\]。第一,CODE和SFR存储空间部分需要映射到XDATA存储空间,目的是为了保证DMA控制器可以访问全部物理存储空间,并且使得DMA可以在不同的8051存储空间之间进行数据传输。第二,CODE存储器空间映射使用两个备用机制。第一个机制是在映射设备复位后默认闪存存储器单向映射到CODE存储空间。第二个机制是SARM映射到如图52所示的区域,这样对于来自SARM的代码执行效率就得到很大提高。在XDATA存储空间中,存在一个只读区域,即XBANK,在此区域的任意闪存区都可被映射出来,保证整个闪存存储器都可以被访问到,用以存储另外的常量数据。图52~图54显示了不同的物理存储器映射到CPU存储空间的存储映射。可用的闪存区的编号取决于闪存大小的选项。图52XDATA存储空间(显示SFR和DATA映射)5.3.2CPU存储空间XDATA存储空间: XDATA存储映射如图52所示。0x0000至SRAM_SIZE1为SRAM映射到的地址范围。XREG区域映射到1KB地址区域0x6000~0x63FF。这些寄存器有效地扩展了SFR寄存器空间使得一些外设寄存器、大多数无线电控制和数据寄存器均映射到这里。SFR寄存器映射到地址区域为0x7080~0x70FF。闪存信息页面映射到地址为0x7800~0x7FFF的只读区域,该区域包含相关设备的各种信息。XDATA存储空间0x8000~0xFFFF中较高的32KB存储空间是一个只读的闪存代码区(XBANK)。图53CODE存储空间
图54用于运行来自SRAM的代码的CODE存储空间CODE存储空间中普通区域地址为0x0000~0x7FFF;另一个区域地址为0x8000~0xFFFF,如图53所示。普通区域总是映射到物理闪存存储器较低的32KB(区0)空间。另一区域则可以映射到任一可用的32KB闪存区(即从区0到区7)。使用闪存区选择寄存器FMAP来选择闪存区,闪存区的编号取决于闪存的大小。通过映射可用的SRAM到地址范围从0x8000到0x8000 SRAM_SIZE1的较低区域,可使得SRAM执行程序。除当前所选择的区之外的其余部分仍映射到地址区域0x8000 SRAM_SIZE到0xFFFF,并通过设置MEMCTR.XMAP位来使能这一功能。DATA存储空间: DATA存储器的8位的地址区域映射到SRAM较高的256B,即地址范围从SRAM_SIZE-256到SRAM_SIZE-1的区域。SFR存储空间: 通过SFR存储空间可以访问128个条目的硬件寄存器区域。SFR寄存器还可以通过XDATA地址空间(地址范围是0x7080~0x70FF)来进行访问。5.3.3物理存储器RAM: RAM分为两种,动态RAM和静态RAM。动态RAMDRAM的内容在一定时间之后自动消失,所以为了保存数据必须在内容丢失之前进行周期性刷新操作。而对于静态RAMSRAM只要电源存在的情况下其内容就不会自动消失。静态RAM比动态RAM速度快。CC2530设备采用静态RAM。闪存存储器由一组2KB的页面组成,主要用于保存程序和常量,闪存存储器具有以下功能。(1) 页面大小: 2KB。(2) 闪存页面擦除时间: 20ms。(3) 闪存芯片(批量)擦除时间: 20ms。(4) 闪存写时间(4B): 20s。(5) 数据保留(室温下): 100年。(6) 编程擦除次数: 20 000次。在闪存存储器的组成的每一个页面中都包含一个锁位用于保护闪存存储器保存的内容不被随意擦除或读出。对闪存存储器进行内容写入和擦除由闪存控制器完成。CPU通过一个缓存取出指令从闪存存储器中读取指令和常量,在此过程中CPU首先将指令和常量数据缓存,进而减少访问闪存存储器的总时间从而减少功率消耗。信息页面是一个2KB的只读区域,用来存储设备信息。其他信息中它包括来自TI地址范围的一个唯一的IEEE地址。这个地址的最低位优先存储在XDATA地址0x780C。SFR寄存器: 特殊功能寄存器(SFR)负责控制CPU内核或外设的一些功能。表51显示了设备中所有SFR的地址。8051内部SFR以斜体显示,而其他SFR是具体于设备的SFR。表51SFR概览寄存器名称SFR地址模块描述ADCCON10xB4ADCADC控制 1 ADCCON20xB5ADCADC控制 2 ADCCON30xB6ADCADC控制 3 ADCL0xBAADCADC数据低字节 ADCH0xBBADCADC数据高字节 RNDL0xBCADC随机数发生器数据低字节 RNDH0xBDADC随机数发生器数据高字节 ENCDI0xB1AES加密解密输入数据 ENCDO0xB2AES加密解密输出数据 ENCCS0xB3AES加密解密控制和状态 P00x80CPU端口0。可从XDATA(0x7080)中读出SP0x81CPU栈指针 DPL00x82CPU数据指针 0低字节 DPH00x83CPU数据指针 0高字节 DPL10x84CPU数据指针 1低字节 DPH10x85CPU数据指针 1高字节 PCON0x87CPU供电模式控制 TCON0x88CPU中断标志 P10x90CPU端口1。可从XDATA(0x7090)读出DPS0x92CPU数据指针选择 续表寄存器名称SFR地址模块描述S0CON0x98CPU中断标志 2IEN20x9ACPU中断使能 2S1CON0x9BCPU中断标志 3P20xA0CPU端口2。可从 XDATA(0x70A0)读出IEN00xA8CPU中断使能 0IP00xA9CPU中断优先级 0IEN10xB8CPU中断使能 1IP10xB9CPU中断优先级 1IRCON0xC0CPU中断标志 4PSW0xD0CPU程序状态字ACC0xE0CPU累加器IRCON20xE8CPU中断标志 5B0xF0CPUB寄存器 DMAIRQ0xD1DMADMA中断标志 DMA1CFGL0xD2DMADMA通道 1~4配置地址低字节 DMA1CFGH0xD3DMADMA通道 1~4配置地址高字节 DMA0CFGL0xD4DMADMA通道 0配置地址低字节 DMA0CFGH0xD5DMADMA通道 0配置地址高字节 DMAARM0xD6DMADMA通道准备工作 DMAREQ0xD7DMADMA通道开始请求和状态 0xAA保留 0x8E保留 0x99保留 0xB0保留 0xB7保留 0xC8保留P0IFG0x89IOC端口 0中断状态标志P1IFG0x8AIOC端口 1中断状态标志P2IFG0x8BIOC端口 2中断状态标志PICTL0x8CIOC端口引脚中断屏蔽和边沿P0IEN0xABIOC端口 0中断屏蔽P1IEN0x8DIOC端口 1中断屏蔽P2IEN0xACIOC端口 2中断屏蔽P0INP0x8FIOC端口 0输入模式PERCFG0xF1IOC外设 IO控制APCFG0xF2IOC模拟外设 IO配置P0SEL0xF3IOC端口 0功能选择P1SEL0xF4IOC端口 1功能选择P2SEL0xF5IOC端口 2功能选择P1INP0xF6IOC端口 1输入模式P2INP0xF7IOC端口 2输入模式P0DIR0xFDIOC端口 0方向P1DIR0xFEIOC端口 1方向P2DIR0xFFIOC端口 2方向PMUX0xAEIOC掉电信号 MuxMEMCTR0xC7MEMORY内存系统控制FMAP0x9FMEMORY闪存存储器区映射RFIRQF10x91RFRF中断标志 MSBRFD0xD9RFRF数据RFST0xE1RFRF命令选通RFIRQF00xE9RFRF中断标志 LSBRFERRF0xBFRFRF错误中断标志ST00x95ST睡眠定时器 0ST10x96ST睡眠定时器 1ST20x97ST睡眠定时器 2STLOAD0xADST睡眠定时器负载状态SLEEPCMD0xBEPMC睡眠模式控制命令SLEEPSTA0x9DPMC睡眠模式控制状态CLKCONCMD0xC6PMC时钟控制命令CLKCONSTA0x9EPMC时钟控制状态T1CC0L0xDA定时器 1定时器 1通道 0捕获比较值低字节T1CC0H0xDB定时器 1定时器 1通道 0捕获比较值高字节T1CC1L0xDC定时器 1定时器 1通道 1捕获比较值低字节T1CC1H0xDD定时器 1定时器 1通道 1捕获比较值高字节T1CC2L0xDE定时器 1定时器 1通道 2捕获比较值低字节T1CC2H0xDF定时器 1定时器 1通道 2捕获比较值高字节T1CNTL0xE2定时器 1定时器 1计数器低字节T1CNTH0xE3定时器 1定时器 1计数器高字节T1CTL0xE4定时器 1定时器 1控制和状态T1CCTL00xE5定时器 1定时器 1通道 0捕获比较控制T1CCTL10xE6定时器 1定时器 1通道 1捕获比较控制T1CCTL20xE7定时器 1定时器 1通道 2捕获比较控制T1STAT0xAF定时器 1定时器 1状态T2CTRL0x94定时器 2定时器 2控制T2EVTCFG0x9C定时器 2定时器 2事件配置T2IRQF0xA1定时器 2定时器 2中断标志T2M00xA2定时器 2定时器 2复用寄存器 0T2M10xA3定时器 2定时器 2复用寄存器 1T2MOVF00xA4定时器 2定时器 2复用溢出寄存器 0T2MOVF10xA5定时器 2定时器 2复用溢出寄存器 1T2MOVF20xA6定时器 2定时器 2复用溢出寄存器 2T2IRQM0xA7定时器 2定时器 2中断屏蔽T2MSEL0xC3定时器 2定时器 2复用选择T3CNT0xCA定时器 3定时器 3计数器T3CTL0xCB定时器 3定时器 3控制T3CCTL00xCC定时器 3定时器 3通道 0比较控制T3CC00xCD定时器 3定时器 3通道 0比较值T3CCTL10xCE定时器 3定时器 3通道 1比较控制T3CCTL10xCF定时器 3定时器 3通道 1比较值T4CNT0xEA定时器 4定时器 4计数器T4CTL0xEB定时器 4定时器 4控制T4CCTL00xEC定时器 4定时器 4通道 0比较控制T4CC00xED定时器 4定时器 4通道 0比较值T4CCTL10xEE定时器 4定时器 4通道 1比较控制T4CC10xEF定时器 4定时器 4通道 1比较值TIMIF0xD8TMINT定时器 134联合中断屏蔽标志
|
|