您现在的位置: 主页 > MCU > 单片机应用 > atmega8 例程: 查询方式AD采集 -
本文所属标签:
为本文创立个标签吧:

atmega8 例程: 查询方式AD采集 -

来源: 网络用户发布,如有版权联系网管删除 2018-09-08 

[导读]/************************************************************ 函数库说明:ATMEGE8 AD模数转换 * 版本: v1.0 * * 说明: 查询

/***********************************************************

本文引用地址: http://www.21ic.com/app/mcu/201807/783611.htm

* 函数库说明:ATMEGE8 AD模数转换

* 版本: v1.0

*

* 说明: 查询方式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.5khz

ADCSRA |= (1 << ADEN) | (1 << ADFR) | (1 << ADPS2) | (1 << ADPS0);

//AD开始转换

ADCSRA |= (1 << ADSC);

}

int main(void)

{

int result = 0;

char buf[] = "5.00V";

LCD_Init();

AD_Init();

LCD_Write_Chinese_String(0, 0, 12, 5, Chinese_Font, 0, 0);

while(1)

{

while((ADCSRA & (1 << ADIF)) == 0);

//读取转换值

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);

}

return 0;

}




              查看评论 回复



嵌入式交流网主页 > MCU > 单片机应用 > atmega8 例程: 查询方式AD采集 -
 

"atmega8 例程: 查询方式AD采集 -"的相关文章

网站地图

围观()