- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ATMEGA84的ADC模数转换例子
ATMEGA48的ADC模数转换例子 ATMEGA48的ADC模数转换例子 作者:佚名????AVR单片机来源:不详????点击数: 1401????更新时间:2007-8-11????
//ADC结果由串口输出到电脑显示#include mega48.h #include stdio.h#include delay.hvoid main(void){? ? //外部时钟 7.3728MHz (请取消时钟8分频)? //串口初始化,波特率9600Hz,8个数据位,1个停止位,无奇偶校验,无中断使能? UCSR0B=8;? UCSR0C=6;? UBRR0L=47;? //*****************************************************************? ADMUX=96;????????????????? //设置参考电压为AVCC,结构左对齐(就是8位精度)? ADCSRA|=135;?????????????? //使能ADC,ADC时钟=系统时钟128分频? while (1)? {??? unsigned char adc;??? ADMUX=ADMUX240|2;?????? //清除已选择的ADC通道,选择新的ADC通道(0-7)??? ADCSRA|=64;????????????? //启动单次ADC转换??? while((ADCSRA16)==0);?? //等待ADC转换结束 ??? adc=ADCH;??????????????? //结果左对齐只需读取高8位数据??? ADCSRA|=16;????????????? //清除ADC转换结束标记??? putchar(adc/100+48);???? //从串口输出ADC的百位数??? putchar(adc/10%10+48);?? //从串口输出ADC的十位数??? putchar(adc%10+48);????? //从串口输出ADC的个位数??? delay_ms(500);?????????? //延时??? putchar(13);???????????? //回车??? putchar(10);???????????? //换行??? ? }} 我选用的是单通道输入模式,AD转换周期为208uS,固定对通道0进行采样。奇怪的是,输入电压为0,当参考电压选择内部或者外加的2.56V时,采样值在0x1f和0x1e之间波动,当参考电压选择AVCC 5.0V时,采样值在0x0f、0x0e和0x10之间波动。也就是说,相当于单片机内部叠加了一个约70mv (2.56 * 31/1023)的偏置电压。而且这个偏置电压会随着输入电压的增大而减少,0v时大概为70mv,2V时大概为50mv。这个现象同时在Atmega8L和Atmega16L上出现。想了、试了很久都没解决,有点怀疑是我买的单片机本身有问题。我是采用查询方式读取AD转换结果的,以下是我的程序,请各位大侠帮忙侃侃呀~~~ void adc_init(void){ADCSR = 0x00;??ADMUX = 0x40; ACSR??= 0x80;ADCSR = 0x86;}unsigned int ReadADC( void ){????unsigned char i = 0 ;????CLI();?????????ADMUX = 0XF8 ;????????ADCSR |= 0x40;??????????????????????????while (!(ADCSR 0x10));?????????????????for ( i = 200 ;i 0 ; i-- );????ADCSR |= 0x10;???????????//??i = ADCL;??//??i += (unsigned int)ADCH 8; ????SEI();??????return ADC;}
答 1:
呵呵,终于找到原因了问题在于用做AD转换通道的IO要禁用内部上拉电阻,否则就会出现上述问题!!! 另外,也要特别注意的是AD转换时钟不能太高,一般在50KHz~200KHz之间,否则AD转换结果会一直跳动,且不精确。
答 2:
AVCC本来就是个很不稳定的源??拿AVCC来当基准,当然会跳!
相关文章:步进电机的微步控制(也可以叫做细分)ATMEGA64 串口下载上位机程序及BOOTLOAD程序笔记本上无并口时,怎么使用并口ISP?GCCAVR 和 CodeVision AVR 编译实测对比[求助]一个外部中断问题(ATMEG)I
您可能关注的文档
- 2019年四年级语文上册 11.去年的树教案 新人教版 .doc
- 2019年四年级语文上册 11.去年的树教案 新人教版.doc
- 2019年四年级语文上册 11.成长(1)教案 语文S版.doc
- 2019年四年级语文上册 11.成长(2)教案 语文S版.doc
- 2019年四年级语文上册 11《秋游景山》教案1 浙教版.doc
- 2019年四年级语文上册 11《秋游景山》教案2 浙教版.doc
- 2019年四年级语文上册 11《秋游景山》教案3 浙教版.doc
- 2015暑期大“家访”活动工作总结.doc
- 2019年四年级语文上册 11田园诗情教案 苏教版.doc
- 2019年四年级语文上册 12.小木偶的故事同步练习 新人教版.doc
- DeepSeek培训课件入门宝典:第2册 开发实战篇 .pptx
- 全面认识全过程人民民主-2024春形势与政策课件.pptx
- 2024春形势与政策-全面认识全过程人民民主.pptx
- 2025年春季学期形势与政策第二讲-中国经济行稳致远讲稿.docx
- 2024春形势与政策-铸牢中华民族共同体意识课件.pdf
- 2024春形势与政策-走好新时代科技自立自强之路课件 (2).pptx
- 2024春形势与政策-走好新时代科技自立自强之路课件.pptx
- 形势与政策学习指导教学-整套课件.pdf
- 2023年春季形势与政策讲稿第三讲-开创高质量发展新局面.pdf
- DeepSeek培训课件-清华大学-DeepSeek模型本地部署与应用构建.pptx
文档评论(0)