红外遥感
红外遥感的发展趋势

红外遥感的发展趋势
红外遥感的发展趋势包括以下几个方面:
1. 高分辨率:红外遥感技术的分辨率不断提高,能够获取更精细的地表信息。
通过提高空间分辨率,可以更好地观测地表特征,例如城市热岛效应、土壤湿度等。
2. 多光谱:红外遥感不仅涉及到热红外波段,还包括中红外和远红外波段。
未来的红外传感器将扩展到更多的波段,以获取更多的地表信息。
3. 高灵敏度:红外遥感技术的灵敏度会不断提高,能够捕捉到更微弱的红外辐射信号。
这对于探测地下水、地下矿产等具有重要意义。
4. 实时监测:红外遥感将实现更高的时间分辨率,可以实时监测目标的红外辐射变化。
这对预警和监测自然灾害(如火灾、地震等)具有重要意义。
5. 无人机和卫星应用:红外遥感技术在无人机和卫星平台上的应用也将得到发展。
无人机可以进行较低高度的高分辨率红外遥感观测,而卫星则可以实现大范围的红外遥感监测。
6. 数据融合:红外遥感数据将与其他遥感数据(如光学影像、微波遥感等)进行融合,以获取更全面的地表信息。
这将推动多源遥感数据融合与分析技术的发
展。
7. 应用领域拓展:随着红外遥感技术的不断发展,其在农业、环境监测、城市规划、气候变化等领域的应用也将得到拓展。
红外遥感原理

红外遥感原理
红外遥感原理可以通过以下方式进行描述:
红外遥感技术是一种利用红外光谱范围的电磁辐射来获取地表和大气特征信息的遥感技术。
红外辐射是处于可见光谱和微波谱之间的电磁辐射,其波长范围为0.7-1000微米。
人眼无法
直接感知红外辐射,因此需要借助红外传感器来探测和记录红外辐射的信息。
红外遥感原理基于物体辐射能量与其温度之间的关系。
根据热辐射理论,物体的温度越高,其辐射能量越大。
红外传感器可以探测到地球表面物体发射出的红外辐射,并将其转化为电信号进行记录。
红外遥感技术通常分为红外热像遥感和红外光谱遥感两种类型。
红外热像遥感利用红外传感器记录不同物体的热辐射能量分布,通过生成热像图来观察和分析目标的热态特征。
红外光谱遥感则利用红外传感器记录不同波长的红外辐射能量,通过分析不同波长处的辐射强度,可以获取目标的物质组成、温度、湿度等信息。
红外遥感技术在地质勘探、农业、环境监测等领域具有广泛的应用。
通过分析红外辐射特征,可以识别地表上的地质构造、水体分布、植被类型等;还可以监测农作物的生长状况、病虫害情况等;同时,红外遥感还可用于研究大气温室效应、环境污染等问题。
综上所述,红外遥感原理是基于物体的红外辐射能量与温度之间的关系,利用红外传感器记录和分析红外辐射信息,从而获取有关地表和大气特征的遥感技术。
热红外遥感的原理及应用

热红外遥感的原理及应用1. 热红外遥感的原理热红外遥感是一种利用物体自身辐射的红外辐射进行探测和观测的技术。
其原理基于热物理学中的黑体辐射定律和斯特藩-玻尔兹曼定律,即物体的温度决定了其辐射的能量和频率分布。
根据这一原理,热红外遥感通过测量地面目标的红外辐射能量,可以获取目标的温度信息以及其他相关的热学参数。
2. 热红外遥感的应用热红外遥感技术在许多领域得到广泛应用,以下列举一些主要应用领域:2.1 军事和安全领域热红外遥感技术在军事和安全领域发挥着重要作用。
通过热红外遥感技术,可以对潜在目标进行侦查和监测,如军事目标、地下设施和边界监控等。
此外,热红外遥感还可用于火灾和爆炸等事故的监测和警报。
2.2 环境监测和资源调查热红外遥感技术在环境监测和资源调查方面具有广泛应用。
通过测量地表温度和地表辐射,可以监测土地利用、植被生长和生态系统变化等。
此外,热红外遥感还可以用于水资源调查、矿产资源勘探和气候变化观测等方面。
2.3 建筑和城市规划热红外遥感技术在建筑和城市规划方面也有广泛的应用。
通过测量建筑物和城市地区的热态,可以分析建筑物的热效应和能耗,进而优化建筑设计和能源利用。
此外,热红外遥感还可以用于城市热岛效应研究、城市规划和交通管理等方面。
3. 热红外遥感的优势和挑战虽然热红外遥感技术具有广泛的应用前景,但也面临一些挑战。
3.1 信号解析和处理热红外遥感技术所获取的数据量庞大,需要进行信号解析和处理才能得到有用的信息。
目前,研究人员正致力于开发高效的算法和技术,以提高数据处理的效率和准确性。
3.2 仪器和设备热红外遥感技术需要借助特殊的仪器和设备进行数据采集和测量。
这些仪器和设备的性能和精度对于数据的质量和可靠性至关重要。
因此,研究人员需要不断改进和优化热红外遥感设备,以满足不同应用领域的需求。
3.3 数据解释和分析热红外遥感技术所获得的数据需要经过解释和分析才能得出准确的结论。
这需要研究人员对数据进行深入的理解和分析,以及对所研究对象的特性有足够的了解。
红外遥感的原理及应用

