Honsiti
发表于 2024-1-19 08:58:12
梁工 发表于 2024-1-18 21:49
你的计算是错误的,并且明显错误。
BGV是ADC输入电压,参考电压是VCC,RES是ADC值,10位ADC,则 RES = 102 ...
感谢梁工的解答,我还想问一下ADC的初始化配置中是不是必须将 P_SW2 =0x7f;如果是的话 它起到什么作用 ?
电子DIY小家
发表于 2024-1-19 09:17:03
本帖最后由 电子DIY小家 于 2024-1-19 09:18 编辑
Honsiti 发表于 2024-1-19 08:58
感谢梁工的解答,我还想问一下ADC的初始化配置中是不是必须将 P_SW2 =0x7f;如果是的话 它起到什么作 ...
你哪里看来的会有这么一句“ P_SW2 =0x7f”??
ADC初始化之前需要将P_SW2的最高位置1,再手册这里写了
Honsiti
发表于 2024-1-19 09:30:57
我的意思是 例程会在P_SW2 =0x81 ;后再写多一句P_SW2 = 0x7f; 清除bit7.我不太确定这样的做法是为了什么
你哪里看来的会有这么一句“ P_SW2 =0x7f”??
ADC初始化之前需要将P_SW2的最高位置1,再手册这里写了
电子DIY小家
发表于 2024-1-19 09:33:14
Honsiti 发表于 2024-1-19 09:30
我的意思是 例程会在P_SW2 =0x81 ;后再写多一句P_SW2 = 0x7f; 清除bit7.我不太确定这样的做法 ...
那个是P_SW2 &= 0x7f;
防止别人误操作了别的寄存器才把这个位关掉的,实际不关也可以
梁工
发表于 2024-1-19 11:21:03
Honsiti 发表于 2024-1-19 08:58
感谢梁工的解答,我还想问一下ADC的初始化配置中是不是必须将 P_SW2 =0x7f;如果是的话 它起到什么作 ...
不是。ADC一些寄存器在XSFR,要用xdata访问,所以要设置 P_SW2 |= 0x80;