代码逻辑本身就有问题,430的ADC要先在while循环外配置好,参考电压、通道选择和采集方式(包括单通道单次采集、单通道多次采集等等),你的代码中CONSEQ_0应是单通道单次采集,想要循环采集就配成单通道多次采集,然后在外面使能ADC采集就行了,记得中断处理,谢谢。
先用电阻和变压器、隔离运放、线性光耦或者其他方式将交流电压降到单片机可以接受的范围。



单片机内的AD一般只能测量正电压,所以需要将低压交流电通过脉动直流、加偏置提升到正电压、整流滤波等方式变为单片机可以接受的范围。
根据不同的电路进行相应的计算