红外遥感的原理及应用1. 红外遥感的原理红外遥感是一种通过探测和测量物体反射或辐射出的红外辐射来获取信息的技术。
它利用物体在红外波段的辐射能量,通过不同的波长和强度来获取 target 对象的特征和状态。
红外辐射主要包括热辐射和反射辐射两种形式。
在红外遥感中,热红外辐射主要指物体自身的红外辐射,而反射红外辐射则是指物体对外部热源的反射红外辐射。
根据电磁辐射波长的不同,红外辐射又分为近红外、中红外和远红外。
常用于红外遥感的技术包括热像仪、红外传感器和红外光谱仪等。
热像仪利用测量物体辐射出的红外能量来生成热图像,可用于检测目标的表面温度和热分布。
红外传感器则通过检测红外辐射能量的变化来获得目标物体的信息。
而红外光谱仪则可以通过红外光的吸收、散射和反射等特性来分析物体的组成和结构。
2. 红外遥感的应用2.1 军事与安全领域红外遥感在军事和安全领域有着广泛的应用。
利用红外遥感技术,可以通过探测目标的红外辐射来实现目标的探测、识别和跟踪。
在夜间和复杂天气条件下,红外遥感可以发挥重要作用,帮助军事人员进行侦察、目标定位和战术决策。
同时,红外遥感还可以应用于边境监控、防火预警和恐怖袭击预防等安全领域。
2.2 环境监测与资源调查红外遥感在环境监测和资源调查中也起到重要的作用。
通过红外遥感技术,可以实时监测大气成分、气候变化和海洋温度等环境参数,为环境保护和气候研究提供数据支持。
此外,红外遥感还可以用于土地利用、植被监测和农作物遥感等领域,帮助进行资源调查和管理。
2.3 电力和能源领域红外遥感在电力和能源领域也有着广泛的应用。
通过红外遥感技术,可以实时监测电力设备的温度、故障和负载情况,及时发现问题并进行维修。
此外,红外遥感还可以应用于太阳能、风能等新能源的开发和监测,提高能源利用效率和可持续发展水平。
2.4 医疗与健康领域红外遥感在医疗和健康领域也有着重要的应用。
通过红外热像仪,可以实时监测人体的体温分布和热损失情况,帮助医生进行早期诊断和治疗。
红外线应用于遥感的原理

