版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机原理与应用单片机原理与应用2 大课(1)单片机(2)8051单片机(3)8051 CPU核的内部结构(4)8051 CPU核的存储空间分布(重点、难点) 小课(1)实验硬件平台的熟悉(2)IAR开发环境的熟悉3本周教学主要内容本周教学主要内容 CC2530和8051的关系; CC2530结构; 物理存储器的映射(难点) CC2530 GPIO口编程(重点)4教学目标教学目标 理解理解cc2530 cc2530 物理存储器的映射;物理存储器的映射; 掌握掌握CC2530 GPIOCC2530 GPIO口控制原理和编程方法。口控制原理和编程方法。5 CC2530 8051 CPU 核核 RO
2、M(32K/64K/128K/256K) RAM(8K) IO接口电路 无线射频电路无线射频电路 51无线单片机无线单片机+ +5151单片机的相关知识上单片机的相关知识上次课我们已经讲过,单次课我们已经讲过,单片机和无线通信又如何片机和无线通信又如何中走在一起的呢?中走在一起的呢?6 80年代,当单片机技术已经广泛普及,8051如日中天的时候,手机还是价值万元的大砖头,语音通讯也只有8K/S的通讯速度,无线通讯技术还仅是美国摩托罗拉等巨头公司实验室里的前沿。 90年代,TI投入巨资,开发短距离通讯芯片,10年努力,却以失败告终,据统计,当时在美国进行无线产品的项目开发,有85%以上的开发项目
3、会失败。复杂的高频,昂贵的设备,完全被封锁的技术,无线似乎是在“天上”遥不可及。72003年挪威两家创新公司,CHIPCON (2006年被TI公司2亿美元收购)和Nordic 公司,采用CMOS高频技术将无线收发器完全集成到芯片内部,外部只有很少的元件, 电路板设计非常简化,并将8051单片机和高频电路进行集成,就诞生了单片机和高频电路进行集成,就诞生了”无线单片机无线单片机”。射频射频SoC 单片机单片机(简称无线单片机简称无线单片机)的出现,的出现,为不具备无线通讯经验和高频电路经验的电为不具备无线通讯经验和高频电路经验的电子工程师子工程师,提供了提供了 非常简单的解决方案。非常简单的解
4、决方案。1)专门的设计,将全部的高频部分电路集成到了电路内部,从无线单片机到天线之间专门的设计,将全部的高频部分电路集成到了电路内部,从无线单片机到天线之间,只有简单的滤波电路,系统设计者完成不必进行任何高频电路设计;,只有简单的滤波电路,系统设计者完成不必进行任何高频电路设计; 2)采用特殊设计,使采用特殊设计,使8051 的微处理器和高频线路间,实现完美的配合,数字电路对的微处理器和高频线路间,实现完美的配合,数字电路对高频通讯的影响减低到最小;高频通讯的影响减低到最小;3)设置了高频通讯的若干寄存器,将高频通讯的处理,简化为对寄存器的简单操作处设置了高频通讯的若干寄存器,将高频通讯的处理
5、,简化为对寄存器的简单操作处理,即你只需要对这理,即你只需要对这 些寄存器进行操作,就可以轻松完成无线通讯功能。代表作有些寄存器进行操作,就可以轻松完成无线通讯功能。代表作有NRF2401,CC1000,NRF905,CC1010,CC2430,CC2530. 4)高度集成高度集成SOC,简化了高频设计,使开发无线应用设计转移到以软件代码为中心;,简化了高频设计,使开发无线应用设计转移到以软件代码为中心; 5)大量低价格,直观显示为特点的无线开发、测试工具的诞生,使无线应用开发成本大量低价格,直观显示为特点的无线开发、测试工具的诞生,使无线应用开发成本大大降低;大大降低; 在家建立自己的无线开
6、发平台不是梦想;在家建立自己的无线开发平台不是梦想; 6)无线无线SOC得到了非常广泛应用,特别是无线鼠标,键盘和游戏摇杆等方面。得到了非常广泛应用,特别是无线鼠标,键盘和游戏摇杆等方面。 8 9CC2530CC2530的无线射频电路的无线射频电路IEEE:802.15.4IEEE:802.15.4的实现的实现Zstack/RemoteTI/TIMACZstack/RemoteTI/TIMAC等等无线应用程序无线应用程序我们程序员要完成的任务我们程序员要完成的任务注意:注意:CC2530CC2530内部除了无线射频电路外,还内部除了无线射频电路外,还有许多其他有许多其他IOIO电路。在一个具体
7、的应用中,它除了电路。在一个具体的应用中,它除了用作无线通信之外,还会用作数据的采集、设备的用作无线通信之外,还会用作数据的采集、设备的控制。控制。10- 10 -CC2530存储器及映射存储器及映射 CC2530物理存储器物理存储器CC2530存储空间存储空间映射映射存储器仲裁存储器仲裁11CC2530存储器及映射存储器及映射 物理存储器物理存储器SRAM 上电时,上电时,SRAM的内容未定义,在供电的情况下,的内容未定义,在供电的情况下,SRAM的内容被保留的内容被保留FLASH片上闪存存储器,主要为了保存程序和常量数据。片上闪存存储器,主要为了保存程序和常量数据。FLASH由一组由一组2
8、KB的页面组成的页面组成 信息信息页面页面信息页面是一个信息页面是一个2KB的只读区域,它的主要作用是存储全球唯一的的只读区域,它的主要作用是存储全球唯一的IEEE地址地址 12- 12 -CC2530存储器及映射存储器及映射 物理存储器物理存储器SFR控制控制8051CPU内核或外设的一些功能内核或外设的一些功能 XREG 是是SFR的扩展寄存器,比如射频寄存器,访问速度比的扩展寄存器,比如射频寄存器,访问速度比SFR要慢要慢 13- 13 -CC2530存储器及映射存储器及映射存储空间存储空间CODE程序存储器,只读存储空间,用于存放程序代码和一些常量,有程序存储器,只读存储空间,用于存放
9、程序代码和一些常量,有16根根地址总线,寻址范围为地址总线,寻址范围为0 x00000 xFFFF共共64KB DATA数据存储器,可读数据存储器,可读/写的数据存储空间,用于存放程序运行过程中的数据。有写的数据存储空间,用于存放程序运行过程中的数据。有8根根地址总线,因此寻址空间为地址总线,因此寻址空间为0 x000 xFF,共,共256个字节个字节 XDATA外部数据存储器,可读外部数据存储器,可读/写的数据存储空间,主要用于写的数据存储空间,主要用于DMA寻址。有寻址。有16根地址总根地址总线,寻址空间是线,寻址空间是0 x00000 xFFFF共共64KB SFR特殊功能寄存器,可读特
10、殊功能寄存器,可读/写的寄存器存储空间,共有写的寄存器存储空间,共有128字节。对于地址是被字节。对于地址是被8整整除的除的SFR寄存器,每一位还可以单独寻址寄存器,每一位还可以单独寻址 14CC2530存储器及映射存储器及映射 物理存储器与存储空间的关系物理存储器与存储空间的关系存储空间只是存储空间只是4种不同的寻址方式概念,并不代表物理具体种不同的寻址方式概念,并不代表物理具体上的存储设备,只是存储空间的概念;而上的存储设备,只是存储空间的概念;而FLASH、SRAM、EEPROM等是具体的物理存储设备。他们两者之间的关系等是具体的物理存储设备。他们两者之间的关系是通过映射来联系起来的。例
11、如是通过映射来联系起来的。例如FLASH或者或者EEPROM都可都可以作为物理存储媒介映射到以作为物理存储媒介映射到CODE上。上。 15- 15 -CC2530存储器及映射存储器及映射映射映射映射就是将映射就是将CC2530的物理存储器映射到其存储空间上,的物理存储器映射到其存储空间上,有两个作用:有两个作用: 方便方便DMA访问访问存储设备存储设备 可在可在CODE区执行区执行FLASH或或SRAM中的中的代码代码 16CC2530存储器及映射存储器及映射映射的两种形式映射的两种形式CODE存储器映射存储器映射 XDATA存储器映射存储器映射17CC2530存储器及映射存储器及映射 COD
12、E存储器映射存储器映射l CODE存储器映射具有两个功能:存储器映射具有两个功能:l 一是将一是将FLASH映射至映射至CODE存储空间;存储空间;l 二是执行来自二是执行来自SRAM的代码(将的代码(将SRAM映射至映射至CODE存储空间)存储空间) 18- 18 -CC2530存储器及映射存储器及映射 FLASH映射映射CODE的寻址空间为的寻址空间为64KB,而对于,而对于CC2530F256设备来说设备来说FLASH的的存储空间为存储空间为256KB首先要解决存储空间不对称的问题首先要解决存储空间不对称的问题 CC2530将将FLASH存储器分为几个存储器分为几个bank,每个每个ba
13、nk的大小是的大小是32KB。对于对于CC2530F256设备来说,它有设备来说,它有8个个bank,分别为,分别为bank0bank7。通过操作寄存器通过操作寄存器FMAP.MAP2:0来控制来控制将哪个编号的将哪个编号的bank映射到映射到CODE区域区域 只针对只针对CC2530F32这款这款芯片,因为这款芯片的的芯片,因为这款芯片的的FLASH只有只有32KB虽然这里有虽然这里有bank0区域,但区域,但是映射的时候是映射的时候bank0总映射总映射的根部的低的根部的低32KB区域区域19- 19 -CC2530存储器及映射存储器及映射 SRAM映射映射为了便于在为了便于在SRAM中执
14、行代码,可以将中执行代码,可以将SRAM映射到映射到CODE存储空间的存储空间的0 x8000(0 x8000+SRAM_SIZE-1)的区域)的区域 虽然程序从虽然程序从SRAM中运行代码,但中运行代码,但是并不代表程序是从是并不代表程序是从SRAM中启动中启动的。程序仍旧是从的。程序仍旧是从CODE的普通区的普通区域域0 x0000开始执行,当程序执行到开始执行,当程序执行到0 x8000时,将执行时,将执行SRAM中的代码中的代码 20- 20 -CC2530存储器及映射存储器及映射SRAM映射映射为了方便为了方便DMA控控制器能访问所有制器能访问所有的物理存储空间,的物理存储空间,CC
15、2530把所有把所有的物理存储器以的物理存储器以及寄存器都映射及寄存器都映射到到XDATA上,上,包括包括CODE和和SFR部分存储空间部分存储空间 。21- 21 -CC2530存储器及映射存储器及映射 XDATA包含了所有物理存储器的映射,包括包含了所有物理存储器的映射,包括8KB的的SRAM存储器、存储器、XREG、SFR、信息页面和、信息页面和FLASH存储器存储器 l SRAM映射的地址范围是映射的地址范围是0 x0000到到SRAM_SIZE-1。其中。其中SRAM较高的较高的256字字节映射到节映射到DATA存储空间存储空间8位地址区域,即地址范围从位地址区域,即地址范围从SRA
16、M_SIZE-256到到SRAM_SIZE-1 l XREG区域映射到区域映射到1KB地址区域地址区域0 x6000-0 x63FF l SFR寄存器映射到地址区域寄存器映射到地址区域0 x7080-0 x70FF。128个条目的硬件寄存器区域是个条目的硬件寄存器区域是通过这一存储空间访问的。闪存信息页面通过这一存储空间访问的。闪存信息页面2KB映射到地址区域映射到地址区域0 x7800-0 x7FFF。这是一个只读区域,包含有关设备的各种信息。这是一个只读区域,包含有关设备的各种信息 l 信息页面映射到地址区域信息页面映射到地址区域0 x78000 x7FFF l XBANK为为CODE存储
17、空间的存储空间的bank07区域的映射,其地址仍然是区域的映射,其地址仍然是0 x80000 xFFFF。可以配置存储器控制寄存器。可以配置存储器控制寄存器MEMCTR.XBANK2:0(详见(详见存储器仲裁)决定选择映射存储器仲裁)决定选择映射bank0bank7之间的哪个区域,比如之间的哪个区域,比如MEMCTR.XBANK=001,则映射,则映射bank1区域区域 22- 22 -CC2530存储器及映射存储器及映射 存储器仲裁存储器仲裁 l 主要功能是解决主要功能是解决CPU与与DMA访问所有物理存储器(除了访问所有物理存储器(除了CPU内部寄内部寄存器)之间的冲突问题。当存器)之间的
18、冲突问题。当CPU和和DMA之间发生冲突时,之间发生冲突时,“存储器存储器仲裁仲裁”停止停止CPU或或DMA的总线的总线 l 存储器仲裁主要有两个寄存器:存储器仲裁控制寄存器存储器仲裁主要有两个寄存器:存储器仲裁控制寄存器MEMCTR和和闪存区映射寄存器闪存区映射寄存器FMAP,这两个寄存器用于控制存储器子系统的各,这两个寄存器用于控制存储器子系统的各个方面个方面 23- 23 -CC2530存储器及映射存储器及映射 存储器仲裁控制寄存器存储器仲裁控制寄存器MEMCTR l MEMCTR.XMAP必须设置以使得程序从必须设置以使得程序从SRAM执行;执行;MEMCTR.XBANK决决定定XDA
19、TA的高的高32KB映射映射CODE存储空间的哪个存储空间的哪个bank区域区域 24- 24 -CC2530存储器及映射存储器及映射 闪存区映射寄存器闪存区映射寄存器FMAP l 闪存区映射寄存器闪存区映射寄存器FMAP控制物理控制物理32KB代码区映射到代码区映射到CODE存储空存储空间的程序地址区域间的程序地址区域0 x8000-0 xFFFF 即最底部的即最底部的32KB区域区域(0 x00000 x7FFF)25 作为一个单片机或 嵌入式编程人员,毋容置疑需要熟悉系统中物理存储器所映射的存储空间,更需要清楚自己程序里的对象(变量、函数、参数)所分配的具体存储空间。 对象空间的缺省分配
20、方式可以通过IAR中的如下界面设置:Code modelCode model负责函数的缺省分配方式;负责函数的缺省分配方式;Data modelData model负责静态局部变负责静态局部变量和全局变量的缺省分配方式;量和全局变量的缺省分配方式;Calling conventionCalling convention负责函数局部负责函数局部变量和参数的缺省分配方式;变量和参数的缺省分配方式;Location for constants and strLocation for constants and str负负责常量和字符串的缺省分布方式责常量和字符串的缺省分布方式26 Data mode
21、l分配表 Code model分配表27 Calling convention28n当我们要改变对象的缺省分配方式时,可以声明对象是通过添加一个memory type修饰,使对象具有一个新的存储类型。 不同的存储类型意味对应存储空间、寻址方式、指针类型不一样不同的存储类型意味对应存储空间、寻址方式、指针类型不一样29n例如: (1)_xdata int x; 整型变量x将被分配在XDATA存储空间; (2)_data int x; 整型变量x将被分配在DATA存储空间;n我们在实际编程过程中,如何选取对象的存储类型,应该尽量使用访问效率高的memory type;一般说来,寻址空间越大的mem
22、ory type访问效率越低。具体存储类型的用法将在下次大课时候再讲! 30 CC2530共有21个可用作数字输入、输出管脚或者其他外围设备管脚,主要特性如下: (1)数字输入、输出; (2)可以作为普通的输入、输出管脚或其他外围设备管脚; (3)管脚内部具有上下拉电阻(输入时才有用); (4)可用作外部中断输入; 其中,(3)特性少数管脚没有;GPIO口作为外围设备管脚的具体配置可参加CC2530的数据手册73页的Table 7-1;31n21个管脚被分成了3组(1)P0组:8个管脚分别是P0_0-P0_7;(2)P1组:8个管脚分别是P1_0-P1_7;(3)P2组:5个管脚分别是P2_0
23、-P2_4nGPIO口用作普通IO口的应用场合(1)外部设备所要求的通信速率较低低;(2)通信协议简单,例如和发光二极管、按键、继电器等简单设备的通信32n在计算系系统中,一个再复杂的IO接口电路面向CPU的一面都是一组特殊功能寄存器SFR;nCPU 通过读、写与IO接口相关联的一组SFR来间接和连在IO接口上的外部设备进行信息交换;n普通的输入、输出管脚的编程,主要涉及如下几个sfr(8位): PxSEL:每位所对应的管脚时普通IO还是外围设备IO; Px: 每位的值和对应管脚的电平一致; PxDIR:每位对应管脚是输入还是输出; PxINP:管脚拉电阻选择这里x可以为0,1,233PxSe
24、l:PxSel: 7 6 5 4 3 2 1 7 6 5 4 3 2 1 0 0例:例:PxDIR:PxDIR: 7 6 5 4 3 2 1 07 6 5 4 3 2 1 0例:例:Px:Px: 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 034nCC2530 GPIO普通输入、输出的编程步骤: (1)设置PxSEL,选择管脚功能; (2)设置PxDIR,选择管脚方向; (3)设置Px为管脚的初始状态; n特殊功能寄存器位于8051 CPU存储空间的SFR区域,You cannot create a pointer to an object located in SFR mem
25、ory!也就是说,尽管知道了P0SEL的地址为0 xf3,但我们却无法通过指针来访问它!nCC2530中的特殊功能寄存器以及其中的每一位在其头文件iocc2530.h中已经定义好了,我们直接拿来使用就行了如 :P0SEL P0DIR P0 P0_0等。 n位运算要非常熟悉:& | 35 本次课开始主要讲述了本次课开始主要讲述了CC2530CC2530的物理存储器如的物理存储器如何映射到存储空间,理解这种映射关系是编程时何映射到存储空间,理解这种映射关系是编程时正确、有效地使用存储器的前提;接着又这种了正确、有效地使用存储器的前提;接着又这种了学习了学习了CC2530CC2530最简单的片上资源最简单的片上资源GPIOGPIO口的控制原口的控制原理和编程方法,理和编程方法,GPIOGPIO口的正确使用将为后面复杂口的正确使用将为后面复杂的片上的片上IOIO接口打下坚实的基础。接口打下坚实的基础。36查阅资料理解查阅资料理解IOCC2530.hIOCC2530.h中关于定义特殊功能寄存器、特殊功能寄存器位的宏:中关于定义特殊功能寄存器、特殊功能寄存器位的宏
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 员工试用期个人工作总结15篇
- 呼兰河传读后感3篇
- 总装技能提升练习卷含答案
- 人才库经营复习试题及答案
- 落地式砂轮机安全检查要点总结
- 语文统编版(2024)一年级上册汉语拼音2.iuü 教案
- 《学前儿童卫生保健》 教案 7 学前儿童的生长发育及健康评价
- 高中英语语法情态动词
- 第1章 绪论 企业经营统计学课件
- 大学校园环境建设的调查报告
- 艺术:让人成为人
- 小学道德与法治-《平安出行》教学课件设计
- 初中体育 田径作业的有效设计
- 慢性阻塞性肺病疾病护理计划单
- 颞下颌关节盘复位固定术后护理查房
- 历年北京市中小学生天文观测竞赛-天文知识-小学组
- 危重新生儿救治中心工作手册-(制度、职责、预案、流程、诊疗规范)
- 外科学急腹症课件
- 培训课件行政事业单位国有资产管理
- 口腔科护士聘用合同范本
- 2023年辅警法律基础知识及执法依据知识考试题库(附答案)
评论
0/150
提交评论