预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共14页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于ATMEGA88红外测温仪作品采用ATMEL公司ATMGEA88作为MCU,内部有8KFLASH,1kram。工作在内部8MRC振荡下,耗电仅为2MA左右。采用RISC指令集AVR核心,运算速度大大超过老式51单片机。内部带有3个定期器,8路10位AD(模数转换器),串口,硬件SPI,以便使用。大批量采购价格当前由于炒货因素涨价到12RMB。(详细问题可以搜索下,网上吹捧得诸多)推荐你看一下中文PDF,处处均有下载。采用这块芯片重要来说就有一点,比51先进,功耗低,内带AD,并且外部不需要加晶振。使用一块LCD5110手机屏作为显示设备,可以显示输出电压以及当前状态。液晶屏参数为72*48,点阵式,使用一种驱动库作为支持,以便开发,工作在3.3V电压下。耗电极低,不大于1MA,背光耗电为20MA。使用一片LDO(低压差线性稳压源)作为系统电源,LM1117-3.3V,输出电压为3.3V,最大电流500MA如下为单片机复位电路和烧录程序用接口使用OTP-538U红外传感器,该传感器是一种红外线感应型温度探测器。重要工作原理是运用红外线波长在硅片上产生相应电压,依照检测到电压不同来检测不同温度。由于只要是发热光源就会辐射红外线,因此可以对温度进行非接触式检测。传感器由一种热敏电阻和传感器某些构成。传感器某些依照外部温度产生相应电压,而热敏电阻依照外部温度不同,电阻值产生变化,由此来补充由于外界环境对传感器影响,因而可以做到比较高精度。价格为RMB40每颗,如下是接口电路下表是温度与电压输出比例下表是热敏电阻变化比率由于这两个值变化很难算。。。。应用电路上都是4个电阻做,并且没有电压偏移和温度关系。。因此我直接舍弃了温度补偿。。。。这个图电阻值我完全计算不出来。。。泪流满面。。。采用TI公司仪表放大器INA114,采用仪表放大器最大好处是增长了输入阻抗,并且放大倍数比较好调节,高CMRR,并且噪声极低,最核心是,输入失调电压小。价格为RMB32。。如下是仪放基本参数LOWOFFSETVOLTAGE:50VmaxLOWDRIFT:0.25V/CmaxLOWINPUTBIASCURRENT:2nAmaxHIGHCOMMON-MODEREJECTION:115dBminINPUTOVER-VOLTAGEPROTECTION:40VWIDESUPPLYRANGE:2.25to18VLOWQUIESCENTCURRENT:3mAmax当R5=100时,放大倍数为500倍。G=50K/R5。运放为双电源运放,因此提供了双电源。放大后电压大概为75MV(26度),145MV(37度)。由于没有精确校准,因此必然有偏差。采用美信公司反相电荷泵芯片MAX889T作为负向电源输出。最大输出电流为200MA,可以满足运放需求,留有足够余量。电荷泵工作在2M开关频率下,只需要1UF电容就可以工作。不需要外加电感,最大工作电压为5.5V,漏电流为20MA。RMB20一种。。。软件流程图程序带注释#include<mega88.h>#include"lcd5110.h"#include<delay.h>floatwendu;//定义float型函数保存温度,以便计算小数#defineFIRST_ADC_INPUT5#defineLAST_ADC_INPUT5unsignedintadc_data[LAST_ADC_INPUT-FIRST_ADC_INPUT+1];#defineADC_VREF_TYPE0xC0//AD初始化,时钟62.5K,内部1.1V基准,采用自动扫描模式,扫描通道AD通道5//ADCinterruptserviceroutine//withautoinputscanninginterrupt[ADC_INT]voidadc_isr(void){staticunsignedcharinput_index=0;//ReadtheADconversionresultadc_data[input_index]=ADCW;//SelectnextADCinputif(++input_index>(LAST_ADC_INPUT-FIRST_ADC_INPUT))input_index=0;ADMUX=(FIRST_ADC_INPUT|(ADC_VREF_TYPE&0xff))+input_index;//DelayneededforthestabilizationoftheADCinputvoltagedelay_us(10);//StarttheADconversionADCSRA|=0x40;}//Declareyourglobalvariablesherevoidmain(void)//系统初始化{//Declareyourlo