红外线应用于遥感的原理1. 什么是红外线遥感技术?红外线遥感技术是利用红外线辐射进行地球观测和监测的一种遥感技术。
通过测量和分析地球表面的红外线辐射能量,可以获取地表温度、火灾监测、环境监测等各种信息。
2. 红外线遥感的工作原理红外线遥感技术的工作原理是基于物体发射、吸收和反射红外辐射能量的原理。
在地球表面和大气系统中,物体会发射红外辐射能量。
这些发射的红外辐射能量与物体的温度相关。
2.1. 热辐射物体的温度越高,其发射的红外辐射能量就越强。
这样的红外辐射被称为热辐射。
物体的热辐射可以通过红外线遥感技术来测量和分析。
2.2. 红外线传播和探测红外线遥感技术利用红外线传感器探测和接收地球表面和大气中的红外辐射。
传感器接收到的红外辐射信号经过数字化处理后,可以得到各种有关地球表面的红外线辐射信息。
2.3. 红外线影像生成通过接收和处理红外线辐射能量,红外线遥感技术可以生成红外线影像。
红外线影像可以用来观测地球表面的温度分布、火灾监测、环境变化等。
3. 红外线遥感的应用领域3.1. 地表温度测量红外线遥感技术可以用来测量地表的温度分布。
通过测量不同地区的红外线辐射强度可以得到地表的温度信息,这对于气候研究、环境保护等方面具有重要意义。
3.2. 火灾监测红外线遥感技术可以用来监测火灾的发生和扩散情况。
火灾会发出特定的红外辐射信号,通过红外线遥感技术可以及时探测和监测火灾的活动,为防火工作提供重要的支持。
3.3. 环境监测红外线遥感技术可以用来监测环境的变化情况。
通过测量不同地点的红外辐射强度可以了解到环境的热分布情况,从而对环境变化进行分析和评估。
3.4. 其他应用领域红外线遥感技术还可以用于农业、水资源管理、城市规划等领域。
通过红外线遥感技术可以了解到农作物的生长情况、土壤湿度等信息,为农业生产提供支持。
4. 红外线遥感技术的优势4.1. 非接触式测量红外线遥感技术可以在不接触物体的情况下进行测量。
这对于一些特殊环境下的观测非常有优势,例如火灾监测、高温环境等。
地球科学中的红外遥感技术研究

地球科学中的红外遥感技术研究引言地球科学中的红外遥感技术是一项非常重要的研究领域。
红外遥感技术可以用来监测、研究和预测天气、气候、环境等方面的变化。
此外,该技术还可以应用于农业、林业、地质勘探、城市规划等领域。
本文将从概念、原理、应用等方面介绍地球科学中的红外遥感技术研究。
一、概念红外遥感技术是一种利用红外辐射信息进行探测和分析的技术。
在地球科学中,红外遥感主要用于获取地表或大气中红外波段辐射能量信息,从而提取有用的地学、气象、环境等信息。
红外遥感技术的发展史可以追溯到20世纪初。
当时,人们已经发现,地球表面和大气中不同物质对红外辐射的反射和吸收特性不同,因此可以利用这种特性来探测和分析不同地物或气体。
二、原理红外遥感技术的原理是利用地表或大气中物质对红外波段辐射的不同吸收和反射特性。
红外辐射是太阳辐射谱中不可见部分,是指在0.7微米(可见光)和1000微米之间的电磁波辐射。
与可见光不同,红外辐射可以穿透云层、雾霾、二氧化碳等大气层中的物质,因此可以获取更加深入的地物信息。
地面和大气中的不同材料对红外辐射的反射和吸收能力不同,这是红外遥感技术的最基本原理。
例如,土壤、水、草地、森林等地物对红外辐射的反射和吸收特性不同,在不同波段的红外辐射中这些地物都具有不同的反射率和亮度。
红外辐射也可以用来研究大气层中的一些气体,例如二氧化碳、水蒸气、甲烷等,这些气体对红外辐射的吸收能力也不同。
三、应用红外遥感技术在地球科学中应用广泛,其中比较重要的应用领域包括以下几个方面。
1. 气象预测:红外遥感技术可以用来监测大气层中的温度变化,包括地表温度、海洋表面温度、大气温度等。
这些信息对天气预测、气候变化研究等方面都有很大的帮助。
2. 环境保护:红外遥感技术可以用来监测环境中的污染物,例如烟雾、二氧化氮、甲烷等。
这些信息可以帮助环保人员了解环境变化和污染物扩散的情况,从而采取相应的控制措施。
3. 农业、林业:红外遥感技术可以用来监测农作物和森林的生长情况。
如何进行红外遥感影像分析与解译

