Skip to content

Latest commit

 

History

History
44 lines (34 loc) · 1.98 KB

File metadata and controls

44 lines (34 loc) · 1.98 KB

RemoteSensor 客户端库示例

提醒:本项目的服务端是手机端 APPserver/RemoteSensorServer.cpp), 客户端是封装好的 C++ 库include/RemoteSensor/ + src/RemoteSensor/)。 以下示例全部是客户端库的使用方式:先在手机上启动服务端 APP,再在电脑上 编译运行这些示例即可拿到传感器数据。

编译

这些示例已接入 CMake,构建整个项目时会一并生成(也可单独指定目标):

cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build build

生成的程序位于 build/ 下:

可执行文件 演示内容
Example01DiscoveryConnect 发现服务端 / 直连 / 查询设备信息与传感器列表
Example02CallbackMode 回调模式读取多种传感器
Example03QueueMode 队列模式(waitForEvents / readEvents / getLatestEvent)
Example04ReadEverySensor 遍历设备上所有受支持传感器并逐个读取

运行前提

  • 手机与电脑处于同一局域网;
  • 手机上已启动服务端 APP(监听 TCP 45999 / UDP 45998);
  • 若不想用自动发现,可在命令行直接传 IP(和端口):
    ./Example01DiscoveryConnect.exe 192.168.1.100 [45999]

示例文件说明

  • 01_discovery_connect.cpp —— 两种连接方式:自动发现、命令行直连; 演示 getDeviceInfo()getSensorList()
  • 02_callback_mode.cpp —— 回调模式:openSensor() + setEventCallback()
    • start(),覆盖矢量/旋转矢量/单值/计步/心率等典型读取。
  • 03_queue_mode.cpp —— 队列模式:waitForEvents()(阻塞拉取)、 readEvents()(非阻塞)、getLatestEvent()(取最近一帧)。
  • 04_read_every_sensor.cpp —— 一次遍历设备上所有受支持传感器,按类型 正确打印 X/Y/Z、四元数 w、单值、累计步数、心率等数据(每种传感器一个独立函数)。