diff --git a/BSP/linux-kernel/drivers/iio/adc/nvt_adc.c b/BSP/linux-kernel/drivers/iio/adc/nvt_adc.c index bd87d02bc..4e94af9d5 100755 --- a/BSP/linux-kernel/drivers/iio/adc/nvt_adc.c +++ b/BSP/linux-kernel/drivers/iio/adc/nvt_adc.c @@ -124,8 +124,12 @@ static UINT32 adc_mid3_first = 0; // mid2 first read ready static u32 adc_base = 0; static UINT32 adc_trim = 0; +/* static UINT32 adc_avg_times = 50; static UINT32 filter = 3 ; +*/ +static UINT32 adc_avg_times = 1; /* nerver avg */ + static UINT32 avg_sel = 3; static UINT32 avg_sel_sts = 0; @@ -244,7 +248,8 @@ static void nvt_adc_read_avg(struct work_struct *work) //(struct nvt_adc_state * }else { - if( (temp <= (adc_mid + filter)) && (temp >= (adc_mid - filter) ) ){ +// if( (temp <= (adc_mid + filter)) && (temp >= (adc_mid - filter) ) ){ + if(1){ t_data[t_data_now] = temp; t_data_now++; } @@ -305,7 +310,8 @@ static void nvt_adc_read_avg(struct work_struct *work) //(struct nvt_adc_state * avg_sel_sts = 0; } else { - if( (temp <= (adc_mid1 + filter)) && (temp >= (adc_mid1 - filter) ) ){ +// if( (temp <= (adc_mid1 + filter)) && (temp >= (adc_mid1 - filter) ) ){ + if(1){ t_data1[t_data_now1] = temp; t_data_now1++; } @@ -366,7 +372,8 @@ static void nvt_adc_read_avg(struct work_struct *work) //(struct nvt_adc_state * avg_sel_sts = 0; } else { - if( (temp <= (adc_mid2 + filter)) && (temp >= (adc_mid2 - filter) ) ){ +// if( (temp <= (adc_mid2 + filter)) && (temp >= (adc_mid2 - filter) ) ){ + if(1){ t_data2[t_data_now2] = temp; t_data_now2++; } @@ -427,7 +434,8 @@ static void nvt_adc_read_avg(struct work_struct *work) //(struct nvt_adc_state * avg_sel_sts = 0; } else { - if( (temp <= (adc_mid3 + filter)) && (temp >= (adc_mid3 - filter) ) ){ +// if( (temp <= (adc_mid3 + filter)) && (temp >= (adc_mid3 - filter) ) ){ + if(1){ t_data3[t_data_now3] = temp; t_data_now3++; } @@ -611,9 +619,16 @@ static int nvt_adc_read_raw(struct iio_dev *iio, case IIO_CHAN_INFO_AVERAGE_RAW: if ( avg_sel == 0 ){ *value = adc_mid_vol; - }else{ + } + else if ( avg_sel == 1 ){ *value = adc_mid1_vol; } + else if( avg_sel == 2 ){ + *value = adc_mid2_vol; + } + else if( avg_sel == 3 ){ + *value = adc_mid3_vol; + } return IIO_VAL_INT; diff --git a/BSP/root-fs/rootfs/etc_Model/etc_565_HUNTING_EVB_LINUX_4G_S550/init.d/S07_SysInit b/BSP/root-fs/rootfs/etc_Model/etc_565_HUNTING_EVB_LINUX_4G_S550/init.d/S07_SysInit index 7a29d54bc..e6b5bc82d 100755 --- a/BSP/root-fs/rootfs/etc_Model/etc_565_HUNTING_EVB_LINUX_4G_S550/init.d/S07_SysInit +++ b/BSP/root-fs/rootfs/etc_Model/etc_565_HUNTING_EVB_LINUX_4G_S550/init.d/S07_SysInit @@ -44,28 +44,28 @@ sleep ${DELAY} echo 0x5 > /proc/adc cat /sys/bus/iio/devices/iio\:device0/in_voltage0_raw echo 0x3 > /proc/adc -sleep ${DELAY} +#sleep ${DELAY} -echo 1 > /sys/devices/gpiochip0/gpio/gpio${SF_ADC_MUXA}/value -echo 0 > /sys/devices/gpiochip0/gpio/gpio${SF_ADC_MUXB}/value -sleep ${DELAY} -cat /sys/bus/iio/devices/iio\:device0/in_voltage0_raw -echo 0x1 > /proc/adc -sleep ${DELAY} +#echo 1 > /sys/devices/gpiochip0/gpio/gpio${SF_ADC_MUXA}/value +#echo 0 > /sys/devices/gpiochip0/gpio/gpio${SF_ADC_MUXB}/value +#sleep ${DELAY} +#cat /sys/bus/iio/devices/iio\:device0/in_voltage0_raw +#echo 0x1 > /proc/adc +#sleep ${DELAY} -echo 0 > /sys/devices/gpiochip0/gpio/gpio${SF_ADC_MUXA}/value -echo 0 > /sys/devices/gpiochip0/gpio/gpio${SF_ADC_MUXB}/value -sleep ${DELAY} -cat /sys/bus/iio/devices/iio\:device0/in_voltage0_raw -echo 0x0 > /proc/adc -sleep ${DELAY} +#echo 0 > /sys/devices/gpiochip0/gpio/gpio${SF_ADC_MUXA}/value +#echo 0 > /sys/devices/gpiochip0/gpio/gpio${SF_ADC_MUXB}/value +#sleep ${DELAY} +#cat /sys/bus/iio/devices/iio\:device0/in_voltage0_raw +#echo 0x0 > /proc/adc +#sleep ${DELAY} -echo 0 > /sys/devices/gpiochip0/gpio/gpio${SF_ADC_MUXA}/value -echo 1 > /sys/devices/gpiochip0/gpio/gpio${SF_ADC_MUXB}/value -sleep ${DELAY} -echo 0x2 > /proc/adc -sleep ${DELAY} -cat /sys/bus/iio/devices/iio\:device0/in_voltage0_raw +#echo 0 > /sys/devices/gpiochip0/gpio/gpio${SF_ADC_MUXA}/value +#echo 1 > /sys/devices/gpiochip0/gpio/gpio${SF_ADC_MUXB}/value +#sleep ${DELAY} +#echo 0x2 > /proc/adc +#sleep ${DELAY} +#cat /sys/bus/iio/devices/iio\:device0/in_voltage0_raw fi