为迎合蓝牙5的快速发展,TI推出了一款基于ARM Cotex-M4内核的BLE5 蓝牙单片机—CC26x2.不过现在芯片还在还没有量产,在TI官网买了几片样片,并参照TI的开发板画了个板子,实测可以连接手机。
先简单介绍一下BLE5,在2016年BLE5协议诞生,像apple已经在iPhone8及以后的ihpone中使用BLE5,据小道消息还未上市的air pods将采用BLE5.那么BLE5相比BLE4.x有什么改变呢?
更远的通信距离,更高的速率!相比BLE4.x在物理层上的改变,使得通信距离更远,通信速率更高。但是二者并不是兼得的,并不是说能同时实现远距离,高速蓝牙通信,在实现更远距离时,会牺牲通信速率,在实现高速率时,也会牺牲通信距离。
接下来介绍下手上的CC2642芯片。ARM cortex-M4F 处理器,意味着你可以用它做浮点运算。352KB可编程闪存,80KB SRAM,这相比之前都有巨大的提高(可还是觉得少)。时钟速度由原来的24M提高到48M,片上的SC处理器内存也由2KB增加到4KB。
入手的第一件事当然是跑例程,实现和手机端APP的蓝牙连接。针对CC26x2,TI推出了区别其他芯片的协议栈simplelink_cc26x2_sdk_2_30_00_34,在CCS7.4以上版本才支持CC26X2芯片。最新版的CCS更新到了8.2,有新的当然用新的,安装CCS8.2及协议栈以后,开始跑第一个例程simpleperipheral。如下图所示:
编译的顺序是先stack library,然后再APP,stack library编译一次,以后如果没有改动,就不需要再编译了。编译完成后,在CC2640的协议栈中会生成stack和app会分别生成两个.out文件。但是在这个协议栈里,只会生成一个app的.out文件,stacklibrary编译完成后会自动添加到app中。
接下来就是烧写程序到CC2642中。烧写工具可以使用XDS100V3,程序下载完成后点击运行,这时使用iPhone手机APP lightblue工具会识别到simpleperipheral,证明蓝牙通信成功。附上连接结果一枚:
当硬件调试出问题时,检测一下DCDC_SW引脚电压是否为1.8V 左右,如果不是,检查你的电路设计和TI的开发板是否一致,如果一致,那么有一个很重要的问题不要忽略:CC2642的地只有一个,就是在芯片底部的大焊盘,手工焊时很容易忽略。接地没焊好,各种意想不到的问题就出来了。
|