Atmega8a的采样(查询法)

发布者:NatureLover最新更新时间:2018-10-07 来源: eefocus关键字:Atmega8a  采样  查询法 手机看文章 扫描二维码
随时随地手机看文章

实现了ADC0和ADC1的切换采样,每个通道采样10次,累计满10次取一次平均,然后输出数据


Atmega8a的采样(查询法)


========================================


在main.c中:


int main(){


//此处都是初始化的函数


//...........................


while (1) 


    {


ad_calc();


_delay_ms(50);


PORTD |=(1<<5);


_delay_ms(50);


PORTD &=~(1<<5);


    }


}


========================================


void ad_calc()


{


switch(step)


{


case 1:


get;


step=2;


break;


 


case 2:


switch (ADC_sel(ch))//ch选择


{


case 0://ch=0


get;


result = ADCL;


result = result+(ADCH<<8);


if (adcnt


{


volta[adcnt++] = result;


if (adcnt==ADNUM)//采满


{


ADC_Average_Vol();


ch = ADC_sel(1);


adcnt=0;//采满的计数清零


}


}


break;//ch=0


 


case 1://ch=1


get;


result = ADCL;


result = result+(ADCH<<8);


if (adcnt


{


volta[adcnt++] = result;


if (adcnt==ADNUM)//采满


{




ADC_Average_Tmp();


ch = ADC_sel(0);


adcnt=0;//采满的计数清零


}


}


break; //ch=1


}


break; //step=2


}


}


========================================


uchar step=1,adcnt=0,ch=0;//AD相关


uint result=0;//存AD值


uint volta[20];//存电压


 


uint temper[10];//存温度


#define get while(!(ADCSRA & (1 << ADIF)))//若转化完成,ADIF=1




========================================


atmega8和16不同,16的采样可以由定时器触发


关键字:Atmega8a  采样  查询法 引用地址:Atmega8a的采样(查询法)

上一篇:stm32f407之ADC(操作寄存器)
下一篇:Atmega16中使用modbus协议

推荐阅读最新更新时间:2024-03-16 16:15

LVDS高速数据传输技术在全彩LED控制系统中的应用
引言   LVDS (低电压差分信号)是一种能满足超高速数据传输的新技术,它具有低电压、低辐射、低功耗、低成本和内含时钟等优点,尤其适用于有一定传输距离要求的低功耗高速数据传输。由于用LVDS接口传输信号必须先进行LVDS和TTL的转换,所以在LVDS接口处使用专用LVDS收发器芯片不仅提高了成本,而且增大了PCB板的面积;而用千兆网卡传输则需要使用帧同步字,并且在接收端需要对接收到的数据进行同步字校验。为此,本文在全彩LED控制系统信号传输中采用了与高速时钟采样进行同步接收的LVDS传输方案,从而省去了同步字和控制信号,且增加了板子的集成度,并使整个系统信号传输稳定,成本降低。 1 基于LVDS的数据传输硬件设计  
[家用电子]
LVDS高速数据传输技术在全彩LED控制系统中的应用
单片机ADC采样算法----一阶低通滤波
关于低通滤波,先看一下百度百科上的定义。 算法实现的公式如下: y(n) = q*x(n) + (1-q)*y(n-1) 其中Y(n)为输出,x(n)为输入,y(n-1)为上一次输出值,其中q为滤波系数。取值范围为0--1. 也就是说若q=0.5时,这个公式代表的意思就是取本次采样值的50%,加上上一次采样值的50%,做为本次的采样结果。也就是说每次的采样结果都和上一次的采样结果相关。 看一下在单片机中C代码的实现 //参数:com 为采样的原始数值 //返回值:iData 经过一阶滤波后的采样值 unsigned int lowV( unsigned int com ) { static unsig
[单片机]
单片机ADC<font color='red'>采样</font>算法----一阶低通滤波
凌华科技发表四通道24位同步采样USB-2405动态信号采集模块
凌华科技发表新款USB 2.0接口动态信号数据采集模块─USB-2405。USB-2405为一款支持四通道24位同步采样的动态信号采集模块,内建2mA激励电流源,采用BNC接头,针对使用加速规或是麦克风等整合式电子压电(IEPE)传感器相关振动及噪声量测应用,提供高精度的动态量测性能。USB-2405具有优异的动态范围及抗温度飘移能力、内置抗交迭滤波器,并支持多种弹性触发模式。此外,USB-2405为USB总线供电设计,不需额外电源。搭配笔记本电脑及信号分析软件使用时,非常适合可携式时频分析量测应用。 高精度及动态量测性能,低温度飘移 凌华科技USB-2405的四个独立输入通道可支持最高128kS/s的同步采样,在采样率1
[测试测量]
基于单片机的等效采样示波器设计
摘要:介绍了基于单片机系统的精密时钟发生电路对高频信号(1MHz~80MHz)进行等效采样的方法,设计并实现一个模拟带宽为1Hz~80MHz的简易数字示波器。 关键词:单片机 等效采样 数字示波器 在数字示波器技术中,常用的采样方法有两种:实时采样和等效采样。实时采样通常是等时间间隔的,它的最高采样频率是奈奎斯特极限频率。等效采样(Equivalent Sampling)是指对多个信号周期连续样来复现一个信号波形,采样系统能以扩展的方式复现频率大大超过奈奎斯特极限频率的信号波形。 1 总体设计 由于所设计的示波器输入频率范围较宽, 本系统采用了等效和实时两种采样方式。若输入频率小于1.25MHz,选用实时采样;反之,选用等效采样。
[测试测量]
stm32:查询使用pt2262/pt2272无线模块
pt2262/pt2272的工作原理就是按下遥控器的按键之后,接收器的相对应引脚上就会产生一个高电平。该程序实现的功能就是遥控器按下之后,红灯亮起。采用查询法检测引脚是否为高电平。 //初始化接收器的相对应的IO口 void KEY1_Config(void) { GPIO_InitTypeDef GPIO_Struct; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE); //由于检测高电平,所以设置为下拉模式,可理解为,该io口为低电平 GPIO_Struct.GPIO_Mode=GPIO_Mode_IPD; GPIO_Struct.GPIO_
[单片机]
STM32F7实现ADC采集(软件触发+DMA传输)解决了采样结果不实时更新的问题
前面我们虽然实现了STM32F7实现ADC采集(软件触发+DMA传输),但数据只有第一次更新。 先仔细研究了下一些配置的参数: ADC1DMA_Handler.Init.Mode DMA的正常模式(DMA_NORMAL):采集到DMA_BufferSize 的个数后,DMA停止。 DMA的循环模式(DMA_CIRCULAR):采集到DMA_BufferSize 的个数后,重新回到设置的RAM的起点位置,如此循环。 虽然道理很好理解,但个人感觉要配合触发信号来用,通过HAL_ADC_Start_DMA软件触发需要设置起点位置和长度,否则这个参数是没有意义的。 ADC1_Handler.Init.ScanConvMode
[单片机]
STM32F7实现ADC采集(软件触发+DMA传输)解决了<font color='red'>采样</font>结果不实时更新的问题
半导体厂商现身CMET2008 凸显医疗潜力
  随着技术的进步,医疗超声系统正向高集成度,高性能,低功耗,多功能,便携化发展,对模拟前端的接收电路也提出了更高的要求。如何根据系统对模拟前端的要求,从系统层面对相关的参数进行优化,集成VCA和ADC,降低VCA的参考输入噪声,集成CW 切换矩阵功能,提供高性能的采样时钟,从而很好的满足系统需求,TI的技术专家将在CMET2008上就“医疗超声系统的优化与实现”进行精彩论述。   另外在CMET2008上,来自TI、ADI公司的技术专家还将就“便携医疗电子设计”等热点议题与业界进行交流。   三大FPGA厂商齐聚CMET2008,共同呈现医疗电子设计秘笈   医疗电子系统正变得越来越复杂,工程师在设计这些系统的时候也面临的
[焦点新闻]
基于ATMEGA8A单片机+MAX6675的K型热电偶程序Proteus测试
采用avr系列ATMEGA8A单片机,数码管采用74hc595静态驱动,读取MAX6675芯片并进行温度转换。 冷结补偿钾热电偶数字转换器(0℃至+1024℃) MAX6675执行冷结补偿,并将K型热电偶的信号数字化。数据以12位分辨率、SPI兼容、只读格式输出。该转换器可将温度解析为0.25°C,读数最高可达+1024°C,热电偶精度在0°C至+700°C范围内为8 LSb。max 6675采用小型8引脚SO4封装。应用●工业●家电●暖通空调 特点●K型热电偶输出的直接数字转换●冷结补偿●简单的SPI兼容串行接口● 12位,0.25°C分辨率●开放式热电偶检测 简单来说,读16个二进制,只有中间3到14是有效的,取出来,
[单片机]
基于<font color='red'>ATMEGA8A</font>单片机+MAX6675的K型热电偶程序Proteus测试
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved