rtt更新

This commit is contained in:
2025-01-18 13:25:25 +08:00
parent c6a7554b51
commit d6009a0773
726 changed files with 103376 additions and 6270 deletions

View File

@@ -10,6 +10,6 @@ if RT_USING_SENSOR
config RT_USING_SENSOR_CMD
bool "Using Sensor cmd"
select PKG_USING_RT_VSNPRINTF_FULL if RT_USING_SENSOR_V2
select RT_KLIBC_USING_VSNPRINTF_STANDARD if RT_USING_SENSOR_V2
default y
endif

View File

@@ -40,7 +40,10 @@ static char *const sensor_name_str[] =
"spo2_", /* SpO2 sensor */
"iaq_", /* IAQ sensor */
"etoh_", /* EtOH sensor */
"bp_" /* Blood Pressure */
"bp_", /* Blood Pressure */
"volt_", /* Voltage sensor */
"curr_", /* Current sensor */
"pow_" /* Power sensor */
};
/* Sensor interrupt correlation function */

View File

@@ -83,6 +83,15 @@ static void sensor_show_data(rt_size_t num, rt_sensor_t sensor, struct rt_sensor
case RT_SENSOR_CLASS_BP:
LOG_I("num:%3d, bp.sbp:%5d mmHg, bp.dbp:%5d mmHg, timestamp:%5d", num, sensor_data->data.bp.sbp, sensor_data->data.bp.dbp, sensor_data->timestamp);
break;
case RT_SENSOR_CLASS_VOLTAGE:
LOG_I("num:%3d, voltage:%5d mV, timestamp:%5d", num, sensor_data->data.mv, sensor_data->timestamp);
break;
case RT_SENSOR_CLASS_CURRENT:
LOG_I("num:%3d, current:%5d mA, timestamp:%5d", num, sensor_data->data.ma, sensor_data->timestamp);
break;
case RT_SENSOR_CLASS_POWER:
LOG_I("num:%3d, power:%5d mW, timestamp:%5d", num, sensor_data->data.mv, sensor_data->timestamp);
break;
default:
break;
}
@@ -281,7 +290,7 @@ static void sensor_polling(int argc, char **argv)
MSH_CMD_EXPORT(sensor_polling, Sensor polling mode test function);
#endif
static void sensor(int argc, char **argv)
static int sensor(int argc, char **argv)
{
static rt_device_t dev = RT_NULL;
struct rt_sensor_data data;
@@ -302,7 +311,7 @@ static void sensor(int argc, char **argv)
rt_kprintf(" sodr <var> Set output date rate to var\n");
rt_kprintf(" read [num] Read [num] times sensor\n");
rt_kprintf(" num default 5\n");
return ;
return -RT_EINVAL;
}
else if (!strcmp(argv[1], "info"))
{
@@ -310,7 +319,7 @@ static void sensor(int argc, char **argv)
if (dev == RT_NULL)
{
LOG_W("Please probe sensor device first!");
return ;
return -RT_ERROR;
}
rt_device_control(dev, RT_SENSOR_CTRL_GET_INFO, &info);
switch (info.vendor)
@@ -418,6 +427,15 @@ static void sensor(int argc, char **argv)
case RT_SENSOR_UNIT_MMHG:
rt_kprintf("unit :mmHg\n");
break;
case RT_SENSOR_UNIT_MV:
rt_kprintf("unit :mV\n");
break;
case RT_SENSOR_UNIT_MA:
rt_kprintf("unit :mA\n");
break;
case RT_SENSOR_UNIT_MW:
rt_kprintf("unit :mW\n");
break;
}
rt_kprintf("range_max :%d\n", info.range_max);
rt_kprintf("range_min :%d\n", info.range_min);
@@ -431,7 +449,7 @@ static void sensor(int argc, char **argv)
if (dev == RT_NULL)
{
LOG_W("Please probe sensor device first!");
return ;
return -RT_ERROR;
}
if (argc == 3)
{
@@ -469,12 +487,12 @@ static void sensor(int argc, char **argv)
if (dev == RT_NULL)
{
LOG_E("Can't find device:%s", argv[2]);
return;
return -RT_ERROR;
}
if (rt_device_open(dev, RT_DEVICE_FLAG_RDWR) != RT_EOK)
{
LOG_E("open device failed!");
return;
return -RT_ERROR;
}
rt_device_control(dev, RT_SENSOR_CTRL_GET_ID, &reg);
LOG_I("device id: 0x%x!", reg);
@@ -483,7 +501,7 @@ static void sensor(int argc, char **argv)
else if (dev == RT_NULL)
{
LOG_W("Please probe sensor first!");
return ;
return -RT_ERROR;
}
else if (!strcmp(argv[1], "sr"))
{
@@ -510,6 +528,8 @@ static void sensor(int argc, char **argv)
{
LOG_W("Unknown command, please enter 'sensor' get help information!");
}
return RT_EOK;
}
#ifdef RT_USING_FINSH
MSH_CMD_EXPORT(sensor, sensor test function);

View File

@@ -550,7 +550,7 @@ static void sensor_cmd_warning_probe(void)
LOG_W("Please probe sensor device first!");
}
static void sensor(int argc, char **argv)
static int sensor(int argc, char **argv)
{
static rt_device_t dev = RT_NULL;
struct rt_sensor_data data;
@@ -562,14 +562,14 @@ static void sensor(int argc, char **argv)
if (argc < 2)
{
sensor_cmd_warning_unknown();
return;
return -RT_ERROR;
}
else if (!rt_strcmp(argv[1], "info"))
{
if (dev == RT_NULL)
{
sensor_cmd_warning_probe();
return ;
return -RT_ERROR;
}
sensor = (rt_sensor_t)dev;
rt_kprintf("name :%s\n", sensor->info.name);
@@ -595,7 +595,7 @@ static void sensor(int argc, char **argv)
if (dev == RT_NULL)
{
sensor_cmd_warning_probe();
return;
return -RT_ERROR;
}
if (argc == 3)
{
@@ -628,7 +628,7 @@ static void sensor(int argc, char **argv)
information = rt_object_get_information(RT_Object_Class_Device);
if(information == RT_NULL)
return;
return -RT_ERROR;
rt_kprintf("device name sensor name sensor type mode resolution range\n");
rt_kprintf("----------- ------------- ------------------ ---- ---------- ----------\n");
@@ -655,7 +655,7 @@ static void sensor(int argc, char **argv)
if (dev == RT_NULL)
{
sensor_cmd_warning_probe();
return;
return -RT_ERROR;
}
if (rt_device_control(dev, RT_SENSOR_CTRL_SOFT_RESET, RT_NULL) != RT_EOK)
@@ -671,19 +671,19 @@ static void sensor(int argc, char **argv)
if (argc < 3)
{
sensor_cmd_warning_unknown();
return;
return -RT_ERROR;
}
new_dev = rt_device_find(argv[2]);
if (new_dev == RT_NULL)
{
LOG_E("Can't find device:%s", argv[2]);
return;
return -RT_ERROR;
}
if (rt_device_open(new_dev, RT_DEVICE_FLAG_RDWR) != RT_EOK)
{
LOG_E("open device failed!");
return;
return -RT_ERROR;
}
if (rt_device_control(new_dev, RT_SENSOR_CTRL_GET_ID, &reg) == RT_EOK)
{
@@ -702,7 +702,7 @@ static void sensor(int argc, char **argv)
if (dev == RT_NULL)
{
sensor_cmd_warning_probe();
return;
return -RT_ERROR;
}
sensor = (rt_sensor_t)dev;
@@ -734,7 +734,7 @@ static void sensor(int argc, char **argv)
if (dev == RT_NULL)
{
sensor_cmd_warning_probe();
return;
return -RT_ERROR;
}
sensor = (rt_sensor_t)dev;
@@ -766,7 +766,7 @@ static void sensor(int argc, char **argv)
if (dev == RT_NULL)
{
sensor_cmd_warning_probe();
return;
return -RT_ERROR;
}
sensor = (rt_sensor_t)dev;
@@ -795,5 +795,7 @@ static void sensor(int argc, char **argv)
{
sensor_cmd_warning_unknown();
}
return RT_EOK;
}
MSH_CMD_EXPORT(sensor, sensor test function);