智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 836|回复: 0
打印 上一主题 下一主题

MC56F8366为什么AD采集不行求解

[复制链接]

19

主题

59

帖子

0

精华

高级会员

Rank: 4

积分
586
威望
339
贡献
143
兑换币
177
注册时间
2013-9-12
在线时间
52 小时
毕业学校
黄山学院
跳转到指定楼层
1#
发表于 2014-3-26 16:33:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
void  AD2_Init(void)
{
  volatile word i;
  OutFlg = FALSE;                     
  AD1_ModeFlg = IDLE;
setReg(ADCB_ADCR1,0x4000);    // 设置控制寄存器1,停止AD转换     
  setReg(ADCB_ADPOWER,208);      //设置AD电源寄存器     
  setReg(ADCB_ADOFS0,0);     // 设置AD偏差补偿寄存器         
  setReg(ADCB_ADOFS1,0);            
  setReg(ADCB_ADOFS2,0);               
  setReg(ADCB_ADOFS3,0);              
  setReg(ADCB_ADOFS4,0);                 
  setReg(ADCB_ADHLMT0,999);    //5个通道口采集的数据上限都是4095      
  setReg(ADCB_ADHLMT1,999);
  setReg(ADCB_ADHLMT2,999);     
  setReg(ADCB_ADHLMT3,999);         
  setReg(ADCB_ADHLMT4,999);
  setReg(ADCB_ADLLMT0,0);            
  setReg(ADCB_ADLLMT1,0);              
  setReg(ADCB_ADLLMT2,0);              
  setReg(ADCB_ADLLMT3,0);              
  setReg(ADCB_ADLLMT4,0);
  setReg(ADCB_ADZCSTAT,0xff);       //清除过零标志位
  setReg(ADCB_ADLSTAT,0xffff);     //清除高低限制标志位     
  setReg(ADCB_ADSTAT,0x0800);       //清除EOSI标志位
  setReg(ADCB_ADSDIS,224);         // 使能0-4通道采样         
  setReg(ADCB_ADLST1,4951);       //设置AD通道转换列表   
  setReg(ADCB_ADLST2,0);            
  setReg(ADCB_ADZCC,0);          //设置过零点控制寄存器        
  setReg(ADCB_ADCR2,17);        //设置预分频      
  setRegBit(ADCB_ADCR1,STOP);   //停止AD转换
  
}

回复

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-9-20 22:35 , Processed in 0.194100 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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