找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3379|回复: 0
收起左侧

STC12C5620AD ADC模块和PWM模块注意事项

[复制链接]
ID:105323 发表于 2016-2-12 21:00 | 显示全部楼层 |阅读模式
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
}

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表