Avr单片机课程设计报告.docx

上传人:b****7 文档编号:9028376 上传时间:2023-02-02 格式:DOCX 页数:11 大小:487.48KB
下载 相关 举报
Avr单片机课程设计报告.docx_第1页
第1页 / 共11页
Avr单片机课程设计报告.docx_第2页
第2页 / 共11页
Avr单片机课程设计报告.docx_第3页
第3页 / 共11页
Avr单片机课程设计报告.docx_第4页
第4页 / 共11页
Avr单片机课程设计报告.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

Avr单片机课程设计报告.docx

《Avr单片机课程设计报告.docx》由会员分享,可在线阅读,更多相关《Avr单片机课程设计报告.docx(11页珍藏版)》请在冰豆网上搜索。

Avr单片机课程设计报告.docx

Avr单片机课程设计报告

课程设计报告

基于Atmeg16的紫外线检测及测量系统

一.设计目的:

近些年来,由于大气层臭氧的迅速减少,越来越多的紫外线透过大气层直接照射到地球表面,这给地表的生物带来了很大的影响,如历年来人群中皮肤癌患者显著增多等。

紫外线慢慢给我们的生活带来越来越严重的影响。

因此紫外线的检测及测量越发的重要。

该系统就是一种简便易携的紫外线检测测量装置,对于紫外线的防护具有很大的作用,能有效减少人们长时间的暴露在强紫外线下。

二、系统总体工作流程:

紫外线传感器进行紫外线实时测量

紫外线传感器将电压模拟信号输入至单片机

单片机进行模数转换显示在SD1602屏上

 

图一系统总体流程图

三、硬件设计思想和电路原理图

本项目的硬件系统主要包括三部分:

UVM-30紫外线传感器模块、单片机和SD1602屏。

3.1紫外线传感器模块

本项目采用的传感器为UVM-30韩国原装紫外线传感器

产品简介:

图二UVM-30紫外线传感器模块

  ◆专为需要高可靠性和精确性测量紫外线指数(UVI)的场合所设计;

  ◆适合测量太阳光紫外线强度总量;

  ◆对照世界卫生组织紫外线指数分级标准

  ◆检测UV波长:

200-370nm;

  ◆响应极快、全互换性;

  ◆采用具有专利的固体聚合物构造、防水防尘易清洗;

  ◆线性电压信号输出;

  ◆小尺寸,超低功耗,适用于数码、礼品等便携产品。

UVM-30电气参数:

图三UVM-30响应曲线及结构:

图四在外线检测模块其他参数

3.2单片机及1602屏

3.2.1单片机

我们选用Atmel公司的ATmaga16单片机。

Mega16是高性能、低功耗的8位AVR微处理器,具有先进的RISC结构,内部集成两个具有独立预分频器和比较器功能的8位定时器/计数器和一个具有预分频器、比较功能和捕捉功能的16位定时器/计数器。

可通过JTAG对MCU进行程序烧写及仿真。

内置晶振,使用方便。

引脚定义:

图五ATmaga16单片机引脚

3.2.21602屏

图六1602屏连接方式

四.软件设计思想及流程:

我们的程序主要由三部分组成:

LCD1602屏显示模块、adc转换模块、usart串口通讯模块。

4.1程序框图如下:

图七程序框图

4.2程序源代码:

#include

#include

#asm

.equ__lcd_port=0x18;

#endasm

/*[LCD]

1GND-9GND

2+5V-10VCC

3VLC-LCDHEADERVo

4RS-1PCO(M16)

5RD-2PC1(M16)

6EN-3PC2(M16)

11D4-5PC4(M16)

12D5-6PC5(M16)

13D6-7PC6(M16)

14D7-8PC7(M16)*/

#include

#defineucharunsignedchar

#defineuintunsignedint

chardis_buff[]={0,0,0,0,0,0};

bittime_1s_ok;

uinttime_counter,send_time=1;

//ADC电压值送显示缓冲区函数***********************/

voidadc_to_disbuffer(unsignedintadc)

{

unsignedchari,j;

j=adc/100;

if(j>=10)

{

for(i=0;i<=1;i++)

{

dis_buff[1-i]=j%10+48;

j/=10;

}

}

else{dis_buff[0]=j+48;dis_buff[1]=0;}

}

//ADC转换完成中断服务***********************/

interrupt[ADC_INT]voidadc_isr(void)

{

if

(1)

{

unsignedintadc_data,adc_v;

adc_data=ADCW;//读取ADC置换结果

adc_v=(unsignedlong)adc_data*2560/1024;//换算成电压值

adc_to_disbuffer(adc_v);

}

}

 

//Timer0比较匹配中断服务*********************/

interrupt[TIM0_COMP]voidtimer0_comp_isr(void)

{

if(++time_counter>=500*send_time)

{

time_counter=0;

time_1s_ok=1;

}

}

voidmain(void)

{

//chardis_buff[]={49,'1','2',0,0};

char*str;

//I/O端口初始化

DDRB=0xff;

PORTB=0xff;//LCD显示控制I/O端口初始化

DDRC=0xff;

PORTC=0x00;

//T/C0初始化

TCCR0=0x0B;//内部时钟,64分频(7.3728M/64=115.2KHz),CTC模式

TCNT0=0x00;

OCR0=0xE5;//OCR0=0xE5(229),(229+1)/115.2=2ms

TIMSK=0x02;//允许T/C0比较中断

//ADC初始化

ADMUX=0xC3;//参考电源2.56v、ADC3输入

SFIOR&=0x1F;

SFIOR|=0x60;//选择T/C0比较匹配中断为ADC触发源

ADCSRA=0xAD;//ADC允许、自动触发转换、ADC转换中断允许、ADCclk=125Kz

str=dis_buff;

lcd_init(16);

#asm("sei")//开放全局中断

while

(1)

{

if(time_1s_ok)

{

time_1s_ok=0;

lcd_clear();

lcd_putsf("UVIndex:

");

lcd_gotoxy(0,1);

lcd_puts(str);

str=dis_buff;

}

}

}

5.测试数据:

5.1不同天气类型紫外线辐射强度的日变化

夜间紫外线指数为0;在阴天或者雨天,紫外线指数值为0到2;多云天气,紫外线指数值为3到4;晴天上午,紫外线指数值5到7;夏天晴天中午,紫外线指数值8到10,此时紫外线辐射强度很强。

图八不同天气类型紫外线辐射强度的日变化

5.2相应指标参数:

AVRMega16单片机:

工作电压:

4.5-5.5V;速度等级:

0-16MHz

紫外线传感器:

工作电压:

3—5V,信号输出电压:

0—1.2V。

六、设计所需资源

器材种类

单价(元)

数量(个)

总计(元)

紫外线传感器uvm-30

48

1

48

紫外线传感器

8

1

8

1602屏

13

3

39

Usb转串口线

成员已有

邮费

12

15

总计

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 中考

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1