引:

由于项目须要,须要利用到经典蓝牙,而市情上的蓝牙芯片大多是基于BLE的蓝牙芯片,而经典蓝牙芯片很少,经由近一个月的测试,原厂终于将经典蓝牙的SPP协议栈部分移植成功,对付运用层面,我也可以开始利用了。

一、SPP

jsp状态码415玩转开辟板  雅特力WB415经典蓝牙运用 RESTful API

在讯问很多厂家是否支持SPP的时候,大多数都不知道是什么,我把SPP的定义说一下。

定义:SPP是Serial Port Profile(串口协议)的缩写,其定义了利用蓝牙进行RS232(或类似)串行电缆仿真的设备应利用的协议和过程。

大略来说便是在蓝牙设备之间建立虚拟的串口进行数据通信。
说白了便是可以两个设备对端发送自定义数据,NOTED:苹果不支持SPP协议。

协议在全体蓝牙协议中的架构如下:

而SDP部分须要如下注册:

static const uint8_t spp_service_record[] ={ / 1.ServiceClassIDList / SDP_DES_SIZE8, 0x8, SDP_UINT16, BT_ATTRIBUTE_SERVICE_CLASS_ID_LIST>>8&0xff, BT_ATTRIBUTE_SERVICE_CLASS_ID_LIST&0xff, / Service class ID list attribute / SDP_DES_SIZE8, 3, SDP_UUID16, BT_SERVICE_CLASS_SERIAL_PORT>>8&0xff, BT_SERVICE_CLASS_SERIAL_PORT&0xff, / 2.ProtocolDescriptorList / SDP_DES_SIZE8, 0x11, SDP_UINT16, BT_ATTRIBUTE_PROTOCOL_DESCRIPTOR_LIST>>8&0xff, BT_ATTRIBUTE_PROTOCOL_DESCRIPTOR_LIST&0xff,/ Protocol descriptor list attribute / SDP_DES_SIZE8, 0xc, SDP_DES_SIZE8, 0x3, SDP_UUID16, BT_PROTOCOL_L2CAP>>8&0xff, BT_PROTOCOL_L2CAP&0xff, /L2CAP/ SDP_DES_SIZE8, 0x5, SDP_UUID16, BT_PROTOCOL_RFCOMM>>8&0xff, BT_PROTOCOL_RFCOMM&0xff, /RFCOMM/ SDP_UINT8, RFCOMM_SPP_SERVER_CHNL, /RFCOMM channel/ / BluetoothProfileDescriptorList / SDP_DES_SIZE8, 0xd, SDP_UINT16, BT_ATTRIBUTE_BLUETOOTH_PROFILE_DESCRIPTOR_LIST>>8&0xff, BT_ATTRIBUTE_BLUETOOTH_PROFILE_DESCRIPTOR_LIST&0xff, / profile descriptor List / SDP_DES_SIZE8, 0x8, SDP_DES_SIZE8,0x06, SDP_UUID16,BT_SERVICE_CLASS_SERIAL_PORT>>8&0xff, BT_SERVICE_CLASS_SERIAL_PORT&0xff, SDP_UINT16,0x01,0x02, / V1.2 /};

关于协议栈部分,须要根据自己的须要进行设计,须要把稳的是:SPP只有安卓手机支持,并且部分安卓手机必须有SPP APP才可以连接,iphone手机不能直接SPP,但是有一个替代协议IAP,此协议须要买MFI chip才能用。

二、AT-START-WB415开拓板

我们看一下开拓板的布局图

我们再看看事理图

三、软件部分

同其它的开拓板一样,须要先下载几个关键资料,datasheet资料,开拓板解释资料,keil支持的补丁包资料,还有便是BSP库文件。

我们可以到雅特力的官网去下载这些资料:

www.arterytek.com/cn/product/AT32WB415.jsp

资料都是很全面的,可以根据自己的须要进行下载。
这里就不再赘述。

下载ICP文件

四、烧录及运行

协议栈下载

将ICP文件解压缩之后,打开ICP3.0.06

将开拓板连接电脑,会自动识别,识别之后,点击'连接'按钮。

我们可以瞥见芯片的信息:

型号: AT32WB415CCU7-7

主存储器大小: 256KB

添加文件wb415_ble_spp_merge.bin文件。

添加之后,有一步随意马虎忽略的,便是起始地址一定要变动为0才可以的。

提示框中也写到了,起始地址为0;只有填对信息,才会有以下的提示框:

点击下载,由于是下载协议栈,以是须要将擦除所有的磁盘空间:

涌现校验成功之后,证明协议栈下载完成。

运用程序下载

打开工程文件,然后选择CMSIS-DAP 选项

进入之后,查看是否不是AT-LINK

点击下载按钮

提示下载完成

至此,运用程序下载完成。

demo测试

烧录完成之后,我们将P07接地

打开电脑的蓝牙

我们配对之后,选择蓝牙选项查看

蓝牙设置里面的COM端口

这个时候瞥见熟习的'传入''传出'了

我们将串口调试助手打开,选择COM7

我们将USB转串口工具连接到板子上,记得利用的是PA2和PA3引脚。

我们打开两个串口软件,一个是COM7,其余一个在老刘的电脑上识别的是COM10,我们测试一下收发数据。

至此,SPP模式已经跑通。

结:

这款单片机有其自身的上风资源。
M4内核。
很好很强大。