如何进行红外遥感影像分析与解译红外遥感影像分析与解译是现代遥感技术的重要应用之一,被广泛应用于农业、环境监测、城市规划等领域。
本文将介绍红外遥感影像分析与解译的基础知识、常用方法和实际应用案例。
一、红外遥感影像分析与解译的基础知识红外遥感影像是利用红外传感器获取的地球表面物体的红外辐射信息,与可见光影像相比,红外遥感影像能够提供更多的地物信息。
红外辐射的不同波段对应不同的地物特征,如热红外波段可以用于火灾监测,近红外波段可以用于植被状况监测等。
在进行红外遥感影像分析与解译之前,首先要对红外图像的预处理进行必要的操作。
这包括:辐射校正、大气校正、几何校正等。
预处理过程可以提高红外图像的质量,为后续的分析与解译提供准确的数据基础。
二、红外遥感影像分析与解译的常用方法1. 目视解译法目视解译法是最常用的红外遥感影像分析与解译方法之一。
通过人眼观察红外图像,根据地物的红外反射特征进行解译。
例如,在农业领域,我们可以通过观察植被红外反射的变化来判断植被的生长状态,提供农作物的生长信息。
2. 数字图像处理方法数字图像处理方法是利用计算机对红外遥感影像进行分析与解译的方法。
常用的数字图像处理方法包括图像增强、特征提取、分类等。
其中,图像增强可以提高红外图像的对比度和细节,使地物的边界更加清晰;特征提取可以识别地物的形状、颜色等特征,对其进行定量化的描述;而分类是将图像上的像元划分到不同的类别中,实现对地物的自动识别与分类。
三、实际应用案例以环境监测为例,红外遥感影像分析与解译在环境监测中起到了重要的作用。
通过红外遥感技术,我们可以监测到地表温度的分布情况,进而了解城市热岛效应的形成与演变。
根据红外遥感影像的数据,我们可以制作城市表面温度等级图,为城市规划和环境改善提供科学依据。
同时,红外遥感影像还可用于监测水体污染。
通过红外图像的处理与分析,我们可以观察到水体表面的温度变化,进而判断出水体中的污染源。
通过定期监测,我们可以追踪污染源的变化情况,并及时采取措施进行治理。
可见光反射红外遥感

