蓝牙定位
蓝牙定位是通过搭建一个蓝牙信标网络,结果各个信标的信息,计算标签位置的一种定位方式,目前支持的定位方式有:rssi三边定位
重要数据结构及API接口
结构体
typedef struct
{
double lat;
double lon;
}onepos_position_res_t;
参数 |
说明 |
lat |
纬度(坐标系:WGS84) |
lon |
经度(坐标系:WGS84) |
API列表
接口 |
说明 |
onepos_ble_position_start |
启动基于rssi原理的蓝牙定位服务 |
onepos_ble_position_exit |
关闭基于rssi原理的蓝牙定位服务 |
onepos_ble_position_get_res |
获取定位结果 |
onepos_ble_obtain_position_interval |
获取定位间隔 |
onepos_ble_position_change_position_interval |
修改定位间隔 |
onepos_ble_position_start
os_err_t onepos_ble_position_start(void)
返回 |
说明 |
OS_EOK |
定位服务启动成功 |
POS_EINIT |
定位服务已经启动,不再重复启动 |
OS_ERROR |
定位服务启动失败 |
onepos_ble_position_exit
os_err_t onepos_ble_position_exit(void)
返回 |
说明 |
OS_EOK |
定位服务关闭成功 |
POS_EINIT |
定位服务未启动 |
POS_EFREE |
定位服务初始化有错误,服务关闭失败 |
onepos_ble_position_get_res
os_err_t onepos_ble_position_get_res(onepos_position_res_t *res)
参数 |
说明 |
res |
定位结果 |
返回 |
说明 |
OS_EOK |
定位结果获取失败 |
POS_EINIT |
定位服务未启动 |
POS_ENULL |
输入指针为空 |
onepos_ble_obtain_position_interval
os_uint32_t onepos_ble_obtain_position_interval(void)
返回 |
说明 |
os_uint32_t |
当前的定位间隔(单位:毫秒) |
onepos_ble_position_change_position_interval
os_err_t onepos_ble_position_change_position_interval(os_uint32_t position_interval)
参数 |
说明 |
position_interval |
定位间隔(单位:毫秒) |
返回 |
说明 |
OS_EOK |
定位间隔修改成功 |