微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > atmega8 例程:AD中断方式采集

atmega8 例程:AD中断方式采集

时间:11-20 来源:互联网 点击:
/*
*  函数库说明:ATMEGE8 AD模数转换                        *  版本:      v1.0									       *  修改:      庞辉									       *  修改日期:  2011年08月06日							   *														   *  说明:	   中断方式AD采集*                                                          *  版本更新:  详见readme.txt                                            *                                                                                          *注意: res   PC5 *       CE    PB0*       RST   PB1*       DC    PB2*       SDIN  PB3*       SCLK  PB4                                         */#include "includes.h"/*名    称:void AD_Init(void)功    能:AD初始化入口参数:无出口参数:无使用说明:无/void AD_Init(void){//参考电压AREF,左对齐,ADC5单端输入 ADMUX |= (1 < ADLAR) | (1 < MUX2) | (1 < MUX0); //AD使能, 连续转换,中断使能,32分频, 6M / 32 = 187.5khzADCSRA |= (1 < ADEN) | (1 < ADFR) | (1 < ADIE) | (1 < ADPS2) | (1 < ADPS0);//AD开始转换ADCSRA |= (1 < ADSC);      }int main(void){   //LCD初始化  LCD_Init();//AD初始化AD_Init();LCD_Write_Chinese_String(0, 0, 12, 5, Chinese_Font, 0, 0);//开总中断sei();while(1){}return 0;}int result = 0;char buf[] = "5.00V";SIGNAL(SIG_ADC){result = ADCH;result = result * 500.0 / 255;//数据更新buf[0] = result / 100 + 0;buf[2] = result / 10 % 10 + 0;buf[3] = result % 10 + 0;//数据显示LCD_Write_English_String(0, 3, buf);    }

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top