tuzhuke 发表于 2017-11-27 08:07:02

[蓝点zigBee] CC2530 实用教程总览-Zstack 部分

写在前面为初学者
   Zstack 是CC2530 实现无线通信的代码框架或者叫做协议栈,TI 公司提供了完整的代码以及详细的注释说明。但是代码量大,初学者很容易迷失在茫茫代码之中,该教程并没有完整的详细的解读这个框架,而是协助初学者如何使用框架,如何在这个框架上快速搭建自己的代码,实现自己的功能。
    Zstack 部分教程针对有一定单片机基础的学习,若没有接触过单片机,需要学习基本的单片机知识,若时间紧任务急,也可一边学习Zstack 知识一遍简单学习下CC2530 寄存器操作(GPIO 部分为主),因为Zstack对于寄存器基本的操作其实非常少的。同时也建议想要使用Zstack快速开发的初学者,尽量只关注application 部分的学习,尽量不要深入代码,深入代码是研究学习,而非入门。
                                                                                     2017-12-17@BJ

Zstack 单个模块实验(无数据通信)

1 Zstack精简,增加串口数据

  Zstack 里面工程较多,整体代码量很大,若入门只需要先之关注其中的一个工程,在这个工程里添添补补逐步学习。

  这一节主要是删除多余工程以及文件夹,然后极度推荐大家随后用source insight 新建工程,中这个家伙看代码,绝对事半功倍!如果会用vim 当然也可以。

  除了精简代码,就是增加一个串口输入,调通串口可以打印很多信息供我们debug,虽然CC2530 可以使用工具在线debug,但是串口print 绝对是debug 的利器!

2 ZstackDS18B20(单机串口版)

   我们前面精简过代码,并且调通了串口,可以正常print出信息了,移植DS18B20 在底层来说,我们只需要修改一个GPIO的控制,因为DS18B20 是单总线结构的,然后依据单片机经验,改改延时就可以了。推荐使用逻辑分析仪!

     调通后,直接通过串口print 到PC机就可以了。

  举一反三: DHT11 也是单总线结构,可以自己尝试修改。

  两个线的数字量传感器也就是修改两个GPIO的配置而已。。。。

3 ZstackADC(单机串口版)

  ADC传感器,传感器很多,最常见的有光照,加速度等等。。。其实这些传感器如果不关注它的量与实际参数的对应关系(例如多高电压对应多强的光照……),我们可以将所以的ADC传感器都认为是一种,因为我们只关心的是电压量。

  在Zstack中有现成的ADC 函数,虽然ADC datasheet 部分写得很复杂,在Zstack中只需要一条语句而已。没错就一条。

  当然,如果你挂载多个ADC传感器就需要多条了,最多可以挂载8个。

  这一节,主要是通过ADC 采集可调电阻上的电压值,通过串口显示出来。

  举一反三。。。挂载实际ADC传感器,不一一列举了,这个太容易了!

4 Zstack点亮LED(单机串口版)
             蓝点CC2530 开发板LED连接的GPIO: LED1-P10 LED2-P11LED3-P20
  这一节主要是学习LED驱动修改,LED是应该用过程中常用于指示作用,用途非常广,一方面我们要学会使用,另外一方面要学会根据官方代码进行移植到其它IO上。我们的板子上,LED1 和LED2 与官方板子一致,无需修改,而LED3 和官方的不一样,而且和另外一个IO冲突了,需要移除冲突,重新修改LED3 的驱动。

5 Zstack按键控制LED(单机串口版)

6 Zstack 点亮OLED 12864(单机版)

Zstack 无线通信实验

1 无线数据通信,串口输出

2 无线数据通信 LCD显示

3 按键远程控制LED

4 DS18B20温度采集系统(串口&LCD)

5 ADC 模拟量采集系统(串口&LCD)




uwbboy 发表于 2019-11-9 12:02:54

收藏学习一下

w_huaz 发表于 2019-11-13 17:41:22

受益匪浅:handshake

hhdazhutou 发表于 2019-12-16 13:37:22

连接失效了,可以麻烦您再发一次吗

tswai 发表于 2020-1-26 21:20:32

谢谢分享!
页: [1]
查看完整版本: [蓝点zigBee] CC2530 实用教程总览-Zstack 部分