forked from xuos/xiuos
				
			add is_ext_uart in serial_cfg for framework for nuttx
This commit is contained in:
		
							parent
							
								
									5f42111c38
								
							
						
					
					
						commit
						5759661e8c
					
				| 
						 | 
					@ -113,6 +113,7 @@ int Adapter4GTest(void)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef ADD_RTTHREAD_FETURES     
 | 
					#ifdef ADD_RTTHREAD_FETURES     
 | 
				
			||||||
MSH_CMD_EXPORT(Adapter4GTest,a EC200T adpter sample);
 | 
					MSH_CMD_EXPORT(Adapter4GTest,a EC200T adpter sample);
 | 
				
			||||||
#else
 | 
					#endif
 | 
				
			||||||
 | 
					#ifdef ADD_XIZI_FETURES
 | 
				
			||||||
SHELL_EXPORT_CMD(SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_CMD_FUNC)|SHELL_CMD_PARAM_NUM(0)|SHELL_CMD_DISABLE_RETURN, Adapter4GTest, Adapter4GTest, show adapter 4G information);
 | 
					SHELL_EXPORT_CMD(SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_CMD_FUNC)|SHELL_CMD_PARAM_NUM(0)|SHELL_CMD_DISABLE_RETURN, Adapter4GTest, Adapter4GTest, show adapter 4G information);
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
| 
						 | 
					@ -38,9 +38,38 @@ if ADD_XIZI_FETURES
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if ADD_NUTTX_FETURES
 | 
					if ADD_NUTTX_FETURES
 | 
				
			||||||
 | 
					        config ADAPTER_EC200T_USING_PWRKEY
 | 
				
			||||||
 | 
					                bool "EC200T using PWRKEY pin number"
 | 
				
			||||||
 | 
					                default n
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if ADAPTER_EC200T_USING_PWRKEY
 | 
				
			||||||
 | 
					                config ADAPTER_EC200T_PWRKEY
 | 
				
			||||||
 | 
					                        int "EC200T PWRKEY pin number"
 | 
				
			||||||
 | 
					                        default "97"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                config ADAPTER_EC200T_PIN_DRIVER
 | 
				
			||||||
 | 
					                        string "EC200T device pin driver path"
 | 
				
			||||||
 | 
					                        default "/dev/gpio3"
 | 
				
			||||||
 | 
					        endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        config ADAPTER_EC200T_DRIVER_EXTUART
 | 
				
			||||||
 | 
					                bool "Using extra uart to support 4G"
 | 
				
			||||||
 | 
					                default n
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        config ADAPTER_EC200T_DRIVER
 | 
					        config ADAPTER_EC200T_DRIVER
 | 
				
			||||||
                string "EC200T device uart driver path"
 | 
					                string "EC200T device uart driver path"
 | 
				
			||||||
                default "/dev/ttyS8"
 | 
					                default "/dev/ttyS8"
 | 
				
			||||||
 | 
					                depends on !ADAPTER_EC200T_DRIVER_EXTUART
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if ADAPTER_EC200T_DRIVER_EXTUART                    
 | 
				
			||||||
 | 
					                config ADAPTER_EC200T_DRIVER
 | 
				
			||||||
 | 
					                        string "EC200T device extra uart driver path"
 | 
				
			||||||
 | 
					                        default "/dev/extuart_dev5"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                config ADAPTER_EC200T_DRIVER_EXT_PORT
 | 
				
			||||||
 | 
					                        int "if EC200T device using extuart, choose port"
 | 
				
			||||||
 | 
					                        default "5"
 | 
				
			||||||
 | 
					        endif
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if ADD_RTTHREAD_FETURES
 | 
					if ADD_RTTHREAD_FETURES
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -142,9 +142,6 @@ out:
 | 
				
			||||||
    return ret;
 | 
					    return ret;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
static int Ec200tIoctl(struct Adapter *adapter, int cmd, void *args){ return 0;}
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
#ifdef ADD_RTTHREAD_FETURES
 | 
					#ifdef ADD_RTTHREAD_FETURES
 | 
				
			||||||
static int Ec200tIoctl(struct Adapter *adapter, int cmd, void *args){ return 0;}
 | 
					static int Ec200tIoctl(struct Adapter *adapter, int cmd, void *args){ return 0;}
 | 
				
			||||||
#else
 | 
					#else
 | 
				
			||||||
| 
						 | 
					@ -166,6 +163,7 @@ static int Ec200tIoctl(struct Adapter *adapter, int cmd, void *args)
 | 
				
			||||||
    serial_cfg.serial_parity_mode = PARITY_NONE;
 | 
					    serial_cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    serial_cfg.serial_bit_order = STOP_BITS_1;
 | 
					    serial_cfg.serial_bit_order = STOP_BITS_1;
 | 
				
			||||||
    serial_cfg.serial_invert_mode = NRZ_NORMAL;
 | 
					    serial_cfg.serial_invert_mode = NRZ_NORMAL;
 | 
				
			||||||
 | 
					    serial_cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef ADAPTER_EC200T_DRIVER_EXT_PORT
 | 
					#ifdef ADAPTER_EC200T_DRIVER_EXT_PORT
 | 
				
			||||||
    serial_cfg.is_ext_uart = 1;
 | 
					    serial_cfg.is_ext_uart = 1;
 | 
				
			||||||
    serial_cfg.ext_uart_no = ADAPTER_EC200T_DRIVER_EXT_PORT;
 | 
					    serial_cfg.ext_uart_no = ADAPTER_EC200T_DRIVER_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					@ -182,7 +180,6 @@ static int Ec200tIoctl(struct Adapter *adapter, int cmd, void *args)
 | 
				
			||||||
    return 0;
 | 
					    return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int Ec200tConnect(struct Adapter *adapter, enum NetRoleType net_role, const char *ip, const char *port, enum IpType ip_type)
 | 
					static int Ec200tConnect(struct Adapter *adapter, enum NetRoleType net_role, const char *ip, const char *port, enum IpType ip_type)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -50,6 +50,10 @@ if ADD_NUTTX_FETURES
 | 
				
			||||||
                config ADAPTER_HC08_DRIVER
 | 
					                config ADAPTER_HC08_DRIVER
 | 
				
			||||||
                        string "HC08 device extra uart driver path"
 | 
					                        string "HC08 device extra uart driver path"
 | 
				
			||||||
                        default "/dev/extuart_dev2"
 | 
					                        default "/dev/extuart_dev2"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                config ADAPTER_HC08_DRIVER_EXT_PORT
 | 
				
			||||||
 | 
					                        int "if HC08 device using extuart, choose port"
 | 
				
			||||||
 | 
					                        default "2"
 | 
				
			||||||
        endif
 | 
					        endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -262,6 +262,7 @@ static int Hc08Open(struct Adapter *adapter)
 | 
				
			||||||
    serial_cfg.serial_parity_mode = PARITY_NONE;
 | 
					    serial_cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    serial_cfg.serial_bit_order = STOP_BITS_1;
 | 
					    serial_cfg.serial_bit_order = STOP_BITS_1;
 | 
				
			||||||
    serial_cfg.serial_invert_mode = NRZ_NORMAL;
 | 
					    serial_cfg.serial_invert_mode = NRZ_NORMAL;
 | 
				
			||||||
 | 
					    serial_cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef ADAPTER_HC08_DRIVER_EXT_PORT
 | 
					#ifdef ADAPTER_HC08_DRIVER_EXT_PORT
 | 
				
			||||||
    serial_cfg.is_ext_uart = 1;
 | 
					    serial_cfg.is_ext_uart = 1;
 | 
				
			||||||
    serial_cfg.ext_uart_no = ADAPTER_HC08_DRIVER_EXT_PORT;
 | 
					    serial_cfg.ext_uart_no = ADAPTER_HC08_DRIVER_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					@ -300,42 +301,6 @@ static int Hc08Close(struct Adapter *adapter)
 | 
				
			||||||
    return 0;
 | 
					    return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
