@pengjunchao uboot 里面gpadc不好使的话,你这里是读取ints一直是-1;需要确认一下 sunxi_gpadc_read 之前的 sunxi_gpadc_init 函数里面初始化选择的哪个channel,和你read的是不是同一个channel。另外如果init函数里面channel配置的正确,可以检查一下 init 第一步设置 0x09ec 寄存器是否有效,第一步和第二步分别对应设置0x09ec寄存器的16bit和0bit为1;如果没设置进去的话,后续确实其他寄存器没有办法改变