毕业论文:基于51单片机红外测温的设计与实现.docVIP

毕业论文:基于51单片机红外测温的设计与实现.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于51单片机红外测温的设计与实现 摘要:随着科技的飞速发展,单片机的应用正在不断地,同时带动传统控制检测日新月异更新。在智能检测、控制系统中,往往使用单片机作为一个核心部件来使用,然后配合具体硬件,以及针对具体应用对象特点的软件结合,加以完善。单片机控制系统能够取代以前利用复杂电子线路或数字电路构成的控制系统,可以软件控制来实现,并能够实现智能化。课题是“”。主要考核我们对单片机技术,编程能力等方面的情况。观察独立分析、设计单片机的能力,以及实际编程技能。 4.2.1红外测温模块的引脚介绍红外测温模块的引脚图如图4.5所示, 其中:V为电源电压引脚VCC,VCC 一般为3V到5V之间的电压,一般取VCC为3.3; D为数据接收引脚,没有数据接收时,D为高电平; C为2KHz Clock输出引脚; G为接地引脚; A为测温启动信号引脚,低电平有效。 4.2.2红外测温模块时序图 红外测温时序图如图4.6所示,为SPI数据格式,在CLOCK的下降沿接收数据,一次温度测量需要接收5个字节的数据,这五个字节中:Item中0x4c表示测量目标温度,0x66表示测量环境温度;MSB为接收温度的高八位数据;LSB为接收温度的第八位数据;SUM为验证码,接收正确时SUM=item+MSB+LSB;;CR为结束标志,当CR为0x0Dh时表示完成一次温度数据的接收。 一帧数据包括五个字节,每个字节代表含义如下: Item: ”L ”(4CH):代表此阵数据为目标温度 “ f”(66H): 代表此帧数据位环境温度 MSB: 8 bit Data Msb LSB: 8 bit Data Lsb Sum: item+MSB+LSB=SUM CR: 0DH,结束码 4.2.3红外测温模块温度值的计算 无论测量环境温度还是目标温度,只要监测到Item为0x4cH或0x66H同时检测到CR为0x0dH,它们的温度计算方法都相同。计算公式为: 温度=Temp/16-273.15 (4-1) 其中Temp为十进制,而测量结果为16进制,把它直接转换为十进制即可。 5键盘显示电路 5.1键盘显示电路 本设计中采用8位数码管显示,设计中用到的硬件电路如图所示 5.2模块功能及接口说明 LED键盘显示模块基本特性和主要功能如下: LED键盘模块采用DC5V供电,也可以采用DC3.3V供电; 8个发光二极管,可以作为显示状态信息使用 一个电位器,可以提供0~5V的模拟电压信号或者0~3.3V的模拟电压,与模组输入的VDD有关。 6接线与烧入程序 6.1接线 根据所编的程序接线为:V接电源VCC;D接P1.2;C(时钟)接P3.2;G接地GND;A(片选)接P1.2;蜂鸣器BEEP接P1.3 6.2烧入程序 安装驱动XLISP,将51单片机通过USB接口接到计算机中,通过XLISP软件自动查找串口,使计算机检测到51单片机,从而进行通讯。然后将HEX文件通过XLISP软件烧入51单片机中。 7程序 #includereg51.h//C to p3.2始终为3.2口 sbit D=P1^1; //数据位 sbit A=P1^2; //片选 sbit BEEP=P1^3; //蜂鸣器 unsigned char code show[]={0x28,0x7e,0xa2,0x62,0x74,0x61,0x21,0x7a,0x20,0x60};//字符 unsigned char code some[]={1,2,4,8,16,32,64,128};//数码管显示的选定 unsigned char buff[5]; //定义一个数组 void delay(unsigned int); //定义延时子程序 unsigned char array=0,b=0,dat=0,flag=0; unsigned int temp,time=0; int etemp,otemp; main() { unsigned i,j; EA=1;EX0=1;IT0=1; //中断初始化 A=1;A=0;A=1;A=0; TMOD=0x01;ET0=1; TH0=-1000/256; TL0=-1000%256; while(1)

文档评论(0)

精品天地 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档