物联网实训开发
2012年12月
CC2530 基础实验
6.1 CC2530简介
6.1. 1 CC2530概述
图1-1 的方块图列出了CC2530的内部构造模块。
1.1 CPU和存储器
CC2530芯片中使用的是8051CPU核心是一个单周期的8051兼容核心。它有3个不同的存储器访问总线(特殊功能寄存器SFR、数据DATA和代码/外部数据CORE/XDATA),单周期访问SFR,DATA和主SRAM,它还包含一个调试接口和扩展的18路输入中断单元。
中断控制器共有18个中断源,分为6个中断组,每个中断组赋值为4个中断优先级之一。当该设备处于空闲模式,任何的中断可以把CC2530恢复到主动模式。某些中断还可以将设备从睡眠模式(功耗模式1-3)唤醒。
存储器交叉开关/仲裁是位于系统核心,它通过SFR总线将CPU和DMA控制器与物理存储器和所有的外接设备连接起来。存储器仲裁有4个存储器访问点,访问可以被映射到3个物理存储器中的一个:1个8KB SRAM,Flash存储器和XREG/SFR存储器。存储器仲裁负责访问到一个物理存储器的同步存储器访问进行仲裁和排序。
8KB SRAM映射到数据存储空间和部分外部数据存储空间。8KB SRAM是一个超低功耗的SRAM,甚至当数字部分掉电后(功耗模式2和3)它也能保持它的数据。对于低功耗应用,这是一个很重要的特性。
1.2 时钟和电源管理
数字内核和外部设备由一个1.8V低差稳压供电。它提供了电源管理功能,可以实现使用不同的功耗模式以达到低功耗运行,来延长电池寿命。复位设备有5种不同的复位电源。
1.3 外部设备
CC2530包括许多不同的外部设备,使得应用程序开发者可以进行高级应用程序开发。
调试接口实现了一个专用的两线串行接口来进行调试。通过调试接口可以对Flash存储器进行全片擦除,控制启动哪一个振荡器,停止和开始执行用户程序,在8051内核上执行供电指示,设置代码断点,在代码中通过指令进行单步调试。利用这些特性可以完美的实现在电路调试和外部Flash编程。
CC2530包含用于存储程序代码的Flash存储器。通过调试接口用软件可以对Flash存储器进行编程。Flash控制器处理对嵌入式Flash存储器的写和擦除。Flash 控制器允许页擦除和4字节擦除。
I/O控制器负责所有通用I/O引脚。CPU可以配置某些引脚是否外部设备模块控制、由软件控制每个引脚的输入和输出,每个引脚上单独使能CPU中断。每个连接到I/O引脚的外部设备可以在两种不同的I/O引脚位置进行选择以确保在各种应用中的灵活性。
系统能有一个通用的5通道的DMA控制器,并且使用外部数据存储器空间来访问存储器,因此可以访问所有物理存储器。每个通道可以在存储器的任何位置用DMA描述来配置(触发、优先顺序、传输模式、寻址方式、源指针和目的指针、传输计数)。很多硬件外接设备(AES核心、Flash控制器、USART、定时器、ADC接口)依靠DMA控制器在SFR或XREG
地址和Flash/SRAM之间的数据传输来有效运行。
定时器1是一个16位的定时器,具有定时器/计数器/脉宽调制功能。它有一个可编程的分频器,1个16为周期值和4个单独可编程计数器/捕获通道,每一个通道有一个16位比较值。
图1-1 CC2530方块图
每个计数器/捕获通道可以用来当作PWM输出或用来捕捉输入信号的边沿时间,它
还可以在IR产生模式里进行配置,用来计算定时器3的周期,输出是同定时器3的输出相与,以产生具有最小CPU相互影响的已调制的用户IR信号。
定时器2(MAC 定时器)是为支持一个IEEE 802.15.4 MAC或其他软件中时间跟踪协议而特别设计的。该定时器具有一个可配置时间周期和一个可以用来记录已经发生的周期数轨道的8位溢出计数器。它还有一个16位捕捉寄存器,用来记录一个帧的开始定界符接收/
发送的精确时间或者传输完成的精确时间,以及一个可以在特定时间对无线模块产生的各种命令选通信号的16位输出比较寄存器。
定时器3和定时器4是8位定时器,具有定时器/计数器/PWM功能。它们有一个可编程的分频器,一个8位周期值和一个具有8位比较值的可编程计数信道。每一个计数信道可以被用来当作PWM输出。
睡眠定时器是一个超低功耗定时器,计数32KHz晶体振荡器或32KHz RC振荡器周期。睡眠定时器在所有运行模式下(除了功耗模式3)都可以连续运行。睡眠定时器的典型应用是被当作一个实时计数器,或者被当作一个唤醒定时器来离开功耗模式1或2,。
ADC在理想的32KHz~40KHz带宽下支持7~12位的分辨率。直流和音频转换最多可达8个输入通道。输入可以被选择为单端输入或者差分输入。参考电压可以是内部AVDD,或者一个单端或者差分外部信号。ADC也有温度传感器输入通道。ADC可以自动操作定时器采样过程或者通道序列转换过程。
随机数发生器使用一个16位线性反馈移位寄存器(LFSR)来产生随机数,它可以被CPU读取或者被命令选通处理器直接使用。随机数可以被用来安全机制所需要产生的随机数密钥。
AES加密/解密核心允许用户128位密钥的AES算法来加解密数据。该核心可以支持IEEE802.15.4 MAC安全、ZigBee网络层和应用层所需要的AES操作。
内置看门狗定时器允许CC2530在固件挂起时复位自己。当通过软件使能时,看门狗定时器必须被周期性擦除,否则时间一到它就会复位设备。或者它可以被配置为作为一般32KHz定时器使用。
USART0和USART1均可以配置为一个主/从SPI或一个UART。它们提供在接收和发送时的双缓冲和硬件流控制,因而非常适合于大吞吐量的全双工应用。每一个都有它自己的高精度的波特率发生器,因此可以解放普通计数器出来其他用途。
1.1.4 无线
CC2530具有一个IEEE802.15.4标准的无线收发器。RF核心控制模拟无线模块。另外,它为MCU和无线之间提供了一个接口,以使得可以发送命令、读取状态、自动操作和对无线事件进行排序。无线部分还包括一个数据包过滤和地址识别模块。
6.1.2 引脚和I/O端口配置
CC2530引脚对应的功能如表1-1所示。
表1-1 引脚功能表
引脚名称 AVDD1 AVDD2 AVDD3 AVDD4 AVDD5 AVDD6 DCOUPL DVDD1 DVDD2 GND GND P0_0 P0_1 P0_2 P0_3 P0_4 P0_5 P0_6
引脚号 28 27 24 29 21 31 40 39 10 - 1,2,3,4 19 18 17 16 15 14 13 引脚类型 电源(模拟) 电源(模拟) 电源(模拟) 电源(模拟) 电源(模拟) 电源(模拟) 电源(数字) 电源(数字) 电源(数字) 地 未使用 数字I/O口 数字I/O口 数字I/O口 数字I/O口 数字I/O口 数字I/O口 数字I/O口 描述 2.0-3.6V模拟电源供电 2.0-3.6V模拟电源供电 2.0-3.6V模拟电源供电 2.0-3.6V模拟电源供电 2.0-3.6V模拟电源供电 2.0-3.6V模拟电源供电 1.8V数字电源供电退耦。提供外部电路未使用 2.0-3.6V数字电源供电 2.0-3.6V数字电源供电 芯片底部焊盘必须连接到PCB的接地层 连接到底 端口P0_0 端口P0_1 端口P0_2 端口P0_3 端口P0_4 端口P0_5 端口P0_6