forked from xuos/xiuos
				
			repair ch438 driver
This commit is contained in:
		
							parent
							
								
									fac1c35d38
								
							
						
					
					
						commit
						ec7b594345
					
				| 
						 | 
					@ -15,6 +15,8 @@ if GetDepend(['APPLICATION_SENSOR_HUMIDITY_HS300X']):
 | 
				
			||||||
    SOURCES = ['humidity_hs300x.c'] + SOURCES
 | 
					    SOURCES = ['humidity_hs300x.c'] + SOURCES
 | 
				
			||||||
if GetDepend(['APPLICATION_SENSOR_TEMPERATURE_HS300X']):
 | 
					if GetDepend(['APPLICATION_SENSOR_TEMPERATURE_HS300X']):
 | 
				
			||||||
    SOURCES = ['temperature_hs300x.c'] + SOURCES
 | 
					    SOURCES = ['temperature_hs300x.c'] + SOURCES
 | 
				
			||||||
 | 
					if GetDepend(['APPLICATION_SENSOR_CH4_AS830']):
 | 
				
			||||||
 | 
					    SOURCES = ['ch4_as830.c'] + SOURCES
 | 
				
			||||||
path =  [cwd]
 | 
					path =  [cwd]
 | 
				
			||||||
objs = DefineGroup('sensor_app', src = SOURCES, depend = DEPENDS,CPPPATH = path) 
 | 
					objs = DefineGroup('sensor_app', src = SOURCES, depend = DEPENDS,CPPPATH = path) 
 | 
				
			||||||
Return("objs") 
 | 
					Return("objs") 
 | 
				
			||||||
