




免费预览已结束,剩余13页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实习器材:硬件:PC机一台、AM-51H学习板、电源线、串口线、DS18B20温度传感器、电烙铁及骨架;软件: KEIL C51编程软件、STC_ISP_V479.程序下载软件。实习目的:1、熟知51单片机的硬件结构及工作原理;2、了解DS18B20的工作机制;3、掌握KEIL C51的使用方法;4、提升运用51单片机实际开发能力;5、提升运用KEIL C51编程能力。实习内容: 本次校内实习我们会用到的主要器件是51单片机和DS18B20温度传感器以及数码管,主要就是通过温度传感器的检测,把实际测得的温度值转换成二进制,再传回单片机处理,然后通过数码管显示出温度值。硬件部分 一、51单片机简介 MCS-51系列单片机是美国Intel公司在1980年推出的高性能8位单片机,它包含51和52两个子系列。单片机由于体积小、功耗低、易于产品化,面向控制,抗干扰能力强,适用温度范围宽,可以方便地实现和分布式控制等优点,因而被广泛地应用于各种控制系统和分布式系统中。89C51和MCS-51是完全兼容的,是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压、高性能CMOS8位微处理器。 其主要特点如下: 8位CPU。 工作频率最高为24M。 128B数据存储器。 4KB程序存储器。 程序存储器的寻址空间为64KB。 片外数据存储器的寻址空间为64KB。 128个用户位寻址空间。 21个字节特殊功能寄存器。 4个8位的并行I/O接口:P0、P1、P2、P3。 两个16位定时/计数器。 两个优先级别的5个中断源。 1个全双工的串行I/O接口,可多机通信。 111条指令,喊乘法指令和除法指令。 较强的位处理能力 。 采用单一+5V电源。对于89C52而言,不同之处在于:有256B的数据存储器、8K的程序存储器、全双工串行I/O接口、6个中断源、3个16位定时/计数器,工作频率可升直33Mhz。比51拥有更高的性能。图1-1是51单片机的接口硬件分布图。图1-1是51单片机的接口硬件分布图我们此次采用的是AM-51H学习板(如图1-2),板载的芯片是89C52芯片,拥有丰富功能模块及外接电路,如图的标注。此外,还有众多的板载程序可以演示。图1-2 AM-51H开发板二、DS18B20温度传感器简介DS18B20是DALLAS公司生产的单总线数字温度传感器芯片,具有3引脚TO-92小体积封装形式;温度测量范围为-55+125,可编程为9-12为A/D转换精度,测量分辨率可达0.0625,被测温度用16位补码方式串行输出;其工作电源既可在远端引入,也可采用寄生电源方式产生;多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少。可广泛用于工业、民用、军事等领域的温度测量及控制仪器、测控系统和大型设备中。DS18B20的主要特性如下:1、 适应电压范围宽:3.0V-5.5V,在寄生电源方式可有数据线共电。2、 在使用中不需要任何外围元件。3、 独特的单线接口方式:DS18B20与微处理器连接时仅需要一条信号线既可实现微处理器与DS18B20的双向通信。4、 温度范围:-55+125,在-10-+85时精度为0.5。5、 编程可实现分辨率为9-12位,对应的可分辨温度分别为0.5、0.25、0.125和0.0625,可实现高精度测温。6、 在9位分辨率时最多在93.75ms内把温度值转换为数字,12位分辨率时最多在750ms内把温度值转换为数字。7、 支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。8、 用户可自设定非易失性的报警上下限值。9、 负压特性:电源极性接反时,温度计不会因发热而烧坏,但不能正常工作。DS18B20的外部机构图和内部结构图(如图1-3、1-4)图1-4 DS1820内部结构 图1-3 TQ-92封装及8脚SOIC封装DS18B20温度值格式默认的12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。(如图1-5 DS18B20温度值格式表) 图1-5 DS18B20温度值格式表DS18B20常用ROM、RAM指令(如表1、表2)指 令 约定代码功 能读ROM33H读DS1820温度传感器ROM中的编码(即64位地址) 符合 ROM 55H发出此命令之后,接着发出 64 位 ROM 编码,访问单总线上与该编码相对应的 DS1820 使之作出响应,为下一步对该 DS1820 的读写作准备。 搜索 ROM 0FOH用于确定挂接在同一总线上 DS1820 的个数和识别 64 位 ROM 地址。为操作各器件作好准备。 跳过 ROM 0CCH忽略 64 位 ROM 地址,直接向 DS1820 发温度变换命令。适用于单片工作。 告警搜索命令 0ECH执行后只有温度超过设定值上限或下限的片子才做出响应。 表1 ROM指令表指 令 约定代码功 能温度变换44H启动DS1820进行温度转换,12位转换时最长为750ms(9位为93.75ms)。结果存入内部9字节RAM中。 读暂存器 0BEH 读内部RAM中9字节的内容 写暂存器 4EH 发出向内部RAM的3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。 复制暂存器 48H 将RAM中第3 、4字节的内容复制到EEPROM中。 重调 EEPROM 0B8H 将EEPROM中内容恢复到RAM中的第3 、4字节。 读供电方式 0B4H 读DS1820的供电模式。寄生供电时DS1820发送“ 0 ”,外接电源供电 DS1820发送“ 1 ”。 表2 RAM指令表DS18B20操作时序DS18B20的时序有着严格的要求,每个操作之间的电平时间必须按照资料上面的进行,不然就不能对温度传感器正确的操作,一般有芯片初始化操作、读操作和写操作。详细的操作参照DS18B20手册。三、数码管此系统采用的是共阳极性的LED数码管。如图1-6 图1-6 数码管极性及端口分布 不过,我们此次是采用的四合一的数码管。如图1-7 图1-7 四合一数码管软件部分一、 KEIL C51 、KEIL C51编程软件简介 Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面,包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。可以完成编辑、编译、连接、调试、仿真等整个开发流程。、KEIL C51的使用方法1、 项目文件的建立KEIL C51软件现在常用的是第三版本的(KEIL Uv3),所以打开的界面如图2-1。 图2-1 KEIL Uv3 主界面选择Project菜单下的New Project命令,弹出如图2-2对话框。 图2-2 Create New Project 对话框在键入“18B20温度测量”过后弹出图2-3芯片选择对话框,在这里选择使用的Atmel 公司的AT89C52芯片如图2-4。此时会提醒用户是不是添加启动代码,这里选“是”。 图2-3 Select Devicr for TargetTarget1对话框 图2-4 选择AT89C522、给工程添加源文件单击右图所标的,弹出图2-5对话框,在标注的1可以添加分组,2是添加工程源文件。这里再我们建一个用户组,用于添加源文件。添加源文件点击图2-5中标注2,在弹出的对话框中添加一个源文件后缀名为“*.C”的文件,我们这里添加“18B20温度测量.C”文件,如图2-6所示。 图2-5 Components,Environment and Books对话框 图2-6 添加工程源文件不过,在刚开始建立的工程中一般没有源文件的,所以我们要新建一个源文件。我们可以点击右面标注所以的图标,再保存、命名。如2-7所示,这里我们命名为“18B20温度测量.C” 图2-7 保存对话框3、编译、连接项目,形成目标文件把保存了的工程源文件添加到工程当中过后,我们就可以编程、连接、调试了。在编译之前我们设置一下,在通过过后会生成“*.HEX文件”,这就是单片机所需的程序文件。设置如图2-8. 图2-8 工程设置 编译、连接时,如果程序有错,则编译不成功,并在下面的信息窗口给出相应的提示信息,以便用户修改。如图2-9,这个是编译成功的情况。 图2-9 编译成功二、STC-ISP、STC-ISP软件简介STC-ISP 是一款单片机下载编程烧录软件,是针对STC系列单片机而设计的,可下载STC89系列、12C2052系列和12C5410等系列的STC单片机,使用简便,现已被广泛使用。、STC-ISP的使用方法现目前使用的是STC-ISP的版本是V4.7.9的版本。打开软件,出现如图2-10所示的界面。 图2-10 STC-ISP V4.7.9 主界面在程序下载之前要先设置,要选择对应的芯片、COM口、波特率(一般可以默认不变)。设置好过后再用串口线把电脑和开发板连接好就可以下载程序到芯片当中了,点击主界面的“OpenFile/打开文件”,弹出如图2-11的对话框,选择需要的“*.HEX或者是*.BIN”文件。在下载时候,开发板需要重新复位一次,可用对开发板重新上电的办法。 图2-11 Open file 对话框测温系统设计一、硬件电路部分硬件电路部分是使用AM-51H开发板上的器件,其硬件电路原理图如图3-1和3-2所示。 图3-1 温度系统测量原理图1 3-1 温度系统测量原理图2二、程序设计部分硬件结构构思好后,就可对系统进行编程实现功能了。此系统的关键问题也就是对DS18B20操作问题。因此,清楚DS18B20工作原理对温度测量就有很大的帮助。在经过查阅DS18B20资料过后,清楚其工作原理后,大概的主体构思也就出来了。通过对DS18B20温度传感器的对温度测量、转换,把得到的二进制的温度数据经过单片机内部运算过后,再用LED数码管显示出来。系统结构图: 主程序流程图: 具体程序见附件。总结在本周的实习里,根据要求,在老师的指导下顺利的完成了要求的内容。作为电气专业的学生,专业涉及的学科知识就比较多,例如:电力电子技术、数电、模电计算机技术、电机电器技术信息与网络控制技术、机电一体化技术等诸多领域。而且是强弱电结合,机电结合,软硬件结合,对于本周实习内容就是关于计算机技术方面的基本训练。经过以前的实习学习,再加上本学期的实习锻炼,提升了我们对51单片机掌握,让我们不仅学到了硬件方面的知识,在软件运用方面有了更多的了解和编程、动手能力上也有很大的提升。此外,对于我们工科的学生,思维方面就应该要快,在此类型的实习当中,对我们的思维能力有很好的锻炼。单片机应用系统所具备的就是要有清晰的思路,尤其是逻辑方面的思考,而且,在数电、模电方面的知识必须要有良好的基础。所以,我觉得此实习意义在于我们对所学知识的综合运用的一个考验,不仅锻炼了我们综合运用能力,还培养了学习兴趣,使学习不会那么枯燥,提高了教学质量,对学生的理解有着很大的帮助,对我们以后的工作、学习、生活起到了积极作用。附1:温度测量系统程序如下:/DS18B20的读写程序,数据脚P1.0 /温度传感器18B20汇编程序,采用器件默认的12位转化 /最大转化时间750微秒,显示温度-55到+125度,显示精度 /为0.1度,显示采用4位LED共阳显示测温值 /P0口为段码输入,P2.0P2.3为位选 /*/#include reg52.h#include intrins.h /_nop_();延时函数用#define Disdata P0 /段码输出口#define discan P2 /扫描口#define uchar unsigned char#define uint unsigned intsbit DQ=P10; /温度输入口sbit DIN=P07; /LED小数点控制uint h; uint temp;/*温度小数部分用查表法*/uchar code ditab16=0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09;uchar code dis_712=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf;/共阳LED段码表 0 1 2 3 4 5 6 7 8 9 不亮 - uchar code scan_con4=0xf7,0xfb,0xfd,0xfe; /列扫描控制字uchar data temp_data2=0x00,0x00; /读出温度暂放uchar data display5=0x00,0x00,0x00,0x00,0x00; /显示单元数据,共4个数据和一个运算暂用/*11us延时函数*/void delay(uint t) for (;t0;t-);/*显示扫描函数*/scan() char k; for(k=0;k0;i-) DQ=1;_nop_();_nop_(); /从高拉倒低 DQ=0;_nop_();_nop_();_nop_();_nop_(); /5 us DQ=val&0x01; /最低位移出 delay(6); /66 us val=val/2; /右移1位 DQ=1; delay(1);/*DS18B20读1字节函数*/从总线上取1个字节uchar read_byte(void)uchar i;uchar value=0;for(i=8;i0;i-) DQ=1;_nop_();_nop_(); value=1; DQ=0;_nop_();_nop_();_nop_();_nop_(); /4 us DQ=1;_nop_();_nop_();_nop_();_nop_(); /4 us if(DQ)value|=0x80; delay(6); /66 usDQ=1;return(value);/*读出温度函数*/read_temp() ow_reset(); /总线复位 delay(200); write_byte(0xcc); /发命令 write_byte(0x44); /发转换命令 ow_reset(); delay(1); write_byte(0xcc); /发命令 write_byte(0xbe); temp_data0=read_byte(); /读温度值的低字节 temp_data1=rea
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年服装行业可持续时尚发展前景研究报告
- 商场女装销售培训课件
- 2025年生态旅游行业创新设计及市场前景研究报告
- 2025年房地产行业智能家居技术应用前景研究报告
- 2025年物联网产业自动驾驶技术应用前景与未来发展趋势研究报告
- 2025年医疗大数据行业创新应用与市场前景研究报告
- 国家事业单位招聘2025商务部外贸发展事务局招聘23人笔试历年参考题库附带答案详解
- 四川省2025上半年四川西南医科大学考核招聘高层次人才20人笔试历年参考题库附带答案详解
- 北京市2025中央民族乐团应届毕业生招聘4人笔试历年参考题库附带答案详解
- 五大连池市2025黑龙江黑河市五大连池风景区农业农村乡村振兴服务中心招聘1名公益性岗笔试历年参考题库附带答案详解
- 水资源基础调查项目方案 投标文件(技术方案)
- 女性围绝经期营养管理中国专家共识(2025版)
- 2025驾驶员安全教育培训
- GB/T 16545-2025金属和合金的腐蚀腐蚀试样上腐蚀产物的清除
- 无人机公司飞手管理制度
- 房地产抵押贷款合同电子版预览
- 电池(组)装配工职业技能鉴定经典试题含答案
- 公路机电安全培训课件
- 质量策划与质量控制培训
- 泥水盾构培训课件
- 个体诊所药品管理制度
评论
0/150
提交评论