static int Hc08Ioctl(struct Adapter *adapter, int cmd, void *args)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    if (OPE_INT != cmd) {
 | 
					 | 
				
			||||||
        printf("Hc08Ioctl only support OPE_INT, do not support %d\n", cmd);
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    uint32_t baud_rate = *((uint32_t *)args);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    PrivIoctl(adapter->fd, OPE_INT, baud_rate);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    //Step1 : detect hc08 serial function
 | 
					 | 
				
			||||||
    if (Hc08AtConfigure(adapter->agent, HC08_AT_CMD_DETECT, NULL, NULL) < 0) {
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    //Step2 : set hc08 device serial baud, hc08_set_baud send "AT+BAUD=%s"
 | 
					 | 
				
			||||||
    if (Hc08AtConfigure(adapter->agent, HC08_AT_CMD_SET_BAUDRATE, args, NULL) < 0) {
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    PrivTaskDelay(200);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    //Step3 : show hc08 device info, hc08_get send "AT+RX" response device info
 | 
					 | 
				
			||||||
    char device_info[HC08_RESP_DEFAULT_SIZE * 2] = {0};
 | 
					 | 
				
			||||||
    if (Hc08AtConfigure(adapter->agent, HC08_AT_CMD_GET_DEVICE_INFO, NULL, device_info) < 0) {
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    ADAPTER_DEBUG("Hc08 ioctl done\n");
 | 
					 | 
				
			||||||
    
 | 
					 | 
				
			||||||
    return 0;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#else  
 | 
					 | 
				
			||||||
static int Hc08Ioctl(struct Adapter *adapter, int cmd, void *args)
 | 
					static int Hc08Ioctl(struct Adapter *adapter, int cmd, void *args)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    if (OPE_INT != cmd) {
 | 
					    if (OPE_INT != cmd) {
 | 
				
			||||||
| 
						 | 
					@ -355,6 +320,7 @@ static int Hc08Ioctl(struct Adapter *adapter, int cmd, void *args)
 | 
				
			||||||
    serial_cfg.serial_parity_mode = PARITY_NONE;
 | 
					    serial_cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    serial_cfg.serial_bit_order = STOP_BITS_1;
 | 
					    serial_cfg.serial_bit_order = STOP_BITS_1;
 | 
				
			||||||
    serial_cfg.serial_invert_mode = NRZ_NORMAL;
 | 
					    serial_cfg.serial_invert_mode = NRZ_NORMAL;
 | 
				
			||||||
 | 
					    serial_cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef ADAPTER_HC08_DRIVER_EXT_PORT
 | 
					#ifdef ADAPTER_HC08_DRIVER_EXT_PORT
 | 
				
			||||||
    serial_cfg.is_ext_uart = 1;
 | 
					    serial_cfg.is_ext_uart = 1;
 | 
				
			||||||
    serial_cfg.ext_uart_no = ADAPTER_HC08_DRIVER_EXT_PORT;
 | 
					    serial_cfg.ext_uart_no = ADAPTER_HC08_DRIVER_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					@ -426,8 +392,6 @@ static int Hc08Ioctl(struct Adapter *adapter, int cmd, void *args)
 | 
				
			||||||
    return 0;
 | 
					    return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
static int Hc08SetAddr(struct Adapter *adapter, const char *ip, const char *gateway, const char *netmask)
 | 
					static int Hc08SetAddr(struct Adapter *adapter, const char *ip, const char *gateway, const char *netmask)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    char mac_addr[HC08_RESP_DEFAULT_SIZE] = {0};
 | 
					    char mac_addr[HC08_RESP_DEFAULT_SIZE] = {0};
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -401,6 +401,7 @@ static int Hfa21EthernetIoctl(struct Adapter *adapter, int cmd, void *args)
 | 
				
			||||||
    serial_cfg.serial_parity_mode = PARITY_NONE;
 | 
					    serial_cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    serial_cfg.serial_bit_order = BIT_ORDER_LSB;
 | 
					    serial_cfg.serial_bit_order = BIT_ORDER_LSB;
 | 
				
			||||||
    serial_cfg.serial_invert_mode = NRZ_NORMAL;
 | 
					    serial_cfg.serial_invert_mode = NRZ_NORMAL;
 | 
				
			||||||
 | 
					    serial_cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef ADAPTER_HFA21_DRIVER_EXT_PORT
 | 
					#ifdef ADAPTER_HFA21_DRIVER_EXT_PORT
 | 
				
			||||||
    serial_cfg.is_ext_uart = 1;
 | 
					    serial_cfg.is_ext_uart = 1;
 | 
				
			||||||
    serial_cfg.ext_uart_no = ADAPTER_HFA21_DRIVER_EXT_PORT;
 | 
					    serial_cfg.ext_uart_no = ADAPTER_HFA21_DRIVER_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -59,6 +59,9 @@ if ADD_NUTTX_FETURES
 | 
				
			||||||
                        string "E220 device extra uart driver path"
 | 
					                        string "E220 device extra uart driver path"
 | 
				
			||||||
                        default "/dev/extuart_dev3"
 | 
					                        default "/dev/extuart_dev3"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                config ADAPTER_E220_DRIVER_EXT_PORT
 | 
				
			||||||
 | 
					                        int "if E220 device using extuart, choose port"
 | 
				
			||||||
 | 
					                        default "3"
 | 
				
			||||||
        endif
 | 
					        endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -58,6 +58,7 @@ enum E220LoraMode
 | 
				
			||||||
static void E220LoraModeConfig(enum E220LoraMode mode)
 | 
					static void E220LoraModeConfig(enum E220LoraMode mode)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    int m0_fd, m1_fd;
 | 
					    int m0_fd, m1_fd;
 | 
				
			||||||
 | 
					    char value0, value1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //delay 1s , wait AUX ready
 | 
					    //delay 1s , wait AUX ready
 | 
				
			||||||
    PrivTaskDelay(1000);
 | 
					    PrivTaskDelay(1000);
 | 
				
			||||||
| 
						 | 
					@ -77,24 +78,31 @@ static void E220LoraModeConfig(enum E220LoraMode mode)
 | 
				
			||||||
    switch (mode)
 | 
					    switch (mode)
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
    case DATA_TRANSFER_MODE:
 | 
					    case DATA_TRANSFER_MODE:
 | 
				
			||||||
        PrivIoctl(m1_fd, GPIOC_WRITE, (unsigned long)GPIO_LOW);
 | 
					        value1 = '0';
 | 
				
			||||||
        PrivIoctl(m0_fd, GPIOC_WRITE, (unsigned long)GPIO_LOW);
 | 
					        value0 = '0';
 | 
				
			||||||
 | 
					        PrivWrite(m1_fd, &value1, 1);
 | 
				
			||||||
 | 
					        PrivWrite(m0_fd, &value0, 1);
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    case WOR_SEND_MODE:
 | 
					    case WOR_SEND_MODE:
 | 
				
			||||||
        PrivIoctl(m1_fd, GPIOC_WRITE, (unsigned long)GPIO_LOW);
 | 
					        value1 = '0';
 | 
				
			||||||
        PrivIoctl(m0_fd, GPIOC_WRITE, (unsigned long)GPIO_HIGH);
 | 
					        value0 = '1';
 | 
				
			||||||
 | 
					        PrivWrite(m1_fd, &value1, 1);
 | 
				
			||||||
 | 
					        PrivWrite(m0_fd, &value0, 1);
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    case WOR_RECEIVE_MODE:
 | 
					    case WOR_RECEIVE_MODE:
 | 
				
			||||||
        PrivIoctl(m1_fd, GPIOC_WRITE, (unsigned long)GPIO_HIGH);
 | 
					        value1 = '1';
 | 
				
			||||||
 | 
					        value0 = '0';
 | 
				
			||||||
        PrivIoctl(m0_fd, GPIOC_WRITE,(unsigned long)GPIO_LOW);
 | 
					        PrivWrite(m1_fd, &value1, 1);
 | 
				
			||||||
 | 
					        PrivWrite(m0_fd, &value0, 1);
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    case CONFIGURE_MODE_MODE:
 | 
					    case CONFIGURE_MODE_MODE:
 | 
				
			||||||
        PrivIoctl(m1_fd, GPIOC_WRITE, (unsigned long)GPIO_HIGH);
 | 
					        value1 = '1';
 | 
				
			||||||
        PrivIoctl(m0_fd, GPIOC_WRITE, (unsigned long)GPIO_HIGH);
 | 
					        value0 = '1';
 | 
				
			||||||
 | 
					        PrivWrite(m1_fd, &value1, 1);
 | 
				
			||||||
 | 
					        PrivWrite(m0_fd, &value0, 1);
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    default:
 | 
					    default:
 | 
				
			||||||
| 
						 | 
					@ -329,25 +337,6 @@ static int E220GetRegisterParam(uint8 *buf)
 | 
				
			||||||
 * @param adapter - Lora device pointer
 | 
					 * @param adapter - Lora device pointer
 | 
				
			||||||
 * @return success: 0, failure: -1
 | 
					 * @return success: 0, failure: -1
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
static int E220Open(struct Adapter *adapter)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    /*step1: open e220 uart port*/
 | 
					 | 
				
			||||||
    adapter->fd = PrivOpen(ADAPTER_E220_DRIVER, O_RDWR);
 | 
					 | 
				
			||||||
    if (adapter->fd < 0) {
 | 
					 | 
				
			||||||
        printf("E220Open get uart %s fd error\n", ADAPTER_E220_DRIVER);
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    PrivIoctl(adapter->fd, OPE_INT, (unsigned long)BAUD_RATE_9600);
 | 
					 | 
				
			||||||
    E220SetRegisterParam(adapter, E220_ADDRESS, E220_CHANNEL, E220_UART_BAUD_RATE);
 | 
					 | 
				
			||||||
    PrivIoctl(adapter->fd, OPE_INT, (unsigned long)E220_UART_BAUD_RATE);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    ADAPTER_DEBUG("E220Open done\n");
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return 0;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
#ifdef ADD_RTTHREAD_FETURES
 | 
					#ifdef ADD_RTTHREAD_FETURES
 | 
				
			||||||
static int E220Open(struct Adapter *adapter)
 | 
					static int E220Open(struct Adapter *adapter)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
| 
						 | 
					@ -420,6 +409,7 @@ static int E220Open(struct Adapter *adapter)
 | 
				
			||||||
    cfg.serial_bit_order = BIT_ORDER_LSB;
 | 
					    cfg.serial_bit_order = BIT_ORDER_LSB;
 | 
				
			||||||
    cfg.serial_invert_mode = NRZ_NORMAL;
 | 
					    cfg.serial_invert_mode = NRZ_NORMAL;
 | 
				
			||||||
    cfg.serial_buffer_size = SERIAL_RB_BUFSZ;
 | 
					    cfg.serial_buffer_size = SERIAL_RB_BUFSZ;
 | 
				
			||||||
 | 
					    cfg.is_ext_uart = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /*aiit board use ch438, so it needs more serial configuration*/
 | 
					    /*aiit board use ch438, so it needs more serial configuration*/
 | 
				
			||||||
#ifdef ADAPTER_E220_DRIVER_EXTUART
 | 
					#ifdef ADAPTER_E220_DRIVER_EXTUART
 | 
				
			||||||
| 
						 | 
					@ -456,7 +446,6 @@ static int E220Open(struct Adapter *adapter)
 | 
				
			||||||
    return 0;
 | 
					    return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * @description: Close E220 uart function
 | 
					 * @description: Close E220 uart function
 | 
				
			||||||
| 
						 | 
					@ -624,9 +613,10 @@ static void LoraOpen(void)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    E220Open(adapter);
 | 
					    E220Open(adapter);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
MSH_CMD_EXPORT(LoraOpen,Lora open test sample);
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef ADD_RTTHREAD_FETURES
 | 
					#ifdef ADD_RTTHREAD_FETURES
 | 
				
			||||||
 | 
					MSH_CMD_EXPORT(LoraOpen,Lora open test sample);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void LoraRead(void *parameter)
 | 
					static void LoraRead(void *parameter)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	int RevLen;
 | 
						int RevLen;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -56,7 +56,7 @@ static int BC28UartOpen(struct Adapter *adapter)
 | 
				
			||||||
    cfg.serial_bit_order = BIT_ORDER_LSB;
 | 
					    cfg.serial_bit_order = BIT_ORDER_LSB;
 | 
				
			||||||
    cfg.serial_invert_mode = NRZ_NORMAL;
 | 
					    cfg.serial_invert_mode = NRZ_NORMAL;
 | 
				
			||||||
    cfg.serial_buffer_size = SERIAL_RB_BUFSZ;
 | 
					    cfg.serial_buffer_size = SERIAL_RB_BUFSZ;
 | 
				
			||||||
 | 
					    cfg.is_ext_uart = 0;
 | 
				
			||||||
    /*aiit board use ch438, so it needs more serial configuration*/
 | 
					    /*aiit board use ch438, so it needs more serial configuration*/
 | 
				
			||||||
#ifdef ADAPTER_BC28_DRIVER_EXTUART
 | 
					#ifdef ADAPTER_BC28_DRIVER_EXTUART
 | 
				
			||||||
    cfg.is_ext_uart = 1;
 | 
					    cfg.is_ext_uart = 1;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -25,11 +25,6 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define LEN_PARA_BUF 128
 | 
					#define LEN_PARA_BUF 128
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
#define EOK 0
 | 
					 | 
				
			||||||
#define x_err_t int
 | 
					 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
static int Esp07sWifiSetDown(struct Adapter *adapter_at);
 | 
					static int Esp07sWifiSetDown(struct Adapter *adapter_at);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
| 
						 | 
					@ -80,7 +75,7 @@ static int Esp07sUartOpen(struct Adapter *adapter)
 | 
				
			||||||
    cfg.serial_bit_order = BIT_ORDER_LSB;
 | 
					    cfg.serial_bit_order = BIT_ORDER_LSB;
 | 
				
			||||||
    cfg.serial_invert_mode = NRZ_NORMAL;
 | 
					    cfg.serial_invert_mode = NRZ_NORMAL;
 | 
				
			||||||
    cfg.serial_buffer_size = SERIAL_RB_BUFSZ;
 | 
					    cfg.serial_buffer_size = SERIAL_RB_BUFSZ;
 | 
				
			||||||
 | 
					    cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef ADAPTER_ESP07S_DRIVER_EXT_PORT
 | 
					#ifdef ADAPTER_ESP07S_DRIVER_EXT_PORT
 | 
				
			||||||
    cfg.is_ext_uart = 1;
 | 
					    cfg.is_ext_uart = 1;
 | 
				
			||||||
    cfg.ext_uart_no = ADAPTER_ESP07S_DRIVER_EXT_PORT;
 | 
					    cfg.ext_uart_no = ADAPTER_ESP07S_DRIVER_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					@ -511,7 +506,7 @@ static int Esp07sWifiIoctl(struct Adapter *adapter, int cmd, void *args)
 | 
				
			||||||
            cfg.serial_bit_order = BIT_ORDER_LSB;
 | 
					            cfg.serial_bit_order = BIT_ORDER_LSB;
 | 
				
			||||||
            cfg.serial_invert_mode = NRZ_NORMAL;
 | 
					            cfg.serial_invert_mode = NRZ_NORMAL;
 | 
				
			||||||
            cfg.serial_buffer_size = SERIAL_RB_BUFSZ;
 | 
					            cfg.serial_buffer_size = SERIAL_RB_BUFSZ;
 | 
				
			||||||
 | 
					            cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef ADAPTER_ESP07S_DRIVER_EXT_PORT
 | 
					#ifdef ADAPTER_ESP07S_DRIVER_EXT_PORT
 | 
				
			||||||
            cfg.is_ext_uart = 1;
 | 
					            cfg.is_ext_uart = 1;
 | 
				
			||||||
            cfg.ext_uart_no         = ADAPTER_ESP07S_DRIVER_EXT_PORT;
 | 
					            cfg.ext_uart_no         = ADAPTER_ESP07S_DRIVER_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -473,6 +473,7 @@ static int Hfa21WifiIoctl(struct Adapter *adapter, int cmd, void *args)
 | 
				
			||||||
    serial_cfg.serial_parity_mode = PARITY_NONE;
 | 
					    serial_cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    serial_cfg.serial_bit_order = BIT_ORDER_LSB;
 | 
					    serial_cfg.serial_bit_order = BIT_ORDER_LSB;
 | 
				
			||||||
    serial_cfg.serial_invert_mode = NRZ_NORMAL;
 | 
					    serial_cfg.serial_invert_mode = NRZ_NORMAL;
 | 
				
			||||||
 | 
					    serial_cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef ADAPTER_HFA21_DRIVER_EXT_PORT
 | 
					#ifdef ADAPTER_HFA21_DRIVER_EXT_PORT
 | 
				
			||||||
    serial_cfg.is_ext_uart = 1;
 | 
					    serial_cfg.is_ext_uart = 1;
 | 
				
			||||||
    serial_cfg.ext_uart_no = ADAPTER_HFA21_DRIVER_EXT_PORT;
 | 
					    serial_cfg.ext_uart_no = ADAPTER_HFA21_DRIVER_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -66,6 +66,10 @@ if ADD_NUTTX_FETURES
 | 
				
			||||||
                config ADAPTER_E18_DRIVER
 | 
					                config ADAPTER_E18_DRIVER
 | 
				
			||||||
                string "E18 device extra uart driver path"
 | 
					                string "E18 device extra uart driver path"
 | 
				
			||||||
                default "/dev/extuart_dev1"
 | 
					                default "/dev/extuart_dev1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                config ADAPTER_E18_DRIVER_EXT_PORT
 | 
				
			||||||
 | 
					                        int "if E18 device using extuart, choose port"
 | 
				
			||||||
 | 
					                        default "1"
 | 
				
			||||||
    endif
 | 
					    endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -69,18 +69,6 @@ static int E18HardwareModeGet()
 | 
				
			||||||
#endif 
 | 
					#endif 
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
static int E18UartOpen(struct Adapter *adapter)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    adapter->fd = PrivOpen(ADAPTER_E18_DRIVER, O_RDWR);
 | 
					 | 
				
			||||||
    if (adapter->fd < 0) {
 | 
					 | 
				
			||||||
        printf("E18UartSetUp get serial %s fd error\n", ADAPTER_E18_DRIVER);
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return adapter->fd;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
static int E18UartOpen(struct Adapter *adapter)
 | 
					static int E18UartOpen(struct Adapter *adapter)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    if (NULL == adapter) {
 | 
					    if (NULL == adapter) {
 | 
				
			||||||
| 
						 | 
					@ -105,6 +93,7 @@ static int E18UartOpen(struct Adapter *adapter)
 | 
				
			||||||
    cfg.serial_bit_order = BIT_ORDER_LSB;
 | 
					    cfg.serial_bit_order = BIT_ORDER_LSB;
 | 
				
			||||||
    cfg.serial_invert_mode = NRZ_NORMAL;
 | 
					    cfg.serial_invert_mode = NRZ_NORMAL;
 | 
				
			||||||
    cfg.serial_buffer_size = SERIAL_RB_BUFSZ;
 | 
					    cfg.serial_buffer_size = SERIAL_RB_BUFSZ;
 | 
				
			||||||
 | 
					    cfg.is_ext_uart = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /*aiit board use ch438, so it needs more serial configuration*/
 | 
					    /*aiit board use ch438, so it needs more serial configuration*/
 | 
				
			||||||
#ifdef ADAPTER_E18_DRIVER_EXTUART
 | 
					#ifdef ADAPTER_E18_DRIVER_EXTUART
 | 
				
			||||||
| 
						 | 
					@ -123,7 +112,6 @@ static int E18UartOpen(struct Adapter *adapter)
 | 
				
			||||||
    printf("Zigbee uart config ready\n");
 | 
					    printf("Zigbee uart config ready\n");
 | 
				
			||||||
    return 0;
 | 
					    return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int E18NetworkModeConfig(struct Adapter *adapter)
 | 
					static int E18NetworkModeConfig(struct Adapter *adapter)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -34,18 +34,6 @@ static struct SensorProductInfo info =
 | 
				
			||||||
 * @param sdev - sensor device pointer
 | 
					 * @param sdev - sensor device pointer
 | 
				
			||||||
 * @return success: 1 , failure: other
 | 
					 * @return success: 1 , failure: other
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    sdev->fd = PrivOpen(SENSOR_DEVICE_AS830_DEV, O_RDWR);
 | 
					 | 
				
			||||||
    if (sdev->fd < 0) {
 | 
					 | 
				
			||||||
        printf("open %s error\n", SENSOR_DEVICE_AS830_DEV);
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return sdev->fd;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    int result = 0;
 | 
					    int result = 0;
 | 
				
			||||||
| 
						 | 
					@ -64,6 +52,7 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
    cfg.serial_parity_mode = PARITY_NONE;
 | 
					    cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    cfg.serial_bit_order = 0;
 | 
					    cfg.serial_bit_order = 0;
 | 
				
			||||||
    cfg.serial_invert_mode = 0;
 | 
					    cfg.serial_invert_mode = 0;
 | 
				
			||||||
 | 
					    cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef SENSOR_AS830_DRIVER_EXTUART
 | 
					#ifdef SENSOR_AS830_DRIVER_EXTUART
 | 
				
			||||||
    cfg.is_ext_uart = 1;
 | 
					    cfg.is_ext_uart = 1;
 | 
				
			||||||
    cfg.ext_uart_no = SENSOR_DEVICE_AS830_DEV_EXT_PORT;
 | 
					    cfg.ext_uart_no = SENSOR_DEVICE_AS830_DEV_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					@ -77,7 +66,6 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return result;
 | 
					    return result;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * @description: Read sensor device
 | 
					 * @description: Read sensor device
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -37,19 +37,6 @@ static struct SensorProductInfo info =
 | 
				
			||||||
 * @param sdev - sensor device pointer
 | 
					 * @param sdev - sensor device pointer
 | 
				
			||||||
 * @return success: 1 , failure: other
 | 
					 * @return success: 1 , failure: other
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    int result = 0;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    sdev->fd = PrivOpen(SENSOR_DEVICE_G8S_DEV, O_RDWR);
 | 
					 | 
				
			||||||
    if (sdev->fd < 0) {
 | 
					 | 
				
			||||||
        printf("open %s error\n", SENSOR_DEVICE_G8S_DEV);
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    int result = 0;
 | 
					    int result = 0;
 | 
				
			||||||
| 
						 | 
					@ -69,6 +56,7 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
    cfg.serial_parity_mode = PARITY_NONE;
 | 
					    cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    cfg.serial_bit_order = 0;
 | 
					    cfg.serial_bit_order = 0;
 | 
				
			||||||
    cfg.serial_invert_mode = 0;
 | 
					    cfg.serial_invert_mode = 0;
 | 
				
			||||||
 | 
					    cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef SENSOR_G8S_DRIVER_EXTUART
 | 
					#ifdef SENSOR_G8S_DRIVER_EXTUART
 | 
				
			||||||
    cfg.is_ext_uart = 1;
 | 
					    cfg.is_ext_uart = 1;
 | 
				
			||||||
    cfg.ext_uart_no = SENSOR_DEVICE_G8S_DEV_EXT_PORT;
 | 
					    cfg.ext_uart_no = SENSOR_DEVICE_G8S_DEV_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					@ -82,7 +70,6 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return result;
 | 
					    return result;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * @description: Read sensor device
 | 
					 * @description: Read sensor device
 | 
				
			||||||
 * @param sdev - sensor device pointer
 | 
					 * @param sdev - sensor device pointer
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -38,25 +38,6 @@ static struct SensorProductInfo info =
 | 
				
			||||||
 * @param sdev - sensor device pointer
 | 
					 * @param sdev - sensor device pointer
 | 
				
			||||||
 * @return success: 1 , failure: other
 | 
					 * @return success: 1 , failure: other
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    int result = 0;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    sdev->fd = PrivOpen(SENSOR_DEVICE_ZG09_DEV, O_RDWR);
 | 
					 | 
				
			||||||
    if (sdev->fd < 0) {
 | 
					 | 
				
			||||||
        printf("open %s error\n", SENSOR_DEVICE_ZG09_DEV);
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    result = sdev->done->ioctl(sdev, SENSOR_DEVICE_PASSIVE);
 | 
					 | 
				
			||||||
    if (result != 0){
 | 
					 | 
				
			||||||
        printf("SensorDeviceOpen:ioctl failed, status=%d\n", result);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return result;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    int result = 0;
 | 
					    int result = 0;
 | 
				
			||||||
| 
						 | 
					@ -75,6 +56,7 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
    cfg.serial_parity_mode = PARITY_NONE;
 | 
					    cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    cfg.serial_bit_order = 0;
 | 
					    cfg.serial_bit_order = 0;
 | 
				
			||||||
    cfg.serial_invert_mode = 0;
 | 
					    cfg.serial_invert_mode = 0;
 | 
				
			||||||
 | 
					    cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef SENSOR_ZG09_DRIVER_EXTUART
 | 
					#ifdef SENSOR_ZG09_DRIVER_EXTUART
 | 
				
			||||||
    cfg.is_ext_uart = 1;
 | 
					    cfg.is_ext_uart = 1;
 | 
				
			||||||
    cfg.ext_uart_no = SENSOR_DEVICE_ZG09_DEV_EXT_PORT;
 | 
					    cfg.ext_uart_no = SENSOR_DEVICE_ZG09_DEV_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					@ -90,7 +72,6 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return result;
 | 
					    return result;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * @description: Read sensor device
 | 
					 * @description: Read sensor device
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -35,18 +35,6 @@ static struct SensorProductInfo info =
 | 
				
			||||||
 * @param sdev - sensor device pointer
 | 
					 * @param sdev - sensor device pointer
 | 
				
			||||||
 * @return success: 1 , failure: other
 | 
					 * @return success: 1 , failure: other
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    sdev->fd = PrivOpen(SENSOR_DEVICE_TB600B_WQ_HCHO1OS_DEV, O_RDWR);
 | 
					 | 
				
			||||||
    if (sdev->fd < 0) {
 | 
					 | 
				
			||||||
        printf("open %s error\n", SENSOR_DEVICE_TB600B_WQ_HCHO1OS_DEV);
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return sdev->fd;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    int result = 0;
 | 
					    int result = 0;
 | 
				
			||||||
| 
						 | 
					@ -65,6 +53,7 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
    cfg.serial_parity_mode = PARITY_NONE;
 | 
					    cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    cfg.serial_bit_order = 0;
 | 
					    cfg.serial_bit_order = 0;
 | 
				
			||||||
    cfg.serial_invert_mode = 0;
 | 
					    cfg.serial_invert_mode = 0;
 | 
				
			||||||
 | 
					    cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef SENSOR_TB600B_WQ_HCHO1OS_DRIVER_EXTUART
 | 
					#ifdef SENSOR_TB600B_WQ_HCHO1OS_DRIVER_EXTUART
 | 
				
			||||||
    cfg.is_ext_uart = 1;
 | 
					    cfg.is_ext_uart = 1;
 | 
				
			||||||
    cfg.ext_uart_no = SENSOR_DEVICE_TB600B_WQ_HCHO1OS_DEV_EXT_PORT;
 | 
					    cfg.ext_uart_no = SENSOR_DEVICE_TB600B_WQ_HCHO1OS_DEV_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					@ -78,7 +67,6 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return result;
 | 
					    return result;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * @description: Read sensor device
 | 
					 * @description: Read sensor device
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -36,12 +36,6 @@ static struct SensorProductInfo info =
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
    sdev->fd = PrivOpen(SENSOR_DEVICE_HS300X_DEV, O_RDWR);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return sdev->fd;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
    int result;
 | 
					    int result;
 | 
				
			||||||
    uint16_t i2c_dev_addr = SENSOR_DEVICE_HS300X_I2C_ADDR;    
 | 
					    uint16_t i2c_dev_addr = SENSOR_DEVICE_HS300X_I2C_ADDR;    
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
| 
						 | 
					@ -58,7 +52,6 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
    result = PrivIoctl(sdev->fd, OPE_INT, &ioctl_cfg);
 | 
					    result = PrivIoctl(sdev->fd, OPE_INT, &ioctl_cfg);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return result;
 | 
					    return result;
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -43,17 +43,6 @@ static struct SensorProductInfo info =
 | 
				
			||||||
 * @param sdev - sensor device pointer
 | 
					 * @param sdev - sensor device pointer
 | 
				
			||||||
 * @return success: 1 , failure: other
 | 
					 * @return success: 1 , failure: other
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    sdev->fd = PrivOpen(SENSOR_DEVICE_TB600B_IAQ10_DEV, O_RDWR);
 | 
					 | 
				
			||||||
    if (sdev->fd < 0) {
 | 
					 | 
				
			||||||
        printf("open %s error\n", SENSOR_DEVICE_TB600B_IAQ10_DEV);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return sdev->fd;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    int result = 0;
 | 
					    int result = 0;
 | 
				
			||||||
| 
						 | 
					@ -72,6 +61,7 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
    cfg.serial_parity_mode = PARITY_NONE;
 | 
					    cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    cfg.serial_bit_order = 0;
 | 
					    cfg.serial_bit_order = 0;
 | 
				
			||||||
    cfg.serial_invert_mode = 0;
 | 
					    cfg.serial_invert_mode = 0;
 | 
				
			||||||
 | 
					    cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef SENSOR_TB600B_IAQ10_DRIVER_EXTUART
 | 
					#ifdef SENSOR_TB600B_IAQ10_DRIVER_EXTUART
 | 
				
			||||||
    cfg.is_ext_uart = 1;
 | 
					    cfg.is_ext_uart = 1;
 | 
				
			||||||
    cfg.ext_uart_no = SENSOR_DEVICE_TB600B_IAQ10_DEV_EXT_PORT;
 | 
					    cfg.ext_uart_no = SENSOR_DEVICE_TB600B_IAQ10_DEV_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					@ -85,7 +75,6 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return result;
 | 
					    return result;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * @description: Read sensor device
 | 
					 * @description: Read sensor device
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -51,32 +51,6 @@ static void *ReadTask(void *parameter)
 | 
				
			||||||
 * @param sdev - sensor device pointer
 | 
					 * @param sdev - sensor device pointer
 | 
				
			||||||
 * @return success: 1 , failure: other
 | 
					 * @return success: 1 , failure: other
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    int result = 0;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    result = PrivMutexCreate(&buff_lock, 0);
 | 
					 | 
				
			||||||
    if (result != 0){
 | 
					 | 
				
			||||||
      printf("SensorDeviceOpen:mutex create failed, status=%d\n", result);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    sdev->fd = open(SENSOR_DEVICE_PS5308_DEV, O_RDWR);
 | 
					 | 
				
			||||||
    if (sdev->fd < 0) {
 | 
					 | 
				
			||||||
        printf("SensorDeviceOpen:open %s error\n", SENSOR_DEVICE_PS5308_DEV);
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    result = PrivTaskCreate(&active_task_id, NULL, &ReadTask, sdev);
 | 
					 | 
				
			||||||
    if (result != 0){
 | 
					 | 
				
			||||||
      printf("SensorDeviceOpen:task create failed, status=%d\n", result);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    PrivTaskStartup(&active_task_id);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return result;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    int result = 0;
 | 
					    int result = 0;
 | 
				
			||||||
| 
						 | 
					@ -97,6 +71,7 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
    cfg.serial_parity_mode = PARITY_NONE;
 | 
					    cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    cfg.serial_bit_order = 0;
 | 
					    cfg.serial_bit_order = 0;
 | 
				
			||||||
    cfg.serial_invert_mode = 0;
 | 
					    cfg.serial_invert_mode = 0;
 | 
				
			||||||
 | 
					    cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef SENSOR_PS5308_DRIVER_EXTUART
 | 
					#ifdef SENSOR_PS5308_DRIVER_EXTUART
 | 
				
			||||||
    cfg.is_ext_uart = 1;
 | 
					    cfg.is_ext_uart = 1;
 | 
				
			||||||
    cfg.ext_uart_no = SENSOR_DEVICE_PS5308_DEV_EXT_PORT;
 | 
					    cfg.ext_uart_no = SENSOR_DEVICE_PS5308_DEV_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					@ -110,7 +85,6 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return result;
 | 
					    return result;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * @description: Close PS5308 sensor device
 | 
					 * @description: Close PS5308 sensor device
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -36,12 +36,6 @@ static struct SensorProductInfo info =
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
    sdev->fd = PrivOpen(SENSOR_DEVICE_HS300X_DEV, O_RDWR);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return sdev->fd;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
    int result;
 | 
					    int result;
 | 
				
			||||||
    uint16_t i2c_dev_addr = SENSOR_DEVICE_HS300X_I2C_ADDR;
 | 
					    uint16_t i2c_dev_addr = SENSOR_DEVICE_HS300X_I2C_ADDR;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
| 
						 | 
					@ -57,7 +51,6 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
    result = PrivIoctl(sdev->fd, OPE_INT, &ioctl_cfg);
 | 
					    result = PrivIoctl(sdev->fd, OPE_INT, &ioctl_cfg);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return result;
 | 
					    return result;
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -35,18 +35,6 @@ static struct SensorProductInfo info =
 | 
				
			||||||
 * @param sdev - sensor device pointer
 | 
					 * @param sdev - sensor device pointer
 | 
				
			||||||
 * @return success: 1 , failure: other
 | 
					 * @return success: 1 , failure: other
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    sdev->fd = PrivOpen(SENSOR_DEVICE_TB600B_TVOC10_DEV, O_RDWR);
 | 
					 | 
				
			||||||
    if (sdev->fd < 0) {
 | 
					 | 
				
			||||||
        printf("open %s error\n", SENSOR_DEVICE_TB600B_TVOC10_DEV);
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return sdev->fd;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    int result = 0;
 | 
					    int result = 0;
 | 
				
			||||||
| 
						 | 
					@ -65,6 +53,7 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
    cfg.serial_parity_mode = PARITY_NONE;
 | 
					    cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    cfg.serial_bit_order = 0;
 | 
					    cfg.serial_bit_order = 0;
 | 
				
			||||||
    cfg.serial_invert_mode = 0;
 | 
					    cfg.serial_invert_mode = 0;
 | 
				
			||||||
 | 
					    cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef SENSOR_TB600B_TVOC10_DRIVER_EXTUART
 | 
					#ifdef SENSOR_TB600B_TVOC10_DRIVER_EXTUART
 | 
				
			||||||
    cfg.is_ext_uart = 1;
 | 
					    cfg.is_ext_uart = 1;
 | 
				
			||||||
    cfg.ext_uart_no = SENSOR_DEVICE_TB600B_TVOC10_DEV_EXT_PORT;
 | 
					    cfg.ext_uart_no = SENSOR_DEVICE_TB600B_TVOC10_DEV_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					@ -78,7 +67,6 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return result;
 | 
					    return result;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * @description: Read sensor device
 | 
					 * @description: Read sensor device
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -101,6 +101,7 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
    cfg.serial_parity_mode = PARITY_NONE;
 | 
					    cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    cfg.serial_bit_order = 0;
 | 
					    cfg.serial_bit_order = 0;
 | 
				
			||||||
    cfg.serial_invert_mode = 0;
 | 
					    cfg.serial_invert_mode = 0;
 | 
				
			||||||
 | 
					    cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef SENSOR_D124_DRIVER_EXTUART    
 | 
					#ifdef SENSOR_D124_DRIVER_EXTUART    
 | 
				
			||||||
    cfg.is_ext_uart = 1;
 | 
					    cfg.is_ext_uart = 1;
 | 
				
			||||||
    cfg.ext_uart_no = SENSOR_DEVICE_D124_DEV_EXT_PORT;
 | 
					    cfg.ext_uart_no = SENSOR_DEVICE_D124_DEV_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -35,18 +35,6 @@ static struct SensorProductInfo info =
 | 
				
			||||||
 * @param sdev - sensor device pointer
 | 
					 * @param sdev - sensor device pointer
 | 
				
			||||||
 * @return success: 1 , failure: other
 | 
					 * @return success: 1 , failure: other
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    sdev->fd = PrivOpen(SENSOR_DEVICE_QS_FX_DEV, O_RDWR);
 | 
					 | 
				
			||||||
    if (sdev->fd < 0) {
 | 
					 | 
				
			||||||
        printf("open %s error\n", SENSOR_DEVICE_QS_FX_DEV);
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return sdev->fd ;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    int result = 0;
 | 
					    int result = 0;
 | 
				
			||||||
| 
						 | 
					@ -65,6 +53,7 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
    cfg.serial_parity_mode = PARITY_NONE;
 | 
					    cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    cfg.serial_bit_order = 0;
 | 
					    cfg.serial_bit_order = 0;
 | 
				
			||||||
    cfg.serial_invert_mode = 0;
 | 
					    cfg.serial_invert_mode = 0;
 | 
				
			||||||
 | 
					    cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef SENSOR_QS_FX_DRIVER_EXTUART    
 | 
					#ifdef SENSOR_QS_FX_DRIVER_EXTUART    
 | 
				
			||||||
    cfg.is_ext_uart = 1;
 | 
					    cfg.is_ext_uart = 1;
 | 
				
			||||||
    cfg.ext_uart_no = SENSOR_DEVICE_QS_FX_DEV_EXT_PORT;
 | 
					    cfg.ext_uart_no = SENSOR_DEVICE_QS_FX_DEV_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					@ -78,7 +67,6 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return result;
 | 
					    return result;
 | 
				
			||||||
}    
 | 
					}    
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * @description: Read sensor device
 | 
					 * @description: Read sensor device
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -35,17 +35,6 @@ static struct SensorProductInfo info =
 | 
				
			||||||
 * @param sdev - sensor device pointer
 | 
					 * @param sdev - sensor device pointer
 | 
				
			||||||
 * @return success: 1 , failure: other
 | 
					 * @return success: 1 , failure: other
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#ifdef ADD_NUTTX_FETURES
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    sdev->fd = PrivOpen(SENSOR_DEVICE_QS_FS_DEV, O_RDWR);
 | 
					 | 
				
			||||||
    if (sdev->fd < 0) {
 | 
					 | 
				
			||||||
        printf("open %s error\n", SENSOR_DEVICE_QS_FS_DEV);
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    return sdev->fd;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
					static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    int result = 0;
 | 
					    int result = 0;
 | 
				
			||||||
| 
						 | 
					@ -64,6 +53,7 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
    cfg.serial_parity_mode = PARITY_NONE;
 | 
					    cfg.serial_parity_mode = PARITY_NONE;
 | 
				
			||||||
    cfg.serial_bit_order = 0;
 | 
					    cfg.serial_bit_order = 0;
 | 
				
			||||||
    cfg.serial_invert_mode = 0;
 | 
					    cfg.serial_invert_mode = 0;
 | 
				
			||||||
 | 
					    cfg.is_ext_uart = 0;
 | 
				
			||||||
#ifdef SENSOR_QS_FS_DRIVER_EXTUART  
 | 
					#ifdef SENSOR_QS_FS_DRIVER_EXTUART  
 | 
				
			||||||
    cfg.is_ext_uart = 1;  
 | 
					    cfg.is_ext_uart = 1;  
 | 
				
			||||||
    cfg.ext_uart_no = SENSOR_DEVICE_QS_FS_DEV_EXT_PORT;
 | 
					    cfg.ext_uart_no = SENSOR_DEVICE_QS_FS_DEV_EXT_PORT;
 | 
				
			||||||
| 
						 | 
					@ -77,7 +67,6 @@ static int SensorDeviceOpen(struct SensorDevice *sdev)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return result;
 | 
					    return result;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * @description: Read sensor device
 | 
					 * @description: Read sensor device
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -135,9 +135,45 @@ int PrivWrite(int fd, const void *buf, size_t len)
 | 
				
			||||||
    return write(fd, buf, len);
 | 
					    return write(fd, buf, len);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
int PrivIoctl(int fd, int cmd, unsigned long args)
 | 
					static int PrivSerialIoctl(int fd, int cmd, void *args)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    return ioctl(fd, cmd, args);
 | 
					    struct SerialDataCfg *serial_cfg = (struct SerialDataCfg *)args;
 | 
				
			||||||
 | 
					    unsigned long serial_baud_rate = (unsigned long)serial_cfg->serial_baud_rate;
 | 
				
			||||||
 | 
					    if(serial_cfg->is_ext_uart == 1)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        return ioctl(fd, OPE_INT, serial_baud_rate);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    return 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static int PrivPinIoctl(int fd, int cmd, void *args)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    struct PinParam *pin_cfg = (struct PinParam *)args;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    return ioctl(fd, cmd, pin_cfg);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					int PrivIoctl(int fd, int cmd, void *args)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    int ret = 0;
 | 
				
			||||||
 | 
					    struct PrivIoctlCfg *ioctl_cfg = (struct PrivIoctlCfg *)args;
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    switch (ioctl_cfg->ioctl_driver_type)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					    case SERIAL_TYPE:
 | 
				
			||||||
 | 
					        ret = PrivSerialIoctl(fd, cmd, ioctl_cfg->args);
 | 
				
			||||||
 | 
					        break;
 | 
				
			||||||
 | 
					    case PIN_TYPE:
 | 
				
			||||||
 | 
					        ret = PrivPinIoctl(fd, cmd, ioctl_cfg->args);
 | 
				
			||||||
 | 
					        break;
 | 
				
			||||||
 | 
					    case I2C_TYPE:
 | 
				
			||||||
 | 
					        break;
 | 
				
			||||||
 | 
					    default:
 | 
				
			||||||
 | 
					        ret = ioctl(fd, cmd, args);
 | 
				
			||||||
 | 
					        break;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    return ret;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/********************memory api************/
 | 
					/********************memory api************/
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -102,6 +102,9 @@ extern "C" {
 | 
				
			||||||
#define SERIAL_RB_BUFSZ         128
 | 
					#define SERIAL_RB_BUFSZ         128
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define EOK 0
 | 
				
			||||||
 | 
					#define x_err_t int
 | 
				
			||||||
 | 
					
 | 
				
			||||||
struct PinDevIrq
 | 
					struct PinDevIrq
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    int irq_mode;//< RISING/FALLING/HIGH/LOW
 | 
					    int irq_mode;//< RISING/FALLING/HIGH/LOW
 | 
				
			||||||
| 
						 | 
					@ -141,6 +144,7 @@ struct SerialDataCfg
 | 
				
			||||||
    uint8_t serial_bit_order;
 | 
					    uint8_t serial_bit_order;
 | 
				
			||||||
    uint8_t serial_invert_mode;
 | 
					    uint8_t serial_invert_mode;
 | 
				
			||||||
    uint16_t serial_buffer_size;
 | 
					    uint16_t serial_buffer_size;
 | 
				
			||||||
 | 
					    int32 serial_timeout;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    uint8_t is_ext_uart;
 | 
					    uint8_t is_ext_uart;
 | 
				
			||||||
    uint8_t ext_uart_no;
 | 
					    uint8_t ext_uart_no;
 | 
				
			||||||
| 
						 | 
					@ -153,6 +157,10 @@ enum IoctlDriverType
 | 
				
			||||||
    SPI_TYPE,
 | 
					    SPI_TYPE,
 | 
				
			||||||
    I2C_TYPE,
 | 
					    I2C_TYPE,
 | 
				
			||||||
    PIN_TYPE,
 | 
					    PIN_TYPE,
 | 
				
			||||||
 | 
					    LCD_TYPE,
 | 
				
			||||||
 | 
					    ADC_TYPE,
 | 
				
			||||||
 | 
					    DAC_TYPE,
 | 
				
			||||||
 | 
					    WDT_TYPE,
 | 
				
			||||||
    DEFAULT_TYPE,
 | 
					    DEFAULT_TYPE,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -201,7 +209,7 @@ int PrivOpen(const char *path, int flags);
 | 
				
			||||||
int PrivRead(int fd, void *buf, size_t len);
 | 
					int PrivRead(int fd, void *buf, size_t len);
 | 
				
			||||||
int PrivWrite(int fd, const void *buf, size_t len);
 | 
					int PrivWrite(int fd, const void *buf, size_t len);
 | 
				
			||||||
int PrivClose(int fd);
 | 
					int PrivClose(int fd);
 | 
				
			||||||
int PrivIoctl(int fd, int cmd, unsigned long args);
 | 
					int PrivIoctl(int fd, int cmd, void *args);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*********************memory***********************/
 | 
					/*********************memory***********************/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,80 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# This file is autogenerated: PLEASE DO NOT EDIT IT.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# You can use "make menuconfig" to make any modifications to the installed .config file.
 | 
				
			||||||
 | 
					# You can then do "make savedefconfig" to generate a new defconfig file that includes your
 | 
				
			||||||
 | 
					# modifications.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_ARCH_FPU is not set
 | 
				
			||||||
 | 
					# CONFIG_NSH_ARGCAT is not set
 | 
				
			||||||
 | 
					# CONFIG_NSH_CMDOPT_HEXDUMP is not set
 | 
				
			||||||
 | 
					# CONFIG_NSH_CMDPARMS is not set
 | 
				
			||||||
 | 
					CONFIG_ADD_NUTTX_FETURES=y
 | 
				
			||||||
 | 
					CONFIG_ARCH="arm"
 | 
				
			||||||
 | 
					CONFIG_ARCH_BOARD="stm32f4discovery"
 | 
				
			||||||
 | 
					CONFIG_ARCH_BOARD_STM32F4_DISCOVERY=y
 | 
				
			||||||
 | 
					CONFIG_ARCH_BUTTONS=y
 | 
				
			||||||
 | 
					CONFIG_ARCH_CHIP="stm32"
 | 
				
			||||||
 | 
					CONFIG_ARCH_CHIP_STM32=y
 | 
				
			||||||
 | 
					CONFIG_ARCH_CHIP_STM32F407VG=y
 | 
				
			||||||
 | 
					CONFIG_ARCH_STACKDUMP=y
 | 
				
			||||||
 | 
					CONFIG_BOARD_LATE_INITIALIZE=y
 | 
				
			||||||
 | 
					CONFIG_BOARD_LOOPSPERMSEC=16717
 | 
				
			||||||
 | 
					CONFIG_BUILTIN=y
 | 
				
			||||||
 | 
					CONFIG_EXAMPLES_HELLO=y
 | 
				
			||||||
 | 
					CONFIG_FS_PROCFS=y
 | 
				
			||||||
 | 
					CONFIG_HAVE_CXX=y
 | 
				
			||||||
 | 
					CONFIG_HAVE_CXXINITIALIZE=y
 | 
				
			||||||
 | 
					CONFIG_HOST_WINDOWS=y
 | 
				
			||||||
 | 
					CONFIG_INIT_ENTRYPOINT="nsh_main"
 | 
				
			||||||
 | 
					CONFIG_INTELHEX_BINARY=y
 | 
				
			||||||
 | 
					CONFIG_MM_REGIONS=2
 | 
				
			||||||
 | 
					CONFIG_NSH_BUILTIN_APPS=y
 | 
				
			||||||
 | 
					CONFIG_NSH_FILEIOSIZE=512
 | 
				
			||||||
 | 
					CONFIG_NSH_LINELEN=64
 | 
				
			||||||
 | 
					CONFIG_NSH_READLINE=y
 | 
				
			||||||
 | 
					CONFIG_PREALLOC_TIMERS=4
 | 
				
			||||||
 | 
					CONFIG_RAM_SIZE=114688
 | 
				
			||||||
 | 
					CONFIG_RAM_START=0x20000000
 | 
				
			||||||
 | 
					CONFIG_RAW_BINARY=y
 | 
				
			||||||
 | 
					CONFIG_RR_INTERVAL=200
 | 
				
			||||||
 | 
					CONFIG_SCHED_WAITPID=y
 | 
				
			||||||
 | 
					CONFIG_START_DAY=6
 | 
				
			||||||
 | 
					CONFIG_START_MONTH=12
 | 
				
			||||||
 | 
					CONFIG_START_YEAR=2011
 | 
				
			||||||
 | 
					CONFIG_STM32_JTAG_SW_ENABLE=y
 | 
				
			||||||
 | 
					CONFIG_STM32_PWR=y
 | 
				
			||||||
 | 
					CONFIG_STM32_SPI1=y
 | 
				
			||||||
 | 
					CONFIG_STM32_USART2=y
 | 
				
			||||||
 | 
					CONFIG_STM32_USART3=y
 | 
				
			||||||
 | 
					CONFIG_SERIAL_TERMIOS=y
 | 
				
			||||||
 | 
					CONFIG_SYSTEM_NSH=y
 | 
				
			||||||
 | 
					CONFIG_USART2_RXBUFSIZE=128
 | 
				
			||||||
 | 
					CONFIG_USART2_SERIAL_CONSOLE=y
 | 
				
			||||||
 | 
					CONFIG_USART2_TXBUFSIZE=128
 | 
				
			||||||
 | 
					CONFIG_DEV_GPIO=y
 | 
				
			||||||
 | 
					CONFIG_BOARDCTL_RESET=y
 | 
				
			||||||
 | 
					CONFIG_READLINE_CMD_HISTORY=y
 | 
				
			||||||
 | 
					CONFIG_READLINE_CMD_HISTORY_LEN=100
 | 
				
			||||||
 | 
					CONFIG_READLINE_CMD_HISTORY_LINELEN=120
 | 
				
			||||||
 | 
					CONFIG_READLINE_TABCOMPLETION=y
 | 
				
			||||||
 | 
					CONFIG_SCHED_HAVE_PARENT=y
 | 
				
			||||||
 | 
					CONFIG_SCHED_CHILD_STATUS=y
 | 
				
			||||||
 | 
					CONFIG_PREALLOC_CHILDSTATUS=0
 | 
				
			||||||
 | 
					CONFIG_SCHED_WAITPID=y
 | 
				
			||||||
 | 
					CONFIG_SERIAL_TERMIOS=y
 | 
				
			||||||
 | 
					CONFIG_USART3_RXBUFSIZE=128
 | 
				
			||||||
 | 
					CONFIG_USART3_TXBUFSIZE=128
 | 
				
			||||||
 | 
					CONFIG_USART3_BAUD=9600
 | 
				
			||||||
 | 
					CONFIG_USART3_BITS=8
 | 
				
			||||||
 | 
					CONFIG_USART3_PARITY=0
 | 
				
			||||||
 | 
					CONFIG_USART3_2STOP=0
 | 
				
			||||||
 | 
					CONFIG_SUPPORT_SENSOR_FRAMEWORK=y
 | 
				
			||||||
 | 
					CONFIG_SENSOR_IAQ=y
 | 
				
			||||||
 | 
					CONFIG_SENSOR_TB600B_IAQ10=y
 | 
				
			||||||
 | 
					CONFIG_SENSOR_DEVICE_TB600B_IAQ10="tb600b_iaq10_1"
 | 
				
			||||||
 | 
					CONFIG_SENSOR_QUANTITY_TB600B_IAQ="iaq_1"
 | 
				
			||||||
 | 
					CONFIG_SENSOR_DEVICE_TB600B_IAQ10_DEV="/dev/ttyS3"
 | 
				
			||||||
 | 
					CONFIG_APPLICATION_SENSOR=y
 | 
				
			||||||
 | 
					CONFIG_APPLICATION_SENSOR_IAQ=y
 | 
				
			||||||
 | 
					CONFIG_APPLICATION_SENSOR_IAQ_TB600B_IAQ10=y
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,78 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# This file is autogenerated: PLEASE DO NOT EDIT IT.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# You can use "make menuconfig" to make any modifications to the installed .config file.
 | 
				
			||||||
 | 
					# You can then do "make savedefconfig" to generate a new defconfig file that includes your
 | 
				
			||||||
 | 
					# modifications.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# CONFIG_ARCH_FPU is not set
 | 
				
			||||||
 | 
					# CONFIG_NSH_ARGCAT is not set
 | 
				
			||||||
 | 
					# CONFIG_NSH_CMDOPT_HEXDUMP is not set
 | 
				
			||||||
 | 
					# CONFIG_NSH_CMDPARMS is not set
 | 
				
			||||||
 | 
					CONFIG_ADD_NUTTX_FETURES=y
 | 
				
			||||||
 | 
					CONFIG_ARCH="arm"
 | 
				
			||||||
 | 
					CONFIG_ARCH_BOARD="stm32f4discovery"
 | 
				
			||||||
 | 
					CONFIG_ARCH_BOARD_STM32F4_DISCOVERY=y
 | 
				
			||||||
 | 
					CONFIG_ARCH_BUTTONS=y
 | 
				
			||||||
 | 
					CONFIG_ARCH_CHIP="stm32"
 | 
				
			||||||
 | 
					CONFIG_ARCH_CHIP_STM32=y
 | 
				
			||||||
 | 
					CONFIG_ARCH_CHIP_STM32F407VG=y
 | 
				
			||||||
 | 
					CONFIG_ARCH_STACKDUMP=y
 | 
				
			||||||
 | 
					CONFIG_BOARD_LATE_INITIALIZE=y
 | 
				
			||||||
 | 
					CONFIG_BOARD_LOOPSPERMSEC=16717
 | 
				
			||||||
 | 
					CONFIG_BUILTIN=y
 | 
				
			||||||
 | 
					CONFIG_EXAMPLES_HELLO=y
 | 
				
			||||||
 | 
					CONFIG_FS_PROCFS=y
 | 
				
			||||||
 | 
					CONFIG_HAVE_CXX=y
 | 
				
			||||||
 | 
					CONFIG_HAVE_CXXINITIALIZE=y
 | 
				
			||||||
 | 
					CONFIG_HOST_WINDOWS=y
 | 
				
			||||||
 | 
					CONFIG_INIT_ENTRYPOINT="nsh_main"
 | 
				
			||||||
 | 
					CONFIG_INTELHEX_BINARY=y
 | 
				
			||||||
 | 
					CONFIG_MM_REGIONS=2
 | 
				
			||||||
 | 
					CONFIG_NSH_BUILTIN_APPS=y
 | 
				
			||||||
 | 
					CONFIG_NSH_FILEIOSIZE=512
 | 
				
			||||||
 | 
					CONFIG_NSH_LINELEN=64
 | 
				
			||||||
 | 
					CONFIG_NSH_READLINE=y
 | 
				
			||||||
 | 
					CONFIG_PREALLOC_TIMERS=4
 | 
				
			||||||
 | 
					CONFIG_RAM_SIZE=114688
 | 
				
			||||||
 | 
					CONFIG_RAM_START=0x20000000
 | 
				
			||||||
 | 
					CONFIG_RAW_BINARY=y
 | 
				
			||||||
 | 
					CONFIG_RR_INTERVAL=200
 | 
				
			||||||
 | 
					CONFIG_SCHED_WAITPID=y
 | 
				
			||||||
 | 
					CONFIG_START_DAY=6
 | 
				
			||||||
 | 
					CONFIG_START_MONTH=12
 | 
				
			||||||
 | 
					CONFIG_START_YEAR=2011
 | 
				
			||||||
 | 
					CONFIG_STM32_JTAG_SW_ENABLE=y
 | 
				
			||||||
 | 
					CONFIG_STM32_PWR=y
 | 
				
			||||||
 | 
					CONFIG_STM32_SPI1=y
 | 
				
			||||||
 | 
					CONFIG_STM32_USART2=y
 | 
				
			||||||
 | 
					CONFIG_STM32_USART3=y
 | 
				
			||||||
 | 
					CONFIG_SERIAL_TERMIOS=y
 | 
				
			||||||
 | 
					CONFIG_SYSTEM_NSH=y
 | 
				
			||||||
 | 
					CONFIG_USART2_RXBUFSIZE=128
 | 
				
			||||||
 | 
					CONFIG_USART2_SERIAL_CONSOLE=y
 | 
				
			||||||
 | 
					CONFIG_USART2_TXBUFSIZE=128
 | 
				
			||||||
 | 
					CONFIG_DEV_GPIO=y
 | 
				
			||||||
 | 
					CONFIG_BOARDCTL_RESET=y
 | 
				
			||||||
 | 
					CONFIG_READLINE_CMD_HISTORY=y
 | 
				
			||||||
 | 
					CONFIG_READLINE_CMD_HISTORY_LEN=100
 | 
				
			||||||
 | 
					CONFIG_READLINE_CMD_HISTORY_LINELEN=120
 | 
				
			||||||
 | 
					CONFIG_READLINE_TABCOMPLETION=y
 | 
				
			||||||
 | 
					CONFIG_SUPPORT_SENSOR_FRAMEWORK=y
 | 
				
			||||||
 | 
					CONFIG_SENSOR_TEMPERATURE=y
 | 
				
			||||||
 | 
					CONFIG_SENSOR_HS300X_TEMPERATURE=y
 | 
				
			||||||
 | 
					CONFIG_SENSOR_DEVICE_HS300X="hs300x_1"
 | 
				
			||||||
 | 
					CONFIG_SENSOR_QUANTITY_HS300X_TEMPERATURE="temperature_1"
 | 
				
			||||||
 | 
					CONFIG_SENSOR_DEVICE_HS300X_DEV="/dev/i2c1_dev0"
 | 
				
			||||||
 | 
					CONFIG_SENSOR_DEVICE_HS300X_I2C_ADDR=0x44
 | 
				
			||||||
 | 
					CONFIG_APPLICATION_SENSOR=y
 | 
				
			||||||
 | 
					CONFIG_APPLICATION_SENSOR_TEMPERATURE=y
 | 
				
			||||||
 | 
					CONFIG_APPLICATION_SENSOR_TEMPERATURE_HS300X=y
 | 
				
			||||||
 | 
					CONFIG_STM32_I2C1=y
 | 
				
			||||||
 | 
					CONFIG_I2C=y
 | 
				
			||||||
 | 
					CONFIG_I2C_SLAVE=y
 | 
				
			||||||
 | 
					CONFIG_ARCH_BOARD_COMMON=y
 | 
				
			||||||
 | 
					CONFIG_SENSORS=y
 | 
				
			||||||
 | 
					CONFIG_HS300X_I2C=y
 | 
				
			||||||
 | 
					CONFIG_SENSORS_HS300X=y
 | 
				
			||||||
 | 
					CONFIG_HS300X_I2C_FREQUENCY=400000
 | 
				
			||||||
		Loading…
	
		Reference in New Issue