| 
						 | 
					@ -43,6 +43,23 @@ config SENSOR_AS830
 | 
				
			||||||
                endif
 | 
					                endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                if ADD_RTTHREAD_FETURES
 | 
					                if ADD_RTTHREAD_FETURES
 | 
				
			||||||
 | 
					                        config SENSOR_AS830_DRIVER_EXTUART
 | 
				
			||||||
 | 
					                                bool "Using extra uart to support as830"
 | 
				
			||||||
 | 
					                                default y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        config SENSOR_DEVICE_AS830_DEV
 | 
				
			||||||
 | 
					                                string "as830 device uart path"
 | 
				
			||||||
 | 
					                                default "/dev/uart2"
 | 
				
			||||||
 | 
					                                depends on !SENSOR_AS830_DRIVER_EXTUART
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        if SENSOR_AS830_DRIVER_EXTUART
 | 
				
			||||||
 | 
					                                config SENSOR_DEVICE_AS830_DEV
 | 
				
			||||||
 | 
					                                        string "as830 device extra uart path"
 | 
				
			||||||
 | 
					                                        default "/dev/extuart_dev1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                config SENSOR_DEVICE_AS830_DEV_EXT_PORT
 | 
				
			||||||
 | 
					                                        int "if AS830 device using extuart, choose port"
 | 
				
			||||||
 | 
					                                        default "1"
 | 
				
			||||||
 | 
					                        endif
 | 
				
			||||||
                endif                
 | 
					                endif                
 | 
				
			||||||
        endif
 | 
					        endif
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,14 @@
 | 
				
			||||||
 | 
					import os
 | 
				
			||||||
 | 
					Import('RTT_ROOT')
 | 
				
			||||||
 | 
					from building import *
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					cwd = GetCurrentDir()
 | 
				
			||||||
 | 
					objs = []
 | 
				
			||||||
 | 
					list = os.listdir(cwd)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					for d in list:
 | 
				
			||||||
 | 
					    path = os.path.join(cwd, d)
 | 
				
			||||||
 | 
					    if os.path.isfile(os.path.join(path, 'SConscript')):
 | 
				
			||||||
 | 
					        objs = objs + SConscript(os.path.join(path, 'SConscript'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Return('objs')
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,10 @@
 | 
				
			||||||
 | 
					from building import *
 | 
				
			||||||
 | 
					import os
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					cwd = GetCurrentDir()
 | 
				
			||||||
 | 
					src = []
 | 
				
			||||||
 | 
					if GetDepend(['SENSOR_AS830']):
 | 
				
			||||||
 | 
					    src += ['as830.c']
 | 
				
			||||||
 | 
					group = DefineGroup('sensor ch4 as830', src, depend = [], CPPPATH = [cwd])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Return('group')
 | 
				
			||||||
| 
						 | 
					@ -43,7 +43,24 @@ config SENSOR_ZG09
 | 
				
			||||||
                endif
 | 
					                endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                if ADD_RTTHREAD_FETURES
 | 
					                if ADD_RTTHREAD_FETURES
 | 
				
			||||||
 | 
					                        config SENSOR_ZG09_DRIVER_EXTUART
 | 
				
			||||||
 | 
					                                bool "Using extra uart to support zg09"
 | 
				
			||||||
 | 
					                                default y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        config SENSOR_DEVICE_ZG09_DEV
 | 
				
			||||||
 | 
					                                string "zg09 device uart path"
 | 
				
			||||||
 | 
					                                default "/dev/uart2_dev2"
 | 
				
			||||||
 | 
					                                depends on !SENSOR_ZG09_DRIVER_EXTUART
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        if SENSOR_ZG09_DRIVER_EXTUART
 | 
				
			||||||
 | 
					                                config SENSOR_DEVICE_ZG09_DEV
 | 
				
			||||||
 | 
					                                        string "zg09 device extra uart path"
 | 
				
			||||||
 | 
					                                        default "/dev/extuart_dev4"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                config SENSOR_DEVICE_ZG09_DEV_EXT_PORT
 | 
				
			||||||
 | 
					                                        int "if ZG09 device using extuart, choose port"
 | 
				
			||||||
 | 
					                                        default "4"
 | 
				
			||||||
 | 
					                        endif
 | 
				
			||||||
                endif                
 | 
					                endif                
 | 
				
			||||||
        endif
 | 
					        endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,10 @@
 | 
				
			||||||
 | 
					from building import *
 | 
				
			||||||
 | 
					import os
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					cwd = GetCurrentDir()
 | 
				
			||||||
 | 
					src = []
 | 
				
			||||||
 | 
					if GetDepend(['SENSOR_ZG09']):
 | 
				
			||||||
 | 
					    src += ['zg09.c']
 | 
				
			||||||
 | 
					group = DefineGroup('sensor co2 zg09', src, depend = [], CPPPATH = [cwd])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Return('group')
 | 
				
			||||||
| 
						 | 
					@ -43,6 +43,23 @@ config SENSOR_D124
 | 
				
			||||||
                endif
 | 
					                endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                if ADD_RTTHREAD_FETURES
 | 
					                if ADD_RTTHREAD_FETURES
 | 
				
			||||||
 | 
					                        config SENSOR_D124_DRIVER_EXTUART
 | 
				
			||||||
 | 
					                                bool "Using extra uart to support D124"
 | 
				
			||||||
 | 
					                                default y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        config SENSOR_DEVICE_D124_DEV
 | 
				
			||||||
 | 
					                                string "D124 device name"
 | 
				
			||||||
 | 
					                                default "/dev/uart2_dev2"
 | 
				
			||||||
 | 
					                                depends on !SENSOR_D124_DRIVER_EXTUART
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        if SENSOR_D124_DRIVER_EXTUART
 | 
				
			||||||
 | 
					                                config SENSOR_DEVICE_D124_DEV
 | 
				
			||||||
 | 
					                                        string "D124 device extra uart path"
 | 
				
			||||||
 | 
					                                        default "/dev/extuart_dev4"
 | 
				
			||||||
 | 
					                                
 | 
				
			||||||
 | 
					                                config SENSOR_DEVICE_D124_DEV_EXT_PORT
 | 
				
			||||||
 | 
					                                        int "if D124 device using extuart, choose port"
 | 
				
			||||||
 | 
					                                        default "4"
 | 
				
			||||||
 | 
					                        endif
 | 
				
			||||||
                endif
 | 
					                endif
 | 
				
			||||||
        endif
 | 
					        endif
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -11,7 +11,7 @@ CONFIG_BOARD_K210_EVB=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# RT-Thread Kernel
 | 
					# RT-Thread Kernel
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_RT_NAME_MAX=8
 | 
					CONFIG_RT_NAME_MAX=24
 | 
				
			||||||
# CONFIG_RT_USING_BIG_ENDIAN is not set
 | 
					# CONFIG_RT_USING_BIG_ENDIAN is not set
 | 
				
			||||||
# CONFIG_RT_USING_ARCH_DATA_TYPE is not set
 | 
					# CONFIG_RT_USING_ARCH_DATA_TYPE is not set
 | 
				
			||||||
CONFIG_RT_USING_SMP=y
 | 
					CONFIG_RT_USING_SMP=y
 | 
				
			||||||
| 
						 | 
					@ -292,11 +292,6 @@ CONFIG_BSP_UART1_CTS_PIN=-1
 | 
				
			||||||
# CONFIG_BSP_USING_I2C1 is not set
 | 
					# CONFIG_BSP_USING_I2C1 is not set
 | 
				
			||||||
# CONFIG_BSP_USING_SPI1 is not set
 | 
					# CONFIG_BSP_USING_SPI1 is not set
 | 
				
			||||||
# CONFIG_BSP_USING_LCD is not set
 | 
					# CONFIG_BSP_USING_LCD is not set
 | 
				
			||||||
# CONFIG_BSP_LCD_BACKLIGHT_ACTIVE_LOW is not set
 | 
					 | 
				
			||||||
# CONFIG_BSP_LCD_BACKLIGHT_ACTIVE_HIGH is not set
 | 
					 | 
				
			||||||
# CONFIG_BSP_BOARD_KD233 is not set
 | 
					 | 
				
			||||||
# CONFIG_BSP_BOARD_K210_OPENMV_TEST is not set
 | 
					 | 
				
			||||||
# CONFIG_BSP_BOARD_USER is not set
 | 
					 | 
				
			||||||
# CONFIG_BSP_USING_SDCARD is not set
 | 
					# CONFIG_BSP_USING_SDCARD is not set
 | 
				
			||||||
# CONFIG_BSP_USING_DVP is not set
 | 
					# CONFIG_BSP_USING_DVP is not set
 | 
				
			||||||
CONFIG_BSP_USING_CH438=y
 | 
					CONFIG_BSP_USING_CH438=y
 | 
				
			||||||
| 
						 | 
					@ -332,10 +327,28 @@ CONFIG_PKG_KENDRYTE_SDK_VERNUM=0x0055
 | 
				
			||||||
# Framework
 | 
					# Framework
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_TRANSFORM_LAYER_ATTRIUBUTE=y
 | 
					CONFIG_TRANSFORM_LAYER_ATTRIUBUTE=y
 | 
				
			||||||
CONFIG_ADD_XIZI_FETURES=y
 | 
					# CONFIG_ADD_XIZI_FETURES is not set
 | 
				
			||||||
# CONFIG_ADD_NUTTX_FETURES is not set
 | 
					# CONFIG_ADD_NUTTX_FETURES is not set
 | 
				
			||||||
# CONFIG_ADD_RTTHREAD_FETURES is not set
 | 
					CONFIG_ADD_RTTHREAD_FETURES=y
 | 
				
			||||||
# CONFIG_SUPPORT_SENSOR_FRAMEWORK is not set
 | 
					CONFIG_SUPPORT_SENSOR_FRAMEWORK=y
 | 
				
			||||||
 | 
					# CONFIG_SENSOR_HCHO is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSOR_TVOC is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSOR_IAQ is not set
 | 
				
			||||||
 | 
					CONFIG_SENSOR_CH4=y
 | 
				
			||||||
 | 
					CONFIG_SENSOR_AS830=y
 | 
				
			||||||
 | 
					CONFIG_SENSOR_DEVICE_AS830="as830_1"
 | 
				
			||||||
 | 
					CONFIG_SENSOR_QUANTITY_AS830_CH4="ch4_1"
 | 
				
			||||||
 | 
					CONFIG_SENSOR_AS830_DRIVER_EXTUART=y
 | 
				
			||||||
 | 
					CONFIG_SENSOR_DEVICE_AS830_DEV="/dev/extuart_dev1"
 | 
				
			||||||
 | 
					CONFIG_SENSOR_DEVICE_AS830_DEV_EXT_PORT=1
 | 
				
			||||||
 | 
					# CONFIG_SENSOR_CO2 is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSOR_PM is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSOR_VOICE is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSOR_TEMPERATURE is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSOR_HUMIDITY is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSOR_WINDSPEED is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSOR_WINDDIRECTION is not set
 | 
				
			||||||
 | 
					# CONFIG_SENSOR_ALTITUDE is not set
 | 
				
			||||||
# CONFIG_SUPPORT_CONNECTION_FRAMEWORK is not set
 | 
					# CONFIG_SUPPORT_CONNECTION_FRAMEWORK is not set
 | 
				
			||||||
# CONFIG_SUPPORT_KNOWING_FRAMEWORK is not set
 | 
					# CONFIG_SUPPORT_KNOWING_FRAMEWORK is not set
 | 
				
			||||||
# CONFIG_SUPPORT_CONTROL_FRAMEWORK is not set
 | 
					# CONFIG_SUPPORT_CONTROL_FRAMEWORK is not set
 | 
				
			||||||
| 
						 | 
					@ -385,7 +398,8 @@ CONFIG_APPLICATION_SENSOR=y
 | 
				
			||||||
# CONFIG_APPLICATION_SENSOR_HCHO is not set
 | 
					# CONFIG_APPLICATION_SENSOR_HCHO is not set
 | 
				
			||||||
# CONFIG_APPLICATION_SENSOR_TVOC is not set
 | 
					# CONFIG_APPLICATION_SENSOR_TVOC is not set
 | 
				
			||||||
# CONFIG_APPLICATION_SENSOR_IAQ is not set
 | 
					# CONFIG_APPLICATION_SENSOR_IAQ is not set
 | 
				
			||||||
# CONFIG_APPLICATION_SENSOR_CH4 is not set
 | 
					CONFIG_APPLICATION_SENSOR_CH4=y
 | 
				
			||||||
 | 
					CONFIG_APPLICATION_SENSOR_CH4_AS830=y
 | 
				
			||||||
# CONFIG_APPLICATION_SENSOR_CO2 is not set
 | 
					# CONFIG_APPLICATION_SENSOR_CO2 is not set
 | 
				
			||||||
# CONFIG_APPLICATION_SENSOR_PM1_0 is not set
 | 
					# CONFIG_APPLICATION_SENSOR_PM1_0 is not set
 | 
				
			||||||
# CONFIG_APPLICATION_SENSOR_PM2_5 is not set
 | 
					# CONFIG_APPLICATION_SENSOR_PM2_5 is not set
 | 
				
			||||||
| 
						 | 
					@ -403,7 +417,7 @@ CONFIG_APPLICATION_SENSOR=y
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
CONFIG_APP_SELECT_NEWLIB=y
 | 
					CONFIG_APP_SELECT_NEWLIB=y
 | 
				
			||||||
# CONFIG_APP_SELECT_OTHER_LIB is not set
 | 
					# CONFIG_APP_SELECT_OTHER_LIB is not set
 | 
				
			||||||
CONFIG_LIB_USING_CJSON=y
 | 
					# CONFIG_LIB_USING_CJSON is not set
 | 
				
			||||||
# CONFIG_LIB_USING_QUEUE is not set
 | 
					# CONFIG_LIB_USING_QUEUE is not set
 | 
				
			||||||
# CONFIG_LIB_LV is not set
 | 
					# CONFIG_LIB_LV is not set
 | 
				
			||||||
# CONFIG_USING_EMBEDDED_DATABASE is not set
 | 
					# CONFIG_USING_EMBEDDED_DATABASE is not set
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -20,9 +20,10 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <rtthread.h>
 | 
					#include <rtthread.h>
 | 
				
			||||||
#include <stdio.h>
 | 
					#include <stdio.h>
 | 
				
			||||||
 | 
					extern int FrameworkInit();
 | 
				
			||||||
int main(void)
 | 
					int main(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    printf("Hello World\n"); 
 | 
					    printf("Hello World\n"); 
 | 
				
			||||||
 | 
					    FrameworkInit();
 | 
				
			||||||
    return 0;
 | 
					    return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -5,11 +5,10 @@
 | 
				
			||||||
#include "board.h"
 | 
					#include "board.h"
 | 
				
			||||||
#include "ch438.h"
 | 
					#include "ch438.h"
 | 
				
			||||||
#include "sleep.h"
 | 
					#include "sleep.h"
 | 
				
			||||||
 | 
					#include <math.h>
 | 
				
			||||||
static  struct rt_semaphore ch438_sem;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
static rt_uint8_t	offsetadd[] = {0x00,0x10,0x20,0x30,0x08,0x18,0x28,0x38,};		/* Offset address of serial port number */
 | 
					static rt_uint8_t	offsetadd[] = {0x00,0x10,0x20,0x30,0x08,0x18,0x28,0x38,};		/* Offset address of serial port number */
 | 
				
			||||||
rt_uint8_t	RevLen ,Ch438Buff[8][BUFFSIZE],Ch438BuffPtr[8];
 | 
					struct rt_serial_device *extuart_serial_parm[8];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void CH438_INIT(void)
 | 
					void CH438_INIT(void)
 | 
				
			||||||
{	
 | 
					{	
 | 
				
			||||||
| 
						 | 
					@ -164,7 +163,6 @@ rt_uint8_t ReadCH438Data( rt_uint8_t addr )
 | 
				
			||||||
	usleep(1);
 | 
						usleep(1);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return dat;
 | 
						return dat;
 | 
				
			||||||
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -216,106 +214,47 @@ static void WriteCH438Data( rt_uint8_t addr, rt_uint8_t dat)
 | 
				
			||||||
	return;
 | 
						return;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
static void WriteCH438Block( rt_uint8_t mAddr, rt_uint8_t mLen, rt_uint8_t *mBuf )   
 | 
					static void WriteCH438Block( rt_uint8_t mAddr, rt_uint8_t mLen, rt_uint8_t *mBuf )   
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
					 | 
				
			||||||
    while ( mLen -- ) 	
 | 
					    while ( mLen -- ) 	
 | 
				
			||||||
	  WriteCH438Data( mAddr, *mBuf++ );
 | 
						  WriteCH438Data( mAddr, *mBuf++ );
 | 
				
			||||||
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static int Ch438Irq(void *parameter)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						rt_uint8_t gInterruptStatus;
 | 
				
			||||||
 | 
						rt_uint8_t port = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// void  CH438UARTSend( rt_uint8_t	ext_uart_no,rt_uint8_t *Data, rt_uint8_t Num )
 | 
						gInterruptStatus = ReadCH438Data(REG_SSR_ADDR);
 | 
				
			||||||
// {
 | 
						port = log(gInterruptStatus & 0xFF)/log(2);
 | 
				
			||||||
// 	rt_uint8_t	REG_LSR_ADDR,REG_THR_ADDR;
 | 
						rt_hw_serial_isr(extuart_serial_parm[port], RT_SERIAL_EVENT_RX_IND);
 | 
				
			||||||
	
 | 
					}
 | 
				
			||||||
// 			REG_LSR_ADDR = offsetadd[ext_uart_no] | REG_LSR0_ADDR;
 | 
					 | 
				
			||||||
// 			REG_THR_ADDR = offsetadd[ext_uart_no] | REG_THR0_ADDR;
 | 
					 | 
				
			||||||
			
 | 
					 | 
				
			||||||
//    while( 1 )
 | 
					 | 
				
			||||||
//    {
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
//        while( ( ReadCH438Data( REG_LSR_ADDR ) & BIT_LSR_TEMT ) == 0 );
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
//        if( Num <= 128 )
 | 
					 | 
				
			||||||
//        {
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
//            WriteCH438Block( REG_THR_ADDR, Num, Data );
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
//            break;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
//        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
//        else
 | 
					 | 
				
			||||||
//        {
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
//            WriteCH438Block( REG_THR_ADDR, 128, Data );
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
//            Num -= 128;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
//            Data += 128;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
//        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
//    }
 | 
					 | 
				
			||||||
// }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// rt_uint8_t  CH438UARTRcv( rt_uint8_t ext_uart_no, rt_uint8_t* buf )
 | 
					 | 
				
			||||||
// {
 | 
					 | 
				
			||||||
//     rt_uint8_t RcvNum = 0;
 | 
					 | 
				
			||||||
// 	rt_uint8_t	dat = 0;
 | 
					 | 
				
			||||||
// 	rt_uint8_t	REG_LSR_ADDR,REG_RBR_ADDR;
 | 
					 | 
				
			||||||
// 	rt_uint8_t	*p_rev;
 | 
					 | 
				
			||||||
	
 | 
					 | 
				
			||||||
// 	p_rev = buf;
 | 
					 | 
				
			||||||
	
 | 
					 | 
				
			||||||
// 	REG_LSR_ADDR = offsetadd[ext_uart_no] | REG_LSR0_ADDR;
 | 
					 | 
				
			||||||
// 	REG_RBR_ADDR = offsetadd[ext_uart_no] | REG_RBR0_ADDR;
 | 
					 | 
				
			||||||
			
 | 
					 | 
				
			||||||
//     {
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// 		while( ( ReadCH438Data( REG_LSR_ADDR ) & BIT_LSR_DATARDY ) == 0 );
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
//         while( ( ReadCH438Data( REG_LSR_ADDR ) & BIT_LSR_DATARDY ) == 0x01 )
 | 
					 | 
				
			||||||
//         {
 | 
					 | 
				
			||||||
// 			dat =  ReadCH438Data( REG_RBR_ADDR );
 | 
					 | 
				
			||||||
			
 | 
					 | 
				
			||||||
// 			Ch438Buff[ext_uart_no][Ch438BuffPtr[ext_uart_no]] = dat;
 | 
					 | 
				
			||||||
			
 | 
					 | 
				
			||||||
// 			Ch438BuffPtr[ext_uart_no] = Ch438BuffPtr[ext_uart_no] + 1;
 | 
					 | 
				
			||||||
// 			if (Ch438BuffPtr[ext_uart_no] == BUFFSIZE)
 | 
					 | 
				
			||||||
// 				Ch438BuffPtr[ext_uart_no] = 0;
 | 
					 | 
				
			||||||
			
 | 
					 | 
				
			||||||
//             RcvNum = RcvNum + 1;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
//         }
 | 
					 | 
				
			||||||
//     }
 | 
					 | 
				
			||||||
//     return( RcvNum );
 | 
					 | 
				
			||||||
// }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
static rt_err_t rt_extuart_configure(struct rt_serial_device *serial, struct serial_configure *cfg)
 | 
					static rt_err_t rt_extuart_configure(struct rt_serial_device *serial, struct serial_configure *cfg)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
					 | 
				
			||||||
	rt_uint32_t baud_rate = cfg->baud_rate;
 | 
						rt_uint32_t baud_rate = cfg->baud_rate;
 | 
				
			||||||
	uint16_t port = cfg->reserved;
 | 
						rt_uint16_t port = cfg->reserved;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	CH438_PORT_INIT(port, baud_rate);
 | 
						CH438_PORT_INIT(port, baud_rate);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return RT_EOK;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static rt_err_t extuart_control(struct rt_serial_device *serial, int cmd, void *arg)
 | 
					static rt_err_t extuart_control(struct rt_serial_device *serial, int cmd, void *arg)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
						uint16_t ext_uart_no = serial->config.reserved;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    switch (cmd)
 | 
					    switch (cmd)
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
    case RT_DEVICE_CTRL_CLR_INT:
 | 
					    case RT_DEVICE_CTRL_CLR_INT:
 | 
				
			||||||
 | 
							gpiohs_irq_unregister(FPIOA_CH438_INT);
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
 | 
					 | 
				
			||||||
    case RT_DEVICE_CTRL_SET_INT:
 | 
					    case RT_DEVICE_CTRL_SET_INT:
 | 
				
			||||||
 | 
							gpiohs_set_drive_mode(FPIOA_CH438_INT, GPIO_DM_INPUT_PULL_UP);
 | 
				
			||||||
 | 
					    	gpiohs_set_pin_edge(FPIOA_CH438_INT,GPIO_PE_FALLING);
 | 
				
			||||||
 | 
							gpiohs_irq_register(FPIOA_CH438_INT, 1, Ch438Irq, RT_NULL);
 | 
				
			||||||
		break;
 | 
							break;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					 | 
				
			||||||
    return (RT_EOK);
 | 
					    return (RT_EOK);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -335,22 +274,21 @@ static int drv_extuart_putc(struct rt_serial_device *serial, char c)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int drv_extuart_getc(struct rt_serial_device *serial)
 | 
					static int drv_extuart_getc(struct rt_serial_device *serial)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	rt_uint8_t	dat = 0;
 | 
						rt_int8_t	dat = -1;
 | 
				
			||||||
	rt_uint8_t	REG_LSR_ADDR,REG_RBR_ADDR;
 | 
						rt_uint8_t	REG_LSR_ADDR,REG_RBR_ADDR;
 | 
				
			||||||
	
 | 
					 | 
				
			||||||
	uint16_t ext_uart_no = serial->config.reserved;///< get extern uart port
 | 
						uint16_t ext_uart_no = serial->config.reserved;///< get extern uart port
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	REG_LSR_ADDR = offsetadd[ext_uart_no] | REG_LSR0_ADDR;
 | 
						REG_LSR_ADDR = offsetadd[ext_uart_no] | REG_LSR0_ADDR;
 | 
				
			||||||
	REG_RBR_ADDR = offsetadd[ext_uart_no] | REG_RBR0_ADDR;
 | 
						REG_RBR_ADDR = offsetadd[ext_uart_no] | REG_RBR0_ADDR;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	while( ( ReadCH438Data( REG_LSR_ADDR ) & BIT_LSR_DATARDY ) == 0 );
 | 
						if((ReadCH438Data(REG_LSR_ADDR) & BIT_LSR_DATARDY) == 0x01)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
	// while( ( ReadCH438Data( REG_LSR_ADDR ) & BIT_LSR_DATARDY ) == 0x01 )
 | 
					 | 
				
			||||||
	// {
 | 
					 | 
				
			||||||
		dat = ReadCH438Data( REG_RBR_ADDR );
 | 
							dat = ReadCH438Data( REG_RBR_ADDR );
 | 
				
			||||||
	// }
 | 
							if(dat >= 0)
 | 
				
			||||||
    
 | 
								return dat;
 | 
				
			||||||
    return( dat );
 | 
						} else {
 | 
				
			||||||
 | 
							return -1;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const struct rt_uart_ops extuart_ops =
 | 
					const struct rt_uart_ops extuart_ops =
 | 
				
			||||||
| 
						 | 
					@ -362,111 +300,168 @@ const struct rt_uart_ops extuart_ops =
 | 
				
			||||||
    RT_NULL
 | 
					    RT_NULL
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int Ch438Irq(void *parameter)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	rt_sem_release(&ch438_sem);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
int Ch438InitDefault(void)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	rt_err_t flag;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	flag = rt_sem_init(&ch438_sem, "sem_438",0,RT_IPC_FLAG_FIFO);
 | 
					 | 
				
			||||||
	if (flag != RT_EOK)
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		rt_kprintf("ch438.drv create sem failed .\n");
 | 
					 | 
				
			||||||
		return -1;
 | 
					 | 
				
			||||||
	}		
 | 
					 | 
				
			||||||
	
 | 
					 | 
				
			||||||
    gpiohs_set_drive_mode(FPIOA_CH438_INT, GPIO_DM_INPUT_PULL_UP);
 | 
					 | 
				
			||||||
    gpiohs_set_pin_edge(FPIOA_CH438_INT,GPIO_PE_FALLING);
 | 
					 | 
				
			||||||
    gpiohs_irq_register(FPIOA_CH438_INT, 1, Ch438Irq, 0);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	CH438_INIT();
 | 
					 | 
				
			||||||
	return 0;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
INIT_APP_EXPORT(Ch438InitDefault);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
int rt_hw_ch438_init(void)
 | 
					int rt_hw_ch438_init(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    struct rt_serial_device *extserial;
 | 
					    struct rt_serial_device *extserial;
 | 
				
			||||||
    struct device_uart      *extuart;
 | 
					    struct device_uart      *extuart;
 | 
				
			||||||
    struct serial_configure config = RT_SERIAL_CONFIG_DEFAULT;
 | 
					    struct serial_configure config = RT_SERIAL_CONFIG_DEFAULT;
 | 
				
			||||||
 | 
						rt_err_t ret;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
// #ifdef BSP_USING_UART1
 | 
					 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        static struct rt_serial_device  extserial0;
 | 
					        static struct rt_serial_device  extserial0;
 | 
				
			||||||
        // static struct device_uart extuart0;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        extserial  = &extserial0;
 | 
					        extserial  = &extserial0;
 | 
				
			||||||
        // extuart    = &extuart0;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        extserial->ops              = &extuart_ops;
 | 
					        extserial->ops              = &extuart_ops;
 | 
				
			||||||
        extserial->config           = config;
 | 
					        extserial->config           = config;
 | 
				
			||||||
        extserial->config.baud_rate = 115200;
 | 
					        extserial->config.baud_rate = 115200;
 | 
				
			||||||
		extserial->config.reserved  = 0; ///< extern uart port
 | 
							extserial->config.reserved  = 0; ///< extern uart port
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        // extuart->hw_base   = UART1_BASE_ADDR;
 | 
					        extuart_serial_parm[0] = &extserial0;
 | 
				
			||||||
        // extuart->irqno     = IRQN_UART1_INTERRUPT;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        // _uart_init(UART_DEVICE_1);
 | 
					        ret = rt_hw_serial_register(extserial,
 | 
				
			||||||
 | 
					 | 
				
			||||||
        rt_hw_serial_register(extserial,
 | 
					 | 
				
			||||||
                              "extuart_dev0",
 | 
					                              "extuart_dev0",
 | 
				
			||||||
                              RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX,
 | 
					                              RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX,
 | 
				
			||||||
                              extuart);
 | 
					                              extuart);
 | 
				
			||||||
 | 
							if(ret < 0){
 | 
				
			||||||
 | 
								rt_kprintf("extuart_dev0 register failed.\n");
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
// #endif
 | 
					    }
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
					        static struct rt_serial_device  extserial1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// #ifdef BSP_USING_UART2
 | 
					        extserial  = &extserial1;
 | 
				
			||||||
    // {
 | 
					        extserial->ops              = &extuart_ops;
 | 
				
			||||||
    //     static struct rt_serial_device  serial2;
 | 
					        extserial->config           = config;
 | 
				
			||||||
    //     static struct device_uart       uart2;
 | 
					        extserial->config.baud_rate = 9600;
 | 
				
			||||||
 | 
							extserial->config.reserved = 1; ///< extern uart port
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //     serial  = &serial2;
 | 
					        extuart_serial_parm[1] = &extserial1;
 | 
				
			||||||
    //     uart    = &uart2;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //     serial->ops              = &_uart_ops;
 | 
					        ret = rt_hw_serial_register(extserial,
 | 
				
			||||||
    //     serial->config           = config;
 | 
					                              "extuart_dev1",
 | 
				
			||||||
    //     serial->config.baud_rate = UART_DEFAULT_BAUDRATE;
 | 
					                              RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX,
 | 
				
			||||||
 | 
					                              extuart);
 | 
				
			||||||
 | 
							if(ret < 0){
 | 
				
			||||||
 | 
								rt_kprintf("extuart_dev1 register failed.\n");
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
					        static struct rt_serial_device  extserial2;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //     uart->hw_base   = UART2_BASE_ADDR;
 | 
					        extserial  = &extserial2;
 | 
				
			||||||
    //     uart->irqno     = IRQN_UART2_INTERRUPT;
 | 
					        extserial->ops              = &extuart_ops;
 | 
				
			||||||
 | 
					        extserial->config           = config;
 | 
				
			||||||
 | 
					        extserial->config.baud_rate = 9600;
 | 
				
			||||||
 | 
							extserial->config.reserved = 2; ///< extern uart port
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //     _uart_init(UART_DEVICE_2);
 | 
					        extuart_serial_parm[2] = &extserial2;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //     rt_hw_serial_register(serial,
 | 
					       ret = rt_hw_serial_register(extserial,
 | 
				
			||||||
    //                           "uart2",
 | 
					                              "extuart_dev2",
 | 
				
			||||||
    //                           RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX,
 | 
					                              RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX,
 | 
				
			||||||
    //                           uart);
 | 
					                              extuart);
 | 
				
			||||||
    // }
 | 
							if(ret < 0){
 | 
				
			||||||
// #endif
 | 
								rt_kprintf("extuart_dev2 register failed.\n");
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// #ifdef BSP_USING_UART3
 | 
					    }
 | 
				
			||||||
    // {
 | 
						{
 | 
				
			||||||
    //     static struct rt_serial_device  serial3;
 | 
					        static struct rt_serial_device  extserial3;
 | 
				
			||||||
    //     static struct device_uart       uart3;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //     serial  = &serial3;
 | 
					        extserial  = &extserial3;
 | 
				
			||||||
    //     uart    = &uart3;
 | 
					        extserial->ops              = &extuart_ops;
 | 
				
			||||||
 | 
					        extserial->config           = config;
 | 
				
			||||||
 | 
					        extserial->config.baud_rate = 9600;
 | 
				
			||||||
 | 
							extserial->config.reserved = 3; ///< extern uart port
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //     serial->ops              = &_uart_ops;
 | 
					       ret = rt_hw_serial_register(extserial,
 | 
				
			||||||
    //     serial->config           = config;
 | 
					                              "extuart_dev3",
 | 
				
			||||||
    //     serial->config.baud_rate = UART_DEFAULT_BAUDRATE;
 | 
					                              RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX,
 | 
				
			||||||
 | 
					                              extuart);
 | 
				
			||||||
 | 
							if(ret < 0){
 | 
				
			||||||
 | 
								rt_kprintf("extuart_dev3 register failed.\n");
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //     uart->hw_base   = UART3_BASE_ADDR;
 | 
							extuart_serial_parm[3] = &extserial3;
 | 
				
			||||||
    //     uart->irqno     = IRQN_UART3_INTERRUPT;
 | 
					    }
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
					        static struct rt_serial_device  extserial4;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //     _uart_init(UART_DEVICE_3);
 | 
					        extserial  = &extserial4;
 | 
				
			||||||
 | 
					        extserial->ops              = &extuart_ops;
 | 
				
			||||||
 | 
					        extserial->config           = config;
 | 
				
			||||||
 | 
					        extserial->config.baud_rate = 9600;
 | 
				
			||||||
 | 
							extserial->config.reserved = 4; ///< extern uart port
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //     rt_hw_serial_register(serial,
 | 
					       ret = rt_hw_serial_register(extserial,
 | 
				
			||||||
    //                           "uart3",
 | 
					                              "extuart_dev4",
 | 
				
			||||||
    //                           RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX,
 | 
					                              RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX,
 | 
				
			||||||
    //                           uart);
 | 
					                              extuart);
 | 
				
			||||||
    // }
 | 
							if(ret < 0){
 | 
				
			||||||
// #endif
 | 
								rt_kprintf("extuart_dev4 register failed.\n");
 | 
				
			||||||
	// Ch438InitDefault();
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							extuart_serial_parm[4] = &extserial4;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
					        static struct rt_serial_device  extserial5;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        extserial  = &extserial5;
 | 
				
			||||||
 | 
					        extserial->ops              = &extuart_ops;
 | 
				
			||||||
 | 
					        extserial->config           = config;
 | 
				
			||||||
 | 
					        extserial->config.baud_rate = 115200;
 | 
				
			||||||
 | 
							extserial->config.reserved = 5; ///< extern uart port
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					       ret = rt_hw_serial_register(extserial,
 | 
				
			||||||
 | 
					                              "extuart_dev5",
 | 
				
			||||||
 | 
					                              RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX,
 | 
				
			||||||
 | 
					                              extuart);
 | 
				
			||||||
 | 
							if(ret < 0){
 | 
				
			||||||
 | 
								rt_kprintf("extuart_dev5 register failed.\n");
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							extuart_serial_parm[5] = &extserial5;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
					        static struct rt_serial_device  extserial6;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        extserial  = &extserial6;
 | 
				
			||||||
 | 
					        extserial->ops              = &extuart_ops;
 | 
				
			||||||
 | 
					        extserial->config           = config;
 | 
				
			||||||
 | 
					        extserial->config.baud_rate = 57600;
 | 
				
			||||||
 | 
							extserial->config.reserved = 6; ///< extern uart port
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					       ret = rt_hw_serial_register(extserial,
 | 
				
			||||||
 | 
					                              "extuart_dev6",
 | 
				
			||||||
 | 
					                              RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX,
 | 
				
			||||||
 | 
					                              extuart);
 | 
				
			||||||
 | 
							if(ret < 0){
 | 
				
			||||||
 | 
								rt_kprintf("extuart_dev6 register failed.\n");
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							extuart_serial_parm[6] = &extserial6;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
					        static struct rt_serial_device  extserial7;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        extserial  = &extserial7;
 | 
				
			||||||
 | 
					        extserial->ops              = &extuart_ops;
 | 
				
			||||||
 | 
					        extserial->config           = config;
 | 
				
			||||||
 | 
					        extserial->config.baud_rate = 9600;
 | 
				
			||||||
 | 
							extserial->config.reserved = 7; ///< extern uart port
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					       ret = rt_hw_serial_register(extserial,
 | 
				
			||||||
 | 
					                              "extuart_dev7",
 | 
				
			||||||
 | 
					                              RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX,
 | 
				
			||||||
 | 
					                              extuart);
 | 
				
			||||||
 | 
							if(ret < 0){
 | 
				
			||||||
 | 
								rt_kprintf("extuart_dev7 register failed.\n");
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							extuart_serial_parm[7] = &extserial7;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						CH438_INIT();
 | 
				
			||||||
    return 0;
 | 
					    return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
INIT_DEVICE_EXPORT(rt_hw_ch438_init);
 | 
					INIT_DEVICE_EXPORT(rt_hw_ch438_init);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -12,7 +12,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* RT-Thread Kernel */
 | 
					/* RT-Thread Kernel */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define RT_NAME_MAX 8
 | 
					#define RT_NAME_MAX 24
 | 
				
			||||||
#define RT_USING_SMP
 | 
					#define RT_USING_SMP
 | 
				
			||||||
#define RT_CPUS_NR 2
 | 
					#define RT_CPUS_NR 2
 | 
				
			||||||
#define RT_ALIGN_SIZE 8
 | 
					#define RT_ALIGN_SIZE 8
 | 
				
			||||||
| 
						 | 
					@ -206,7 +206,15 @@
 | 
				
			||||||
/* Framework */
 | 
					/* Framework */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define TRANSFORM_LAYER_ATTRIUBUTE
 | 
					#define TRANSFORM_LAYER_ATTRIUBUTE
 | 
				
			||||||
#define ADD_XIZI_FETURES
 | 
					#define ADD_RTTHREAD_FETURES
 | 
				
			||||||
 | 
					#define SUPPORT_SENSOR_FRAMEWORK
 | 
				
			||||||
 | 
					#define SENSOR_CH4
 | 
				
			||||||
 | 
					#define SENSOR_AS830
 | 
				
			||||||
 | 
					#define SENSOR_DEVICE_AS830 "as830_1"
 | 
				
			||||||
 | 
					#define SENSOR_QUANTITY_AS830_CH4 "ch4_1"
 | 
				
			||||||
 | 
					#define SENSOR_AS830_DRIVER_EXTUART
 | 
				
			||||||
 | 
					#define SENSOR_DEVICE_AS830_DEV "/dev/extuart_dev1"
 | 
				
			||||||
 | 
					#define SENSOR_DEVICE_AS830_DEV_EXT_PORT 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Security */
 | 
					/* Security */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -234,11 +242,12 @@
 | 
				
			||||||
/* sensor app */
 | 
					/* sensor app */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define APPLICATION_SENSOR
 | 
					#define APPLICATION_SENSOR
 | 
				
			||||||
 | 
					#define APPLICATION_SENSOR_CH4
 | 
				
			||||||
 | 
					#define APPLICATION_SENSOR_CH4_AS830
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* lib */
 | 
					/* lib */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define APP_SELECT_NEWLIB
 | 
					#define APP_SELECT_NEWLIB
 | 
				
			||||||
#define LIB_USING_CJSON
 | 
					 | 
				
			||||||
#define __STACKSIZE__ 4096
 | 
					#define __STACKSIZE__ 4096
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue