CC3200学习总结

CC3200学习总结

之所以会出现这么一篇博文,其实是给自己提个醒,答应师兄一个月把这个系统调试出来的狂言,如果再不付诸于实践,怎么对得起年少轻狂的豪气!核心目的,还是给自己施加一些压力,毕竟这么多人都看着呢!!!这个项目是需要点进度了。

课题背景:

开发板全称: CC3200-LAUNCHXL

开发板的上市时间: 2018年

生产厂家: TI (德州仪器)

目前的应用范畴: WiFi应用微处理器

官方成本: 215RMB

补充现阶段的发展状况:

最新的开发板平台:CC3220SF-LAUNCHXL 价格:385RMB

硬件资源:

具有1MB闪存,256KB的RAM

可以使用在线的编译环境 Code Composer Studio Cloud

使用范围

基于物联网使用

开发环境

编程器:CCS、IAR

硬件资源:

  • 集成了Wi-Fi网络处理器子系统和ARM微控制器单元(Cortex_M4)

  • 外部引脚:20个

  • 板载有传感器、LED和独立按键

  • 对于ARM微控制器单元处理器

    • GPIO
    • UART

  • 对于Wi-Fi网络处理器子系统

    • simplelink

资料搜集:

有没有成熟的开发板厂商?

  1. 官方提供了40多个包含WiFi协议应用、互联网应用和MCU外设的例程。
  2. TI的E2E中文社区E2E英文社区
  3. CSDN
  4. 知网的学术论文
  5. YY分享

开发环境搭建:

编译软件:CCS , IAR Embeedded Workbench

Debug:可以支持FTDI器件是实现板载仿真

烧录软件:

  • SimpleLink编程器 +USB线 对闪存颗粒进行数据更新
  • 支持4线的JTAG和2线的SWD在线调试
  • Uniflash用于进行程序的烧录

运行软件:

硬件调试:

知识点:
  1. 为了使系统获得更高的输入电流,可以将两片电压转换芯片进行并联

CC3200学习总结_第1张图片

  1. 对于传感器的微弱信号处理上的一些细节:

    (1)对于原始传感器的信号,先进行电压跟随,优点是缓冲隔离,承上启下,提高输入阻抗等

    note:传感器输出的信号是低频信号。

    (2)根据数据采集端的电平范围,进行适当的比例缩放等处理,这两步是完成输入信号的一级调理

CC3200学习总结_第2张图片

note:此处借助两个1K电阻对输出实现了二分之一的分压。

​ (3)由于跟随后,输出信号混杂了高频信号,需要进行二次调理,对于高频信号进行滤除。

CC3200学习总结_第3张图片

上述电路是实现了对于输出电压进行了跟随和低通滤波器,从而提取出传感器的低频信号。

​ (4)为了实现ADC高精度采集,可以多次采集,然后求解平均值。

​ (5) 传感器信号一般的频率为 0-100Hz,根据采样定律采样率至少不小于原始信号的 2 倍,因而采用 1KHz 采样率采集传感器信号。下图是对于ADC采样率和输入信号频率间关系的一个梳理过程。

CC3200学习总结_第4张图片

硬件调试的思路

对于完成焊接的电路板,需要先进行供电检查,然后才是功能性检查。测电路板的供电是否正常,可以测输入电容两端的阻值(或者选用蜂鸣档)了解电路后级的短路状态。若阻值过小,则分别测量电源模块的几路输入和输出供电是否正常。

功能性检查:是判断信号线的接线部分是否正常。

软件调试:

初次体验

此开发板使用的例程和官方的库是如何定义的?

采用的以库的形式的进行的深度定制,甚至对于板载资源进行了深度的定制化设计。从LED灯的颜色上进行编号,便知道它是关于TI自定义的一个板卡。

涉及到的通信协议的类型和规范?

目前已经实现的商用的范畴类的成熟应用如何?

数据流向

传感器 --> 采集电路与系统(STM32) --> CC3200 --> 路由器 --> 上位机分析数据

note:采集系统中主控是STM32,利用的是内部的ADC提取到数字量。而采集系统和CC3200是通过串口进行的通信。

其中重要实现节点如下:

(1)完成CC3200对于外部数据的采集,并实现串口打印数据

CC3200学习总结_第5张图片

上图是CC3200在系统所承担的使命。

CC3200学习总结_第6张图片

上图是例程中WiFi模块完成数据传输需要执行的过程。

如下是关于CC3200芯片的串口特征和接收数据的一个通用处理过程:

CC3200 的芯片中,UART0 收发的两个管脚也是下载程序的接口,但是与 STM32 进行通信的时候不能接在程序下载的管脚,选用 UART1 作为CC3200 数据交互的接口。

在 CC3200 中,接收和发送都有相应的缓冲空间(FIFO),每个空间只能接收相对很少的数据,因此需要开辟新的空间存放采集的数据,接收这些数据采用串口中断完成数据存储。随后将数据打包形成一个数据包,通过 TCP/IP 通信协议进行数据交互。

note:虽然上述是关于CC3200的数据存储和接收的,但是是一个通用的数据编帧的过程,特别是对于需要快速接收数据的场所。

发送端数据流向如下:

数据源 --> FIFO --> 存储区(程序中数组 or 存储介质)–> 数据编帧(PCM) --> 将数据加入协议(数据块/包)–>发送

接收端数据流向如下:

数据源 --> FIFO --> 存储区(程序中数组 or 存储介质)–> 分解协议(获取数据块/包)–> 数据提取 --> 数据分析

(2)完成CC3200和路由器的通信建立,实现数据的转存

(3)实现上位机和路由器的通信建立,实现数据的接收

Ser2net 功能,该功能是路由器数据和串口数据进行交互。上位机可以通过串口向连接路由器的终端下发指令,同时路由器也可以通过串口将数据传输至上位机对数据进行分析和处理。

(4)对路由器接受的数据在上位机上进行分析处理

在完成上述的工作后,则后续的优化过程:

(1)对于传感器采集电路的设计和优化,包括调理电路,滤波电路……

(2)对于上位机软件的编写

(3)多录传感器的采集的数据的编帧工作

串口数据进行交互。上位机可以通过串口向连接路由器的终端下发指令,同时路由器也可以通过串口将数据传输至上位机对数据进行分析和处理。

(4)对路由器接受的数据在上位机上进行分析处理

你可能感兴趣的:(CC3200学习,工程师的理论修养,单片机,wifi,硬件,智能传感器,数据库)