标题: STC12C5620AD ADC模块和PWM模块注意事项 [打印本页]

作者: 51黑黑黑    时间: 2016-2-12 21:00
标题: STC12C5620AD ADC模块和PWM模块注意事项
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 completeflag,==优先级大于&,因此要加括号
   ADC_CONTR&=~0x10;              //清除转换结束标志ADC_FLAG
    returnADC_DATA;                //Return ADC result
}






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1