农业监测
监测作物生长情况:通过遥感技术
A
监测作物的生长状况,如作物长势、
病虫害等。
监测土壤水分:通过遥感技术监测
B
土壤水分含量,为农业灌溉提供科
学依据。
监测农业灾害:通过遥感技术监测
C
农业灾害,如火灾、旱灾、洪灾等,
为农业防灾减灾提供支持。
监测农业资源:通过遥感技术监测
D
农业资源,如土地资源、水资源等,
目录
01. 遥感原理 02. 可见光反射红外遥感的应用 03. 可见光反射红外遥感的优势 04. 可见光反射红外遥感的挑战
电磁波谱
可见光:波长范围 380nm-780nm,人眼可
见
微波:波长范围1mm1m,人眼不可见,具有
穿透性
紫外光:波长范围10nm380nm,人眼不可见, 具有杀菌、消毒等作用
01
02
03
04
精度问题
遥感图像分辨 率有限,难以 获取高精度信 息
遥感图像易受 大气、地形等 因素影响,导 致精度降低
遥感图像处理 算法复杂,精 度受算法影响 较大
遥感图像数据 量大,处理速 度慢,影响精 度
技术瓶颈
传感器灵敏度:需要更高灵敏 度的传感器来捕捉微弱的信号
信号处理:需要更高效的信号 处理算法来提取有用信息
成像质量:需要更高分辨率的 成像技术来提高图像质量
成本控制:需要降低成本以实 现大规模应用
伽马射线:波长范围小 于0
红外线:波长范围 780nm-1mm,人眼不可
见,具有热效应
射频:波长范围1m100km,人眼不可见,具 有传播距离远、信号稳定
等特点
X射线:波长范围0
反射原理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机系统课程设计报告书题目:基于单片机的红外遥控器控制继电器的设计院系名称:信息工程学院专业名称:电子信息工程班级:学号:姓名:指导教师目录1 选题意义............................................................................................... 错误!未定义书签。
2 系统总体设计....................................................................................... 错误!未定义书签。
2.1总体设计思路............................................................................ 错误!未定义书签。
2.2 设计原理框图........................................................................... 错误!未定义书签。
3 硬件电路设计原理............................................................................... 错误!未定义书签。
3.1 单片机最小系统设计............................................................... 错误!未定义书签。
3.2 设计电路图............................................................................... 错误!未定义书签。
4 软件设计............................................................................................... 错误!未定义书签。
4.1 设计思路................................................................................... 错误!未定义书签。
4.2 程序代码................................................................................... 错误!未定义书签。
5 仿真调试结果....................................................................................... 错误!未定义书签。
5.1系统设计与仿真........................................................................ 错误!未定义书签。
6 收获体会............................................................................................... 错误!未定义书签。
参考文献................................................................................................... 错误!未定义书签。
1、选题意义红外遥控技术是一种利用红外线进行点对点通信的技术,其相应的软件和硬件技术都已比较成熟。
它是把红外线作为载体的遥控方式。
由于红外线的波长远小于无线电波的波长,因此在采用红外遥控方式时,不会干扰其他电器的正常工作,也不会影响临近的无线电设备。
同时,由于采用红外线遥控器件时,工作电压低、功耗小,外围电路简单,因此它在日常工作生活中的应用越来越广泛。
2、系统总体设计(1)总体设计思路:本设计采用ATMEL的AT89C-51单片机作为发射电路核心芯片,分为遥控和解码两部分,点触式开关作为控制端,智能计算器发送信号,通过单片机的解码最后在LM1602显示屏上显示出来。
当不同的指令键被按下时,指令信号电路产生不同脉冲编码的指令信号,然后经调制电路调制,变为编码脉冲调制信号,再由驱动电路驱动红外发射器发射红外光信号。
接收器接收下来的信号经过放大后,送入解调电路进行解调,最后检测出指令信号,在显示屏上显示出来发射的信号。
(2)设计原理框图:当按下遥控按钮时,单片机产生相应的控制脉冲,由红外发光二极管发射出去。
再由单片机接受并在LCD上显示内容。
红外遥控发射与接收原理框图3、硬件电路设计原理(1)单片机最小系统:单片机的最小系统是指用最少的原件组成单片机可以工作的系统。
对于51系列的单片机来说,最小系统一般包括主控芯片,电源电路,时钟电路,复位电路,有的还包括按键输入、输出显示等。
(2)设计电路图:4、软件设计(1)设计思路:本次设计程序主要包括红外发射和接收解码程序,遥控发射首先初始化程序,然后调用键扫描处理子程序。
遥控接收部分的主程序及初始化及延时过程如上:首先初始化,然后按照显示数据设定控制脉冲延时值,最后在LCD显示。
(2)程序代码:遥控部分程序代码:#include <AT89X51.h>static bit OP; //红外发射管的亮灭static unsigned int count; //延时计数器static unsigned int endcount; //终止延时计数static unsigned char Flag; //红外发送标志char iraddr1; //十六位地址的第一个字节char iraddr2; //十六位地址的第二个字节void SendIRdata(char p_irdata);void delay();char getkey(){P1=0xfe;P3_6=P3_7=1;P3_3=1;if(!P1_4)return 1; //ONif(!P1_5)return 2; //7if(!P1_6)return 3; //8if(!P1_7)return 4; //9if(!P3_6)return 5; //Xif(!P3_7)return 6; //÷P1=0xfd;if(!P1_4)return 11; //+-if(!P1_5)return 12; //4if(!P1_6)return 13; //5if(!P1_7)return 14; //6if(!P3_6)return 15; //-if(!P3_7)return 16; //MRCP1=0xfb;if(!P1_4)return 21; //%if(!P1_5)return 22; //1if(!P1_6)return 23; //2if(!P1_7)return 24; //3if(!P3_6)return 25; //+if(!P3_7)return 26; //M-P1=0xf7;if(!P1_4)return 31; //□if(!P1_5)return 32; //0if(!P1_6)return 33; //.if(!P1_7)return 34; //=if(!P3_6)return 35; //+if(!P3_7)return 36; //M+P1=0xfF;P3_3=0;if(!P1_4)return 41; //if(!P1_5)return 42; //if(!P1_6)return 43; //if(!P1_7)return 44; //if(!P3_6)return 45; //if(!P3_7)return 46; //return 0;}void main(void){char key;count = 0;Flag = 0;OP = 0;P3_4 = 1;EA = 1; //允许CPU中断TMOD = 0x11; //设定时器0和1为16位模式1ET0 = 1; //定时器0中断允许P1=0xff;TH0 = 0xFF;TL0 = 0xE6; //设定时值0为38K 也就是每隔26us中断一次TR0 = 1;//开始计数iraddr1=0xff;iraddr2=0xff;do{key=getkey();if(key==1)SendIRdata(0x12);//setif(key==11)SendIRdata(0x0b);//exitif(key==25||key==35)SendIRdata(0x1a);//+if(key==15)SendIRdata(0x1e);//-if(key==6)SendIRdata(0x0e);//↑÷if(key==16)SendIRdata(0x1d);//↓MRCif(key==26)SendIRdata(0x1f);//←M-if(key==36)SendIRdata(0x1b);//→M+if(key==32)SendIRdata(0x00);//0if(key==22)SendIRdata(0x01);//1if(key==23)SendIRdata(0x02);//2if(key==24)SendIRdata(0x03);//3if(key==12)SendIRdata(0x04);//4if(key==13)SendIRdata(0x05);//5if(key==14)SendIRdata(0x06);//6if(key==2)SendIRdata(0x07);//7if(key==3)SendIRdata(0x08);//8if(key==4)SendIRdata(0x09);//9if(key==21)SendIRdata(0x2A);//%if(key==5)SendIRdata(0x2B);//Xif(key==33)SendIRdata(0x2C);//.if(key==34)SendIRdata(0x2D);//=if(key==31)SendIRdata(0x2E);//□if(key==41)SendIRdata(0x2F);//if(key==42)SendIRdata(0x30);//if(key==43)SendIRdata(0x31);//if(key==44)SendIRdata(0x32);//if(key==45)SendIRdata(0x33);//if(key==46)SendIRdata(0x34);//}while(1);}//定时器0中断处理void timeint(void) interrupt 1{TH0=0xFF;TL0=0xE6; //设定时值为38K 也就是每隔26us中断一次count++;}void SendIRdata(char p_irdata){int i;char irdata=p_irdata;//发送9ms的起始码endcount=223;Flag=1;count=0;P3_4=0;do{}while(count<endcount);//发送4.5ms的结果码endcount=117;Flag=0;count=0;P3_4=1;do{}while(count<endcount);//发送十六位地址的前八位irdata=iraddr1;for(i=0;i<8;i++){//先发送0.56ms的38KHZ红外波(即编码中0.56ms的低电平)endcount=10;Flag=1;count=0;P3_4=0;do{}while(count<endcount);//停止发送红外信号(即编码中的高电平)if(irdata-(irdata/2)*2) //判断二进制数个位为1还是0{endcount=15; //1为宽的高电平}else{endcount=41; //0为窄的高电平}Flag=0;count=0;P3_4=1;do{}while(count<endcount);irdata=irdata>>1;}//发送十六位地址的后八位irdata=iraddr2;for(i=0;i<8;i++){endcount=10;Flag=1;count=0;P3_4=0;do{}while(count<endcount);if(irdata-(irdata/2)*2){endcount=15;}else{endcount=41;}Flag=0;count=0;P3_4=1;do{}while(count<endcount);irdata=irdata>>1;}//发送八位数据irdata=~p_irdata;for(i=0;i<8;i++){endcount=10;Flag=1;count=0;P3_4=0;do{}while(count<endcount);if(irdata-(irdata/2)*2){endcount=15;}else{endcount=41;}Flag=0;count=0;P3_4=1;do{}while(count<endcount);irdata=irdata>>1;}//发送八位数据的反码irdata=p_irdata;for(i=0;i<8;i++){endcount=10;Flag=1;count=0;P3_4=0;do{}while(count<endcount);if(irdata-(irdata/2)*2){endcount=15;}else{endcount=41;}Flag=0;count=0;P3_4=1;do{}while(count<endcount);irdata=irdata>>1;}endcount=10;Flag=1;count=0;P3_4=0;do{}while(count<endcount);P3_4=1;Flag=0;}void delay(){int i,j;for(i=0;i<400;i++){for(j=0;j<100;j++){}}}解码部分程序代码:#include "At89x51.h"#include "stdio.h"#include "stdlib.h"#include "string.h"#define JINGZHEN 48#define TIME0TH ((65536-100*JINGZHEN/12)&0xff00)>>8 //time0,100us,红外遥控#define TIME0TL ((65536-100*JINGZHEN/12)&0xff)#define TIME1TH ((65536-5000*JINGZHEN/12)&0xff00)>>8#define TIME1TL ((65536-5000*JINGZHEN/12)&0xff)#define uchar unsigned char#define uint unsigned intcode uchar BitMsk[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,};uint IrCount=0,Show=0,Cont=0;uchar IRDATBUF[32],s[20];uchar IrDat[5]={0,0,0,0,0};uchar IrStart=0,IrDatCount=0;extern void initLCM( void);//LCD初始化子程序extern void DisplayListChar(uchar X,uchar Y, unsigned char *DData); //显示指定坐标的一串字符子函数void timer1int (void) interrupt 3 using 3{ //定时器1EA=0;TH1 = TIME1TH;TL1 = TIME1TL;Cont++;if(Cont>10)Show=1;EA=1;}void timer0int (void) interrupt 1 using 1{ //定时器0uchar i,a,b,c,d;EA=0;TH0 = TIME0TH;TL0 = TIME0TL;if(IrCount>500)IrCount=0;if(IrCount>300&&IrStart>0){IrStart=0;IrDatCount=0;IrDat[0]=IrDat[1]=IrDat[2]=IrDat[3]=0;IrC ount=0;}if(IrStart==2){IrStart=3;for(i=0;i<IrDatCount;i++){if(i<32){a=i/8;b=IRDATBUF[i];c=IrDat[a];d=BitMsk[i%8];if(b>5&&b<14)c|=d;if(b>16&&b<25)c&=~d;IrDat[a]=c;}}if(IrDat[2]!=~IrDat[3]){IrStart=0;IrDatCount=0;IrDat[0]=IrDat[1]=IrDat[2]=IrDat[3]=0;IrCount=0;}EA=1;return;}IrCount++;EA=1;}void int0() interrupt 0 using 0 {EA=0;if(IrStart==0){IrStart=1;IrCount=0;TH0 = TIME0TH;TL0 = TIME0TL;IrDatCount=0;EA=1;return;}if(IrStart==1){if(IrDatCount>0&&IrDatCount<33)IRDATBUF[IrDatCount-1]=IrCount;if(IrDatCount>31){IrStart=2;TH0 = TIME0TH;TL0 = TIME0TL;EA=1;return;}if(IrCount>114&&IrCount<133&&IrDatCount==0){IrDatCount=1;}else if(IrDatCount>0)IrDatCount++;}IrCount=0;TH0 = TIME0TH;TL0 = TIME0TL;EA=1;}main(){uchar *a,n;TMOD |= 0x011;TH0 = TIME0TH;TL0 = TIME0TL;ET0=1;TR0=1;ET1=1;TR1=1;IT0 = 1; //下降沿EX0 = 1;initLCM();EA=1;for(;;){if(Show==1){Show=0;Cont=0;DisplayListChar(0,1,"Please keys");a="";switch (IrDat[3]){case 0x12://ON/Ca="ON/C";break;case 0x0b://±a="+/-";break;case 0x1a://+a="+";break;case 0x1e://-a="-";break;case 0x0e://÷a="/";break;case 0x1d://MRCa="MRC";break;case 0x1f://M-a="M-";break;a="M+";break;case 0x00://0if(IrDat[2]==0xff)a="0";break;case 0x01://1a="1";break;case 0x02://2a="2";break;case 0x03://3a="3";break;case 0x04://4a="4";break;case 0x05://5a="5";break;case 0x06://6a="6";break;case 0x07://7a="7";break;case 0x08://8a="8";break;case 0x09://9a="9";break;case 0x2A://%a="%";break;case 0x2B://Xa="X";break;case 0x2C://.a=".";break;a="=";break;case 0x2E://□a=" ";break;}n=strlen(a);if(n>0)sprintf(s,"Key is [%s]",a);else sprintf(s,"Not Key ",a);DisplayListChar(0,0,s);}}}5、仿真调试结果与误差分析系统仿真结果:6、收获体会通过本次课程设计,实现了单片机通过控制遥控器,来实现信息的发送和显示。