这是我的程序,网上找的,改了端口,还是只能用P1.0口。
#include <STC12C5A60S2.H>
#include <intrins.h>
#include <basic.h>
void init_adc(void)
{
P1ASF=0x02; //AD功能寄存器,设置I/O口作为AD转换实用。使用P1.1口。
ADC_RES=0; //清理结果寄存器的值
ADC_RESL=0; //清理结果寄存器的值
ADC_CONTR=0x81; //开启AD电源并设置转换周期为540个时钟周期转换一次。
//ADC_POWER=1; CHS2,1,0为0,0,1用p1.1作为输入。SPEED1,0为0,540个时钟,
delayms(100);
}
uint Get_AD_Result()
{
uint d=0;
ADC_CONTR =0x88;
_nop_();
_nop_();
_nop_();
_nop_();
while(!(ADC_CONTR & 0X10));
ADC_CONTR &= ~0X10;
d |= ADC_RES;
d <<= 2;
d |= ADC_RESL;
return d;
}
不是已经改了么。。。。
追答Get_AD_Result()函数里的没改
本回答被网友采纳我有官网手册,改了对应的口,感觉不对,有大神帮看看程序么?