|  | @@ -4,8 +4,9 @@
 | 
	
		
			
				|  |  |   * SPDX-License-Identifier: Apache-2.0
 | 
	
		
			
				|  |  |   *
 | 
	
		
			
				|  |  |   * Change Logs:
 | 
	
		
			
				|  |  | - * Date           Author       Notes
 | 
	
		
			
				|  |  | - * 2019-01-31     flybreak     first version
 | 
	
		
			
				|  |  | + * Date           Author         Notes
 | 
	
		
			
				|  |  | + * 2019-01-31     flybreak       first version
 | 
	
		
			
				|  |  | + * 2019-07-16     WillianChan    Increase the output of sensor information
 | 
	
		
			
				|  |  |   */
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  #include "sensor.h"
 | 
	
	
		
			
				|  | @@ -268,13 +269,88 @@ static void sensor(int argc, char **argv)
 | 
	
		
			
				|  |  |      else if (!strcmp(argv[1], "info"))
 | 
	
		
			
				|  |  |      {
 | 
	
		
			
				|  |  |          struct rt_sensor_info info;
 | 
	
		
			
				|  |  | +        if (dev == RT_NULL)
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +            LOG_W("Please probe sensor device first!");
 | 
	
		
			
				|  |  | +            return ;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  |          rt_device_control(dev, RT_SENSOR_CTRL_GET_INFO, &info);
 | 
	
		
			
				|  |  | -        rt_kprintf("vendor :%d\n", info.vendor);
 | 
	
		
			
				|  |  | -        rt_kprintf("model  :%s\n", info.model);
 | 
	
		
			
				|  |  | -        rt_kprintf("unit   :%d\n", info.unit);
 | 
	
		
			
				|  |  | +        switch (info.vendor)
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +            case RT_SENSOR_VENDOR_UNKNOWN:
 | 
	
		
			
				|  |  | +                rt_kprintf("vendor    :unknown vendor\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_VENDOR_STM:
 | 
	
		
			
				|  |  | +                rt_kprintf("vendor    :STMicroelectronics\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_VENDOR_BOSCH:
 | 
	
		
			
				|  |  | +                rt_kprintf("vendor    :Bosch\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_VENDOR_INVENSENSE:
 | 
	
		
			
				|  |  | +                rt_kprintf("vendor    :Invensense\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_VENDOR_SEMTECH:
 | 
	
		
			
				|  |  | +                rt_kprintf("vendor    :Semtech\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_VENDOR_GOERTEK:
 | 
	
		
			
				|  |  | +                rt_kprintf("vendor    :Goertek\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_VENDOR_MIRAMEMS:
 | 
	
		
			
				|  |  | +                rt_kprintf("vendor    :MiraMEMS\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_VENDOR_DALLAS:
 | 
	
		
			
				|  |  | +                rt_kprintf("vendor    :Dallas\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        rt_kprintf("model     :%s\n", info.model);
 | 
	
		
			
				|  |  | +        switch (info.unit)
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +            case RT_SENSOR_UNIT_NONE:
 | 
	
		
			
				|  |  | +                rt_kprintf("unit      :none\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_UNIT_MG:
 | 
	
		
			
				|  |  | +                rt_kprintf("unit      :mG\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_UNIT_MDPS:
 | 
	
		
			
				|  |  | +                rt_kprintf("unit      :mdps\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_UNIT_MGAUSS:
 | 
	
		
			
				|  |  | +                rt_kprintf("unit      :mGauss\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_UNIT_LUX:
 | 
	
		
			
				|  |  | +                rt_kprintf("unit      :lux\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_UNIT_CM:
 | 
	
		
			
				|  |  | +                rt_kprintf("unit      :cm\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_UNIT_PA:
 | 
	
		
			
				|  |  | +                rt_kprintf("unit      :pa\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_UNIT_PERMILLAGE:
 | 
	
		
			
				|  |  | +                rt_kprintf("unit      :permillage\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_UNIT_DCELSIUS:
 | 
	
		
			
				|  |  | +                rt_kprintf("unit      :Celsius\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_UNIT_HZ:
 | 
	
		
			
				|  |  | +                rt_kprintf("unit      :HZ\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_UNIT_ONE:
 | 
	
		
			
				|  |  | +                rt_kprintf("unit      :1\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_UNIT_BPM:
 | 
	
		
			
				|  |  | +                rt_kprintf("unit      :bpm\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_UNIT_MM:
 | 
	
		
			
				|  |  | +                rt_kprintf("unit      :mm\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +            case RT_SENSOR_UNIT_MN:
 | 
	
		
			
				|  |  | +                rt_kprintf("unit      :mN\n");
 | 
	
		
			
				|  |  | +                break;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  |          rt_kprintf("range_max :%d\n", info.range_max);
 | 
	
		
			
				|  |  |          rt_kprintf("range_min :%d\n", info.range_min);
 | 
	
		
			
				|  |  | -        rt_kprintf("period_min:%d\n", info.period_min);
 | 
	
		
			
				|  |  | +        rt_kprintf("period_min:%dms\n", info.period_min);
 | 
	
		
			
				|  |  |          rt_kprintf("fifo_max  :%d\n", info.fifo_max);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |      else if (!strcmp(argv[1], "read"))
 |