3. 例程编译和调用方法 
3.1 例程列表 
SDK 提供三个示例程序,位于 examples/ 目录:
| 例程名称 | 文件 | 功能说明 | 
|---|---|---|
| 基础用法 | basic_usage.cpp | 演示连接、读取数据、断开连接 | 
| 高级用法 | advanced_usage.cpp | 错误处理、统计信息、性能测试 | 
| 实时可视化 | psi_glove_cpp_visualizer/ | OpenCV 实时柱状图显示 | 
3.2 编译例程 
方法 1: 使用 CMake 批量编译(推荐) 
bash
cd psi-glove-SDK/cpp_sdk
mkdir build && cd build
# 配置并启用示例
cmake -DBUILD_EXAMPLES=ON ..
# 编译所有示例
make -j$(nproc)
# 示例可执行文件位于 build/examples/ 目录
ls -lh examples/
# 输出:
# basic_usage
# advanced_usage
# psi_glove_cpp_visualizer/psi_glove_cpp_visualizer方法 2: 手动编译单个示例 
bash
# 先安装 SDK(如果尚未安装)
cd psi-glove-SDK/cpp_sdk
mkdir build && cd build
cmake ..
make -j$(nproc)
sudo make install
sudo ldconfig
# 编译 basic_usage
cd ../examples
g++ -std=c++17 basic_usage.cpp -lpsi_glove_sdk -o basic_usage
# 编译 advanced_usage
g++ -std=c++17 advanced_usage.cpp -lpsi_glove_sdk -o advanced_usage
# 编译可视化器(需要 OpenCV)
cd psi_glove_cpp_visualizer
mkdir build && cd build
cmake ..
make方法 3: 使用 pkg-config(如果支持) 
bash
# 编译示例
g++ -std=c++17 basic_usage.cpp \
    $(pkg-config --cflags --libs psi_glove_sdk) \
    -o basic_usage3.3 运行例程 
3.3.1 基础用法示例 
bash
cd psi-glove-SDK/cpp_sdk/build/examples
# 使用默认波特率(115200)
./basic_usage /dev/ttyACM0
# 自定义波特率
./basic_usage /dev/ttyACM0 500000
# Windows 系统
basic_usage.exe COM31输出示例:
===========================================
PSI Glove SDK - 基础使用示例
===========================================
串口: /dev/ttyACM0
波特率: 115200
===========================================
正在连接到设备...
连接成功!
开始读取数据 (按Ctrl+C退出)...
--- 帧 #0 ---
拇指: 2048, 1856, 2304, 1792, 2176
食指: 1920, 2240, 1664, 2112
中指: 2304, 1856, 2048, 1792
无名指: 1920, 2176, 1664, 2048
小指: 2240, 1856, 2304, 1920
--- 帧 #10 ---
拇指: 2052, 1860, 2308, 1796, 2180
...
^C
正在退出...
===========================================
统计信息:
  总帧数: 1523
  运行时间: 15 秒
  平均帧率: 101.53 Hz
===========================================
已断开连接。3.3.2 高级用法示例 
bash
# 运行高级示例(包含性能统计)
./advanced_usage /dev/ttyACM0
# 自定义波特率
./advanced_usage /dev/ttyACM0 500000额外功能:
- 实时帧率计算
 - 丢包率统计
 - 延迟测量
 - 错误计数
 - 数据完整性检查
 
3.3.3 实时可视化示例 
bash
# 先安装 OpenCV(如果尚未安装)
# Ubuntu/Debian
sudo apt-get install libopencv-dev
# 编译可视化器
cd psi-glove-SDK/cpp_sdk/examples/psi_glove_cpp_visualizer
mkdir build && cd build
cmake ..
make
# 运行可视化器 - 左手
./psi_glove_cpp_visualizer --left /dev/ttyACM0
# 运行可视化器 - 双手
./psi_glove_cpp_visualizer \
    --left /dev/ttyACM0 \
    --right /dev/ttyACM1
# 自定义参数
./psi_glove_cpp_visualizer \
    --left /dev/ttyACM0 \
    --baudrate 500000 \
    --rate 100可视化窗口:
┌──────────────────────────────────────────────────┐
│  PSI 手套数据可视化(OpenCV)                    │
├──────────────────────────────────────────────────┤
│  左手关节位置                                    │
│  ┌────────────────────────────────────────┐     │
│  │ 拇指_0 ████████████████████ 2048       │     │
│  │ 拇指_1 ██████████████ 1856             │     │
│  │ 拇指_2 ████████████████████████ 2304   │     │
│  │ ...                                     │     │
│  └────────────────────────────────────────┘     │
│                                                  │
│  [Q]退出  [S]截图  [R]重置                      │
│  FPS: 101.5 Hz  |  延迟: 9.8 ms                 │
└──────────────────────────────────────────────────┘3.4 例程可配置参数 
basic_usage 参数 
bash
./basic_usage <串口路径> [波特率]
# 示例
./basic_usage /dev/ttyACM0           # 默认波特率 115200
./basic_usage /dev/ttyACM0 500000    # 波特率 500000advanced_usage 参数 
bash
./advanced_usage <串口路径> [波特率]
# 示例
./advanced_usage /dev/ttyACM0 115200psi_glove_cpp_visualizer 参数 
bash
./psi_glove_cpp_visualizer [选项]
选项:
  --left <串口>        左手串口路径(例: /dev/ttyACM0)
  --right <串口>       右手串口路径(例: /dev/ttyACM1)
  --baudrate <波特率>  通信波特率(默认: 115200)
  --rate <频率>        数据采集频率(默认: 100 Hz)
  --timeout <毫秒>     超时时间(默认: 6 ms)
  --window-size <大小> 平滑窗口大小(默认: 10)
# 示例
./psi_glove_cpp_visualizer \
    --left /dev/ttyACM0 \
    --baudrate 500000 \
    --rate 150 \
    --window-size 5