毕业实习报告基于51单片机和labview
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Word格式
完美整理毕业实习设计
院系∶信息科学技术学院专业班级∶
姓名∶
学号∶
2014年 10 月2日
前言
转眼间,三年大学生活已经接近尾声,毕业的钟声将要敲响。将课堂所学知识运用于实践成为毕业生们必经的道路。带着老师的忠告,2014年9月11日我有幸在学校进行单片机与LabVIEW实习。
纸上得来终觉浅,绝知此事要躬行。在短暂的实习过程中,我深深的感觉到自己所学知识的肤浅和在实际运用中的专业知识的匮乏。刚开始的一段时间里,对一些知识感到无从下手,茫然不知所措,实习第一天就开始攻克汇编语言。
刚开始进行的是完成培训的工作。由于感觉和专业不怎么对口,所以对于培训便没有在意,总以为这些工作很简单,但是这种浮躁的态度让我忽视了实习的目的——接触和融入社会,以至于后来考核时有点手足无措。
时间过的真快,转眼间,在学校的实习马上要接近尾声了。通过这一个月的实习,我接触到了真正的规模、工作,亲手进行了单片机的深入学习,真正从课本中走到了现实中,从抽象的理论回到了多彩的实际生活。
以下是我在实习过程中的两个项目汇总。
完美整理
完美整理
项目一 温度的显示与控制系统设计
一、 功能要求
采用51单片机和温度传感器DS18B20设计一种数字温度计,当温度处于15到30℃时,系统采用7段数码管显示当前温度值。当温度超过预警值时(过高或过低),报警器响;当温度过高时,启动风扇转动降温(启动直流电机运转);当温度过低时,启动加热器升温(启动继电器工作)。
二、 硬件电路设计
数字温度计硬件设计电路如图1所示,主要包括51单片机、温度传感器
DS18B20、7段数码管显示模块等。
2.1 温度传感器DS18B20
温度传感器DS18B20是一种新型数字温度传感器,采用单线接口方式,仅需
一个端口引脚来发送或接收信息,在单片机和DS18B20之间仅需一条数据线和一条地线进行接口。DS18B20采用TO-92封装,引脚排列如图2所示。
00U1
U2
C1
R1
X1
RL1
Q1
D1
U3
LS1
Q2
图1、数字温度计硬件电路 图2、DS18B20管脚
DS18B20各引脚功能如下: GND: 地
完美整理
● DQ: 单线应用的数据输入/输出引脚 ● VDD :可选的外部供电电源引脚。
DS18B20内部有三个主要数字部件:64位激光ROM 、温度传感器、非一时性温度报警触发器TH 和TL 。这里我们采用外部供电方式,如图3。
图3 DS18B20的外部供电方式
DS18B20依靠单线端口通信,必须先建立ROM 操作协议,才能进行储存器和控制操作。因此,单片机必须先提供下面5个ROM 操作命令之一:
一、读出ROM ,代码为33H ,用于读出DS18B20的序列号,即64位激光ROM 代码。
二、匹配ROM ,代码为55H ,用于辨别某一特定的DS18B20操作。
三、搜素ROM ,代码为F0H ,用于确定总线上的节点数以及所有节点的序列号。 四、跳过ROM ,代码为CCH ,命令发出后系统对所有的DS18B20进行操作,通常
用于启动所有DS18B20转换之前,或系统中仅有一个DS18B20时。
五、报警搜索,代码为ECH ,主要用于鉴别和定
六、位系统中超出程序设定的报警温度的节点。
这些命令对每个器件的激光ROM 部分
进行操作,在单线总线上挂有多个器件时,
可以区分出单个器件,同时指出有多少器
温度LSB 字节1 温度MSB
字节2
TH 用户字节1 字节3 TH 用户字节1 TL 用户字节2 字节4 TL 用户字节2
配置寄存器 字节5 RAM E 2
保留 字节6 保留 字节7
保留 字节8
CRC
字节9
完美整理
件或是什么型号的器件。
图4、DS18B20内部存储器映像
存储器由一个高速暂存器和一个存储高低温报警触发值TH 和TL 的非易失性可
擦除RAM E 2组成。前2字节为实测温度值,低字节在前,高字节在后,第3和第4字节是用户设定温度报警值TH 和TL 的副本,是易失,每次上电时被刷新。第5字节为配置寄存器,用于确定数字值的数字转换分辨率,DS18B20工作时按此寄存器中的分辨率将温度转换为相应精度的数值。 配置寄存器各位的分布如下:
其中,TM 为测试模式位,用于设定DS18B20为工作模式还是为测试方式,默认
是0,用户一般不要改动。R1和R0用于设定温度转换的精度分辨率,如表1所示。其余低5位全为1。DS18B20温度转换时间较长,而且设定的分辨率越高,所需转换时间越长,因此实际应用中要根据具体情况权衡考虑。
表1、 DS18B12的分辨率
高速暂存器的第6、
7、8字节保留未用,读出值为全1。第9字节为前面8个字
节的CRC 校验码,用于保证数据通信的正确性。 DS18B20提供了如下存储器操作命令。
(1)温度转换,代码为44H ,用于启动DS18B20进行温度测量,温度转换命令
被执行后DS18B20保持等待状态。如果主机在这条命令之后跟着发出读时间隙,而
D7
D6
D5
D4
D3
D2
D1
D0
DS18B20又忙于进行温度转换,DS18B20将在总线上输出“0”,若温度转换完成,则输出“1”。
(2)读暂存器,代码为BEH,用于读取暂存器中的内容,从字节0开始最多可以读取9个字节,如果不想读完所有字节,主机可以在任何时间发出复位命令中止读取。
(3)写暂存器,代码为4EH,用于将数据写入到DS18B20暂存器的地址2和地址3(TH和TL字节),可以在任何时刻发出复位命令中止写入。
(4)复制暂存器,代码为48H,用于将暂存器的内容复制到DS18B20的非易失性RAM
E2中,即把温度报警触发字节存入非易失性存储器里。如果主机在这条命令之后跟着发出读时间隙,而DS18B20又正在忙于把暂存器的内容复制到RAM
E2存储器,DS18B20就会输出一个“0”,如果复制结束的话,DS18B20则输出“1”。
(5)重读RAM
E2中的内容重新读E2,代码B8H,用于将存储在非易失性RAM
入到暂存器中。这种复制操作在DS18B20上电时自动执行,这样器件一上电,暂存器马上就存在有效的数据。若在这条命令发出之后发出读时间隙,器件会输出温度转换忙的标志,“0”代表忙,“1”代表完成。
(6)读电源,代码B4H,用于将DS18B20的供电方式信号发送到主机。若在这条命令发出之后读时间隙,DS18B20将返回它的供电模式,“0”代表寄生电源,“1”代表外部电源。
一条温度转换命令启动DS18B20完成一次温度测量,测量结果以二进制补码形式存放在的高速暂存器中,占用暂存器的字节1(LSB)和字节2(MSB)。用一条读暂存器内容的存储器操作命令可以把暂存器中的数据读出。温度报警触发器TH和E2字节构成,可以用一条写存储器操作命令对TH和TL进行写TL各由一个PROM
入,对这些寄存器的读出需要通过暂存器。所有数据都以低位(LSB)在前的方式进行读/写,数据格式以0.0625℃/LSB形式表示如下:
LSB字节:
完美整理