智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1972|回复: 2
打印 上一主题 下一主题

AD转换

[复制链接]

8

主题

22

帖子

0

精华

高级会员

Rank: 4

积分
963

优秀会员奖章

威望
476
贡献
283
兑换币
294
注册时间
2013-10-30
在线时间
102 小时
毕业学校
广东海洋大学寸金学院
跳转到指定楼层
1#
发表于 2013-11-19 19:03:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include "derivative.h"
#include <stdio.h>
#include <string.h>
#include"OLED.h"   //液晶
int AD_wValue;//AD转换结果
void delay(int n) \
{
   int i,j;
   for(i=0;i<n;i++)
       for(j=0;j<2670;j++);
}
   
//-----时钟初始化程序--------//
void PLL_Init(void)      
{                    
  REFDV=1;           
  SYNR=2;
  while(!(CRGFLG&0x08));
  CLKSEL=0x80;
}
//--------------总线时钟=48/2=24MHz------------//
//-----ATD初始化程序--------//
void AD_Init(void)     
{
  ATD0CTL1=0x00; //00000000  选择AD0通道为外部触发,8 位精度,采样前不放电
  ATD0CTL2=0x40; //01000000  标志位自动清零,禁止外部触发, 禁止中断
  ATD0CTL3=0x88; //10001000  右对齐无符号,每次转换1 个序列, No FIFO, Freeze 模式下继续转
  ATD0CTL4=0x01; //00000001  采样时间为4 个AD 时钟周期,PRS=1,ATDClock=24/(2*(1+1))=6MHz
  ATD0CTL5=0x20; //00100000  特殊通道禁止,连续转换,单通道转换,输入通道为0
  ATD0DIEN=0x00; //00000000  禁止数字输入
}
//-----读取AD转换结果--------//
void AD_GetValue(int *AD_wValue)
{
  *AD_wValue=ATD0DR0;  //读取结果寄存器的值
}
//-----主函数--------//
void main(void)
{
  double a=23,b=32;
  char c[20] ;
  PLL_Init();
  AD_Init();
  DDRM=0XFF;
  LCD_Init();
  delay(2);   
  EnableInterrupts;
   
  for(;;)
  {
    while(!ATD0STAT2_CCF0);    // 等待转换结束while(ATDOSTAT2_CCF0==1)
          AD_GetValue(&AD_wValue);   // 读取转换结果
    a = (double)AD_wValue;   // 在B口显示转换值
      
/******************液晶显示*************************/
  sprintf (c, "%f", a);
  LCD_Print(0,2,c);
/******************************************/
  delay(1000);
  }
}

运行之后,当AD0什么都不接时,液晶显示的数值在160附近跳变,当插上杜邦线之后,不管杜邦线接5V还是GND,液晶显示一直是从0逐渐跳变到255,然后又循环从0跳变到255,请为什么会这样子呢?

16

主题

1096

帖子

0

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
7306

优秀会员奖章活跃会员奖章在线王奖章论坛元老奖章

威望
3288
贡献
2098
兑换币
2140
注册时间
2013-7-18
在线时间
960 小时
2#
发表于 2013-12-21 21:22:00 | 只看该作者
能把这个程序全发给我吗,学习一下,谢谢906724893@qq.com
回复 支持 反对

使用道具 举报

26

主题

216

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1524
QQ
威望
759
贡献
411
兑换币
468
注册时间
2013-3-28
在线时间
177 小时
3#
发表于 2014-3-27 17:40:41 | 只看该作者
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-25 15:05 , Processed in 0.042851 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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