CC3200 wifi应用基础——中文教程

CC3200 wifi应用基础——中文教程

1   CC3200 简介
CC3200 TI 无线连接 SimpleLink Wi-Fi 和物联网( IoT )解决方案最新推出的一款单片无线 MCU ,是业界第一个具有内置 Wi-Fi MCU ,是针对物联网应用、集成高性能 ARM Cortex-M4 的无线 MCU 。客户能够使用单个集成电路开发整个应用,借助片上 Wi-Fi 、互联网和强大的安全协议,无需 Wi-Fi 经验即可实现快速的开发。 CC3200 是一个完整平台解决方案,其中包括软件、示例应用、工具、用户和编程指南、参考设计以及 TI E2E 支持社区。 CC3200 采用易于布局的四方扁平无引线( QFN )封装。
CC3200 硬件概况和嵌入式软件概况如图 1.1 所示。    
  
CC3200 wifi应用基础——中文教程_第1张图片
1.1  CC3200 硬件概况和嵌入式软件概况
CC3200 包括应用 MCU Wi-Fi 网络处理器( CC3100 )和电源管理 3 大部分。
应用 MCU 包含一个运行频率为 80MHz 的行业标准 ARM Cortex-M4 内核,包含用于存放代码和数据的内部 RAM 以及存放启动引导程序和外设驱动程序的 ROM ,还包含 GPIO UART SPI I2C I2S/PCM SD/MMC PWM ADC 等多种片内外设。
Wi-Fi 网络处理器( CC3100 )包含一个 Wi-Fi 片上互联网和一个可完全免除应用 MCU 处理负担的专用 ARM MCU Wi-Fi 片上互联网包含 Wi-Fi 射频、基带和具有强大加密引擎的 MAC ,可以实现支持 256 位加密的快速安全的互联网连接。 Wi-Fi 片上互联网还包括嵌入式 TCP/IP TLS/SSL 协议栈、 HTTP 服务和多种应用协议。 CC3200 支持站点、接入点和 Wi-Fi 直连 3 种模式,支持 WPA2 个人和企业安全性以及 WPS2
电源管理包括支持宽电源电压范围的集成直流 - 直流转换器,可以启用低功耗模式(包括睡眠、深睡眠、低功耗深睡眠和休眠等),具有 RTC 的休眠模式所需电流少于 4 m A
1.1   应用 MCU
CC3200 应用 MCU 的特性如下:
 ARM Cortex-M4 内核,运行频率 80MHz    内部存储器
     RAM :存放代码和数据,容量多达 256KB
     ROM :存放启动引导程序和外设驱动程序,容量为 64KB    针对高级快速安全性的硬件加密引擎       AES DES 3DES      SHA2 MD5       CRC 和校验和
  多达 27 个独立可编程、可复用的通用输入输出( GPIO )引脚    2 个通用异步收发器接口( UART    1 个串行外设接口( SPI
 1 个内部集成电路总线接口( I2C    1 个多通道音频串行接口( McASP ),支持 2 I2S 通道    1 SD/MMC 接口  8 位并行摄像头接口    4 个通用定时器( GPT ),支持 16 位脉冲宽度调制( PWM )模式    4 通道 12 位模数转换器( ADC
 32  通道微型直接存储器存取(m DMA
1.1.1  ARM Cortex-M4
高性能 ARM Cortex-M4 提供低成本的平台,能够实现最小的内存需求,减少引脚数和降低功耗,同时提供卓越的计算性能和系统中断响应。
ARM Cortex-M4 的特性如下:     卓越的性能
      针对嵌入式应用优化的 Thumb 指令集        处理程序和线程模式
      进入和退出中断处理程序时自动保存和恢复处理器状态        支持 ARMv6 非对齐访问
  嵌套向量中断控制器( NVIC )与处理器内核的紧密结合实现低延迟中断处理       3-8 位优先级配置
      动态重新分配中断优先级
      中断优先级分组允许选择中断优先级分组和中断子优先级的数量        支持咬尾和迟到中断,允许没有状态保存和恢复开销的连续中断处理        没有指令开销的处理器状态自动保存和恢复
      唤醒中断控制器( WIC )提供超低功耗睡眠模式支持
  总线接口
     3 个先进高性能总线( AHB )接口: ICode DCode 和系统总线接口        存储器和外设位带( Bit-band )支持,包括原子位带读写操作     低成本调试方案
      调试可以访问系统中的所有存储器和寄存器
      支持串行调试端口( SW-DP )和串行 JTAG 调试端口( SWJ-DP        闪存补丁和断点( FPB )单元实现代码补丁和断点
1.1.2   存储器
CC3200 应用 MCU 的存储器包括外部存储器和内部存储器。  1 .外部存储器
CC3200 在外部存储器(串行闪存 SFLASH )中保存特有的文件系统,包括服务包文件、系统文件、配置文件、证书文件、网页文件和用户文件等。
用户可以使用格式化命令 API 分配文件系统的总容量,文件系统的起始地址固定在 SFLASH 的开始。应用 MCU 不能直接访问 SFLASH ,必须通过文件系统访问分配给文件系统的 SFLASH 区域。
文件系统按照下载顺序管理存储文件 SFLASH 块的分配,这意味着系统中特定文件的位置不固定。存储在 SFLASH 中的文件使用直观的文件名而不是文件标识。文件系统 API 使用纯文本,文件加密和解密用户不可见,加密文件只能通过文件系统进行访问。
文件系统中所有文件类型可以支持多达 128 个文件,文件存储的最小单元是 4KB ,带有安全保障和安全选项的加密文件存储的最小单元是 8KB ,最大的文件大小是 16MB
2 .内部存储器
内部存储器包括 RAM (静态存储器 SRAM )和 ROM    SRAM
CC3200 包含片上 SRAM 供应用程序下载和执行,应用程序开发者必须共享 SRAM 用于代码和数据。微型直接存储器存取(m DMA )控制器可以在 SRAM 和外设间传输数据。 CC3200 ROM 中拥有丰富的外设驱动程序,可以节省 SRAM 空间。
CC3200 提供多达 256KB 零等待状态内部 SRAM ,能够在低功耗深睡眠( LPDS )模式下有选择地保留。 SRAM 在存储器映像中的偏移地址是 0x2000 0000
 ROM
CC3200 的内部零等待状态 ROM 的起始地址是 0x0000 0000 ,编程有下列组件:     启动引导程序( Bootloader   外设驱动程序( DriverLib
启动引导程序用作串行闪存为空时的初始引导程序,外设驱动程序为片内外设提供启动引导能力,实现片内外设的初始化和控制功能,支持查询或中断操作。 ROM 中的外设驱动 API 可以被应用程序调用,以减少闪存的需求,多出的闪存可以用于其他目的。
  存储器映像
CC3200 存储器映像如表 1.1 所示,其中包含各种外设在存储器的映像地址。
CC3200 wifi应用基础——中文教程_第2张图片
CC3200 wifi应用基础——中文教程_第3张图片
5
1.1.3   片内外设
CC3200 支持下列片内外设接口和外设:     通用输入输出接口( GPIO     串行异步收发器接口( UART     串行外设接口( SPI
  内部集成电路总线接口( I2C     多通道音频串行接口( McASP    SD/MMC 接口     并行摄像头接口     通用定时器( GPT     模数转换器( ADC
  微型直接存储器存取(m DMA     通用输入输出接口( GPIO
通用输入输出接口( GPIO )分为 4 组,每组 8 个。根据外设用途的不同, GPIO 支持 27 个可编程 GPIO 引脚,每个 GPIO 引脚可配置为 10 μ A 上拉或下拉,驱动能力可配置为 2mA 4mA 6mA ,也可配置为开漏输出。
  串行异步收发器接口( UART
串行异步收发器接口( UART )具有可编程波特率发生器,允许速度高达 3Mbps ,标准的异步通信起始位、停止位和奇偶校验位,使用m DMA 可以实现高效传输。
  串行外设接口( SPI
串行外设接口( SPI )可以配置为主设备或从设备,主设备串行时钟的频率、极性和相位可编程,片选和外部时钟的定时控制可编程,第一个发送字前的延时可编程。
  内部集成电路总线接口( I2C
内部集成电路总线接口( I2C )通过两根串行线可以在单个接口上连接多种 I2C 外设,可以工作在标准模式( 100Kbps )或快速模式( 400Kbps )。
  多通道音频串行接口( McASP
多通道音频串行接口 McASP 作为通用音频串行接口,为多通道音频应用优化,支持通过两个数据引脚进行立体声传输,发送和接收部分可同步工作。
 SD/MMC 接口
SD/MMC 接口用于连接大容量 SD 卡存储器,支持 1 位数据模式。     并行摄像头接口
并行摄像头接口可以连接各种外部图像传感器,图像数据存放在 FIFO 中,可以产生 DMA 请求,数据宽度是 8 位。
  通用定时器( GPT
通用定时器( GPT )可以对输入引脚上的外部事件进行计数或计时,并可以产生脉冲宽度调制( PWM )信号从输出引脚上输出。
  模数转换器( ADC
模数转换器( ADC )的主要功能是将连续的模拟信号转化为离散的数字信号,以便于微控制器进行数据处理
6
  微型直接存储器存取(m DMA
微型直接存储器存取(m DMA )将 Cortex-M4 从数据传输任务中解脱出来,实现外设和存储器之间或者存储器和存储器之间的批量数据传输。
1.2  Wi-Fi 网络处理器( CC3100
CC3200 Wi-Fi 网络处理器( CC3100 )可以提供快速安全的 WLAN 和因特网连接,支持站点、接入点和 Wi-Fi 直连 3 种模式,特性如下:
  特有 Wi-Fi 片上互联网( Internet-On-a-Chip
  专用 ARM MCU ,完全免除应用 MCU Wi-Fi  和互联网协议处理负担    Wi-Fi 和互联网协议存放在 ROM 
  包含 802.11b/g/n 射频、基带、 MAC Wi-Fi  驱动和 Supplicant   TCP/IP 协议栈
      行业标准 BSD 套接字应用编程接口( API        同时 8 TCP UDP 套接字        同时 2 TLS SSL 套接字
  强大的加密引擎,可以实现支持 256  AES 加密的快速安全的互联网连接     站点( STA )、接入点( AP )和 Wi-Fi  直连( P2P )模式    WPA2 个人和企业安全性
  用于自主和快速 Wi-Fi 连接的 SimpleLink 连接管理器
  用于简单灵活 Wi-Fi 配置的智能配置( SmartConfig )技术、 AP 模式和 WPS2    发射功率
     18.0dBm @ 1 DSSS (直序扩频)
     14.5dBm @ 54 OFDM (正交频分复用)     接收灵敏度
     -95.7dBm @ 1 DSSS (直序扩频)
     -74.0dBm @ 54 OFDM (正交频分复用)
Wi-Fi 网络处理器( CC3100 )支持的主要特性如表 1.2 所示。
CC3200 wifi应用基础——中文教程_第4张图片
1.3   电源管理
CC3200 电源管理的特性如下:
  集成直流 - 直流转换器,支持宽范围的电源电压       VBAT 宽电压模式: 2.1V 3.6V       预稳压 1.85V 模式     高级低功耗模式
      休眠( Hibernate ): 4 μ A       低功耗深睡眠( LPDS ): 120 μ A      RX MCU 活动): 59mA @ 54 OFDM      TX MCU 活动): 229mA @ 54 OFDM ,最大功率        空闲连接( MCU 处于 LPDS ): 695 μ A @ DTIM = 1
从电源管理的角度看, CC3200 的应用 MCU Wi-Fi 网络处理器( CC3100 )是独立的,应用 MCU 运行从外部串行闪存装入的用户应用程序, Wi-Fi 网络处理器( CC3100 )运行预编程的 TCP/IP Wi-Fi 数据链路层函数。
用户程序控制应用 MCU 的电源状态,可以有下列 4 种电源模式:    MCU 活动( Active )模式: MCU 80MHz 主频执行程序
 MCU 睡眠( Sleep )模式: MCU 时钟被禁止,设备状态被保留。睡眠模式提供即时唤醒功能,可以通过内部定时器、 GPIO 引脚或外设唤醒
 MCU 低功耗深睡眠( LPDS )模式:状态信息丢失,只有某些 MCU 特定的寄存器配置被保留。 MCU 可以通过内部定时器或 GPIO0-6 上的外部事件唤醒,唤醒时间小于 3ms 。存储器的某些部分可以被保留,保留存储器的数量可配置,用户可以选择保存代码或 MCU 特定的设置
 MCU 休眠( Hibernate )模式:最低功耗模式,只有一小部分直接由输入电源供电的逻辑被保留,实时时钟( RTC )保持运行, MCU 可以通过 RTC 超时或 GPIO0-6 上的外部事件唤醒,唤醒时间比 LPDS 模式长 15ms 加上从串行闪存加载应用程序的时间
Wi-Fi 网络处理器( CC3100 )可以按照自己的模式活动或低功耗深睡眠,当没有网络活动时, Wi-Fi 网络处理器( CC3100 )大部分时间睡眠,只有接收信标时唤醒。
Wi-Fi 网络处理器( CC3100 )有下列 6 种电源模式:     网络活动模式(处理低 3 层):发送或接收 IP 协议数据包   网络活动模式(处理低 2 层):发送或接收 MAC 管理帧,不需要 IP 处理
  网络活动监听模式:特殊的功耗优化活动模式,用于接收信标帧,不支持其他帧     网络连接空闲模式:实现 802.11 节能操作的复合模式。网络处理器( CC3100 )在信标间自动进入 LPDS 模式,接收信标时进入活动监听模式,通过信标确定接入点是否有数据传送,如果没有,网络处理器( CC3100 )返回 LPDS 模式
  网络低功耗深睡眠( LPDS )模式:信标间的低功耗状态,状态由网络处理器( CC3100 )保留,允许快速唤醒
  网络禁用模式:网络处理器( CC3100 )不可用
应用 MCU 和网络处理器( CC3100 )的操作应确保设备大部分时间停留在最低功耗模式,以延长电池寿命。 CC3200 重要的片级电源模式如表 1.3 所示。
1.3   片级电源模式
电源状态   网络活动模式   网络 LPDS 模式   网络禁用模式  MCU 活动模式   芯片  =  活动( C   芯片  =  活动   芯片  =  活动  MCU LPDS 模式   芯片  =  活动( A
芯片  = LPDS B
芯片  = LPDS MCU 休眠模式
不支持
不支持
芯片  =  休眠( D
CC3200 wifi应用基础——中文教程_第5张图片
应用程序中电源模式的使用例子如下:
  设备一直连接到网络,但只发送和接收少量数据,大部分时间连接空闲:使用模式 A (接收信标帧)和模式 B (等待下一个信标)
  设备不一直连接到网络,而是周期唤醒(例如间隔 10 分钟)发送数据,大部分时间在模式 D (休眠):短暂跳到模式 C 传输数据
1.4   引脚复用
CC3200 广泛使用引脚复用功能,以便在尽可能小的封装内容纳大量的外设。为了实现这种结构,引脚复用使用硬件配置和寄存器控制相结合的方法进行控制。
注意: TI 强烈建议使用 CC3200 引脚复用实用工具 PinMux 获得需要的引脚配置!   引脚复用需要特别注意下列事项:
  所有 I/O 引脚支持 2mA 4mA 6mA 驱动能力,每个引脚的驱动能力独立配置     所有 I/O 引脚支持 10 μ A 上拉和下拉,默认不激活     所有 I/O 引脚在设备处于休眠状态时保持浮空    VIO VBAT 必须始终接在一起
CC3200 引脚复用功能参见附录 C ,外设引脚分配参见附录 D

你可能感兴趣的:(wifi)