littlebot
Published on 2025-04-08 / 0 Visits
0

【源码】基于C语言的蓝牙SPP服务器实现

项目简介

本项目基于AIROC™ Wi-Fi & Bluetooth®组合芯片,实现了一个适用于Linux主机平台的蓝牙SPP(串行端口协议)服务器。用户可在嵌入式Linux平台运行该服务器,并与Windows客户端进行通信,展示了使用AIROC™ BTSTACK库和Linux移植层实现蓝牙通信功能的方法。

项目的主要特性和功能

  • 支持蓝牙串行端口协议(SPP),可让设备通过蓝牙进行串行通信。
  • 支持在嵌入式Linux平台(如RPI CM4和IMX8 Nano)运行。
  • 支持AIROC™ CYW5557x Wi-Fi & Bluetooth®组合芯片。
  • 支持通过日志和GDB进行调试。
  • 提供命令行菜单,方便用户发送数据或进行其他操作。

安装使用步骤

1. 环境准备

确保Linux主机运行Ubuntu 20.04,并安装以下工具: bash sudo apt-get install git cmake gcc-aarch64-linux-gnu build-essential -y

2. 获取源代码

在Linux主机上创建目录并复制项目代码: bash mkdir $HOME/Linux_CE cd $HOME/Linux_CE

3. 复制依赖库

复制项目所需的依赖库(此处原文档未给出具体命令)。

4. 编译项目

进入项目目录并编译代码: bash cd $HOME/Linux_CE/linux-example-btstack-spp mkdir build && cd build cmake -DCMAKE_C_COMPILER:PATH=/usr/bin/aarch64-linux-gnu-gcc ../ && make

5. 部署到目标平台

将生成的可执行文件、库和固件文件复制到目标平台: bash scp linux-example-btstack-spp <TARGET_USER>@<TARGET_IP>:<TARGET_PATH>/. scp libbtstack.so <TARGET_USER>@<TARGET_IP>:<TARGET_PATH>/. scp <FW_FILE.hcd> <TARGET_USER>@<TARGET_IP>:<TARGET_PATH>/.

6. 运行SPP服务器

在目标平台上运行SPP服务器: bash cd <TARGET_PATH> chmod +x linux-example-btstack-spp LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<BTSTACK_LIB_PATH> ./linux-example-btstack-spp -c <COM_PORT> -b 3000000 -f 921600 -r <GPIOCHIPx> <REGONPIN> -n -p <FW_FILE_NAME>.hcd -d 112233221133

7. 连接Windows客户端

在Windows 10机器上,通过蓝牙设备管理器与SPP服务器配对,并使用Tera Term等终端模拟器连接到SPP服务器。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】