大连理工大学单片机实验报告.docx

大连理工大学单片机实验报告.docx

ID:55415165

大小:103.26 KB

页数:23页

时间:2020-05-12

大连理工大学单片机实验报告.docx_第1页
大连理工大学单片机实验报告.docx_第2页
大连理工大学单片机实验报告.docx_第3页
大连理工大学单片机实验报告.docx_第4页
大连理工大学单片机实验报告.docx_第5页
资源描述:

《大连理工大学单片机实验报告.docx》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、大连理工大学本科设计报告题目:单总线高精度温度采集系统课程名称:单片机综合设计实验学院(系):信息与通信工程学院专业:电子信息工程班级:电子学号:学生姓名:成绩:2016年5月5日一.设计要求1.启动DS18B20进行12位高精度环境温度采集2.利用12864LCD屏/数码管显示数据3.具有温度上限声光报警器4.可以通过键盘设定报警上限值(选)二.设计分析及系统方案设计通过DS18B20进行小数12位温度转换、采集,通过单片机读取DS18B20采集到的12位温度值进行二进制到十六进制的转换,利用ZLG7290进行八

2、位数码管显示;利用键盘进入中断来设定报警上限,当温度高于上限时进入报警子程序。利用SW1进入中断来查看当前设置的温度报警上下限值,利用ZLG7290和数码管来显示。主程序不断循环采集温度比较,并可随时进入中断来修改温度上下限和查看温度值。三.系统电路图四.外围接口模块硬件电路功能描述1.DS18B20:用于测定温度,测量范围-55~+125,分辨率为0.0625℃,数据格式为二进制补码形式。2.ZLG7290B:用于数码管动态显示驱动,键盘扫描管理。能够驱动8位共阴极结构的LED数码管或64位独立的LED,同时还能

3、扫描管理多达64个按键的扫描识别,其中八个键可以作为功能键使用。接口采用I²C结构。3.蜂鸣器:这里用作报警,为无源蜂鸣器。五.主程序中主要变量定义变量名称内存单元功能TEMPER_L36H存放温度低四位TEMPER_H35H存放温度高四位TEMPER34H转换后的温度值TEMPER_BCD33HBCD形式温度值TEMPER_NUM60H温度值缓冲单元WSLA_729070H7290写控制单元RSLA_729071H7290读控制单元20-27H数码管显示缓冲区28H存放温度上限值30-31H存放温度BCD码个位十

4、位六.系统软件中各个子程序的功能描述子程序名称入口参数出口参数功能描述GET_TEMPER无35H,36H读取18B20的温度值READ_1820035H,36H无向18b20读控制字TEMPER_COV35H,36H20H,21H温度转换成十进制BCD码形式CF无R3,R4拆分子程序,拆分送数码管显示INIT_1820无无温度传感器初始化BUZZER无无无蜂鸣器控制发声子程序INT_7290无28H读取按键外部中断子程序RDKEY无A读取键值子程序DELAY无无延时子程序七.主程序程序流程图8.程序清单(要求打印

5、格式要规范、重要的语句要有必要的注释)SDABITP1.0SCLBITP1.1TEMPER_LEQU36HTEMPER_HEQU35HTEMPEREQU34H;转换后温度值TEMPER_BCDEQU33H;BCD码温度值TEMPER_NUMEQU60H;缓冲单元WSLA_7290EQU70HRSLA_7290EQU71HFLAG1BIT00HDQBITP3.3;总线控制单元ORG0000HLJMPMAINORG0003HLJMPINT_7290ORG0100HMAIN:MOVSP,#70H;ZLG7290复位CLR

6、P1.7LCALLDELAYSETBP1.7MOV28H,#1EH;温度上限初始值30度MOVTMOD,#01H;模式一,16位计数器SETBEA;允许INTO中断MODE:JBP1.3,SETTMP;拨码为0时采集温度;温度采集TMP:CLREX0MOV27H,#1FH;tLP1:LCALLGET_TEMPERLCALLTEMPER_COV;7290显示MOVR7,#08HMOVR0,#20HMOVR2,#10HMOVR3,#WSLA_7290LCALLWRNBYTLCALLDELAYMOVA,TEMPER;判断

7、温度上限MOV28H,R5CLRCCJNEA,28H,rel;此处报警温度为30度rel:JCNETLCALLBUZZER;大于等于时蜂鸣器报警;闪烁MOV28H,#70H;闪烁命令字MOV29H,#7FH;闪烁命令字MOVR7,#02H;设定数据个数MOVR0,#28H;设置源数据首地址MOVR2,#07H;设置外围器件内部寄存器首地址MOVR3,#WSLA_7290;设定外围器件地址LCALLWRNBYT;调用显示子程序LCALLDELAYLJMPNEXTT;设定温度上限SETTMP:SETBEX0;7290复

8、位CLRP1.7LCALLDELAYSETBP1.7;显示设定内容MOV27H,#0B6H;SMOV26H,#9EH;EMOV25H,#1FH;T.MOVR7,#03HMOVR0,#25HMOVR2,#15HMOVR3,#WSLA_7290LCALLWRNBYTLCALLDELAYSJMPNEXTTNET:MOV28H,#70H;不能闪烁MOV29H,#00

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。