AD的一个问题

昨天想了好久的AD程序,终于解决了问题所在,原来是少写了一个控制字,但是现在我还不是很清楚为什么要这样写,希望有心人能帮帮忙,O(∩_∩)O~

相关代码如下:

   PCONP   |= 1 <<12;               
   PINSEL1 |= (0x03) << 12;           
   ADCR = (1 << 0) |                   
   ((Fpclk /1000000 -1) << 8) |        
   (0 << 16) |                           
   (0 << 17) |                           
   (1 << 21) |                         
   (0 << 22) |                       
   (1 << 24) ;       //原来是这里少了这句话,我想这里没打开AD,后面开了,是没问题才对啊,但是问题却就在这里                 
       while(1)
       {
           ADCR |= (1 << 24);
           while ((AD0STAT & 0x01) == 0);   
          //AD0CR |= (1 <<24);             
          //while ((AD0STAT & 0x01) == 0);   
           delay(100);
           u = ADDR;                             
           u = (u >> 6) & 0x3FF;           
           u = (u * 3300)/1024;                                          
     }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值