天嵌i.MX6UL工控核心板如何添加ADC使用?i.MX6UL核心板引出的adc1~4引脚留空,如果使用ADC功能,需要自行将GPIO_0~GPIO_9引脚配置成ADC功能。以下是将扩展接口的pwm2_out引脚配置成ADC功能的例子:
修改设备树arch/arm/boot/dts/tq-imx6ul.dts,adc对应的代码为:
&adc1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_adc1>; //vref-supply = <®_vref_3v3>;//这是电源管理的配置,imx6ul没有加电源管理芯片,默认屏蔽 num-channels = <1>; //使用多少路adc就将2修改为多少 status = "okay"; };
另外将pwm2作为adc;还要将
&pwm2 { ...... status = "okay"; };
中的“okay”设置成“disabled”;然后添加对应的管脚定义:
pinctrl_adc1: adc1grp{ fsl,pins = < //MX6UL_PAD_GPIO1_IO05__GPIO1_IO05 0xb0 MX6UL_PAD_GPIO1_IO09__GPIO1_IO02 0xb0 //如果将pwm2 作为adc,在管脚定义这里加上此行 >; };
adc查看:
cat/sys/devices/platform/soc/2100000.aips-bus/2198000.adc/iio\:device0/in_voltage%d_raw