智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1475|回复: 1
打印 上一主题 下一主题

AD的结果错误

[复制链接]

6

主题

23

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1080
威望
504
贡献
400
兑换币
98
注册时间
2012-2-4
在线时间
88 小时
毕业学校
跳转到指定楼层
1#
发表于 2012-2-19 08:55:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
void SET_ATD(void) {

  ATD0CTL1=0x20;     //0010 0000  10BIT AN_0;
  ATD0CTL2=0x40;     //0100 0000  禁止中断;
  ATD0CTL3=0x08;     //0000 1000  左对齐,序列为1;
  ATD0CTL4=0x05;     //0000 0101  12分频 采样时间4倍周期
  ATD0CTL5=0x20;     //0010 0000  连续转换 单通道 ;
  ATD0DIEN=0;        //禁止数字输入
}

void read_data(void){

  while(!ATD0STAT0_SCF);
  number=ATD0DR0H;
  PORTA=(byte)number;
  number=ATD0DR0L;
  PORTB=(byte)number;
}

void main(void) {

  SET_ATD();
  DDRA=0xFF;
  PORTA=0;
  DDRB=0xFF;
  PORTB=0;
  for(;;) {

    read_data();
  }
为什么AD的结果接到发光二极管上老是错误,参考电压为5v,当输入为零的时候最低位的3个灯也不会灭,求高手指点!

200

主题

2621

帖子

1

精华

杰出人士

蜗牛

Rank: 12Rank: 12Rank: 12

积分
12488

优秀会员奖章活跃会员奖章论坛骨干奖章论坛元老奖章在线王奖章资源大师奖章

QQ
威望
5973
贡献
3101
兑换币
1999
注册时间
2011-10-21
在线时间
1707 小时
2#
发表于 2012-2-19 09:18:17 | 只看该作者
number前不加(byte)不强制类型转化,你试试
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-6 20:30 , Processed in 0.121017 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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