| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- /*
- * Copyright (c) 2006-2018, RT-Thread Development Team
- *
- * SPDX-License-Identifier: Apache-2.0
- *
- * Change Logs:
- * Date Author Notes
- * 2020-01-08 JiangChenhui the first version
- */
- #include "sensor_honey_gy271.h"
- #ifdef PKG_USING_GY271_SAMPLE
- static rt_err_t sensor_gy271_sample(int argc, char *argv[])
- {
- static rt_device_t sensor_dev; /* 传感器设备句柄 */
- struct rt_sensor_data data; /* 传感器数据 */
- /* 根据设备名称查找传感器设备,获取设备句柄 */
- sensor_dev = rt_device_find("mag_gy271");
- /* 以只读及轮询模式打开传感器设备 */
- rt_device_open(sensor_dev, RT_DEVICE_FLAG_RDONLY);
- if (rt_device_read(sensor_dev, 0, &data, 1) == 1)
- {
- rt_kprintf("Mag: x:%3dmGa, y:%3dmGa, z:%3dmGa, timestamp:%5d\n", data.data.mag.x, data.data.mag.y, data.data.mag.z, data.timestamp);
- }
- rt_device_close(sensor_dev);
- return RT_EOK;
- }
- MSH_CMD_EXPORT(sensor_gy271_sample,sensor gy271 sample);
- static void i2c_gy271_sample(int argc, char *argv[])
- {
- char bus[RT_NAME_MAX];
- gy271_data_t data;
- if (argc == 2)
- {
- rt_strncpy(bus, argv[1], RT_NAME_MAX);
- }
- else
- {
- rt_strncpy(bus, "i2c1", RT_NAME_MAX);
- }
- gy271_device_t dev = gy271_init(bus);
- for (int i = 0; i < 10; i++)
- {
- gy271_read_data(dev, &data);
- rt_kprintf("x:%d y:%d z:%d\n", data.x, data.y, data.z);
- rt_thread_mdelay(100);
- }
-
- }
- MSH_CMD_EXPORT(i2c_gy271_sample, i2c gy271 sample);
- #endif
|