微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > STC12C5620AD ADC模块和PWM模块注意事

STC12C5620AD ADC模块和PWM模块注意事

时间:11-24 来源:互联网 点击:
PCA模块和C8051单片机类似,最高占空比可到100,但是最小占空比却无法到,因此,如果需要输出低电平,需要将CCAPMn清0,并将管脚设为低,需要再次启用PWM模块,只需将CCAPMn赋值CCAPM1=0x42;

ADC模块首先要上电,等待起稳才能开始转换,如果转换频繁,就不需要关闭ADC电源了。第二个要注意的是设置ADC_CONTR后要加4个空操作才能将其写入寄存器中。

ADC转化程序(查询方式)
uchar GetADCResult(uchar ch)//ch 0~7
{//取高8bit值,STC的ADC更换通道后,第一次测量值仍然是改之前的,要舍弃
ADC_CONTR=0xe8|ch;//选择通道,先或再赋值,因此ADC_CONTR被重新赋值了

_nop_();_nop_();_nop_();_nop_();

while ((ADC_CONTR & 0x10)==0); //Wait complete flag,==优先级大于&,因此要加括号
ADC_CONTR&= ~0x10; //清除转换结束标志ADC_FLAG

return ADC_DATA; //Return ADC result
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top