电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

大连理工大学单片机实验报告VIP免费

大连理工大学单片机实验报告_第1页
1/17
大连理工大学单片机实验报告_第2页
2/17
大连理工大学单片机实验报告_第3页
3/17
大连理工大学本科设计报告题目:单总线高精度温度采集系统课程名称:单片机综合设计实验学院(系):信息与通信工程学院专业:电子信息工程班级:电子学号:学生姓名:成绩:2016年5月5日一.设计要求1.启动DS18B20进行12位高精度环境温度采集2.利用12864LCD屏/数码管显示数据3.具有温度上限声光报警器4.可以通过键盘设定报警上限值(选)二.设计分析及系统方案设计通过DS18B20进行小数12位温度转换、采集,通过单片机读取DS18B20采集到的12位温度值进行二进制到十六进制的转换,利用ZLG7290进行八位数码管显示;利用键盘进入中断来设定报警上限,当温度高于上限时进入报警子程序。利用SW1进入中断来查看当前设置的温度报警上下限值,利用ZLG7290和数码管来1ZLG7290BSDASCL/RST/INTI2C总线VCC上拉电阻5K×28位数码管BUZZVCCB5区855010K保护电阻47欧103DS18B201GND3VDD2DQGNDVDD5V4.7KVDD5VDQB4区AT89C51P1.0P1.1P1.7/INT0(P3.2)P3.3P3.4SW1P1.3显示。主程序不断循环采集温度比较,并可随时进入中断来修改温度上下限和查看温度值。三.系统电路图四.外围接口模块硬件电路功能描述1.DS18B20:用于测定温度,测量范围2.ZLG7290B:用于数码管动态显示驱动,键盘扫描管理。能够驱动构。3.蜂鸣器:这里用作报警,为无源蜂鸣器。五.主程序中主要变量定义变量名称内存单元功能TEMPER_L36H存放温度低四位TEMPER_H35H存放温度高四位TEMPER34H转换后的温度值2TEMPER_BCD33HBCD形式温度值TEMPER_NUM60H温度值缓冲单元WSLA_729070H7290写控制单元RSLA_729071H7290读控制单元20-27H数码管显示缓冲区28H存放温度上限值30-31H存放温度BCD码个位十位六.系统软件中各个子程序的功能描述子程序名称入口参数出口参数功能描述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无无延时子程序七.主程序程序流程图38.程序清单(要求打印格式要规范、重要的语句要有必要的注释)SDABITP1.0SCLBITP1.1TEMPER_LEQU36HTEMPER_HEQU35HTEMPEREQU34H;转换后温度值TEMPER_BCDEQU33H;BCD码温度值TEMPER_NUMEQU60H;缓冲单元4WSLA_7290EQU70HRSLA_7290EQU71HFLAG1BIT00HDQBITP3.3;总线控制单元ORG0000HLJMPMAINORG0003HLJMPINT_7290ORG0100HMAIN:MOVSP,#70H;ZLG7290复位CLRP1.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;判断温度上限MOV28H,R5CLRC5CJNEA,28H,rel;此处报警温度为30度rel:JCNETLCALLBUZZER;大于等于时蜂鸣器报警;闪烁MOV28H,#70H;闪烁命令字MOV29H,#7FH;闪烁命令字MOVR7,#02H;设定数据个数MOVR0,#28H;设置源数据首地址MOVR2,#07H;设置外围器件内部寄存器首地址MOVR3,#WSLA_7290;设定外围器件地址LCALLWRNBYT;调用显示子程序LCALLDELAYLJMPNEXTT;设定温度上限SETTMP:SETBEX0;7290复位CLRP1.7LCALLDELAYSETBP1.7;显示设定内容MOV27H,#0B6H;SMOV26H,#9EH;EMOV25H,#1FH;T.MOVR7,#03HMOVR0,#25HMOVR2,#15HMOVR3,#WSLA_7290LCALLWRNBYTLCALLDELAYSJMPNEXTTNET:MOV28H,#70H;不能闪烁MOV29H,#00HMOVR7,#02H6MOVR0,#28HMOVR2,#07HMOVR3,#WSLA_7290LCALLWRNBYTLCALLDELAYNEXTT:CALLDELAYSJMPMODEGET_TEMPER:SETBDQ;定时入口BCD:LCALLINIT_1820JBFLAG1,S22LJMPBCD;若ds18b20不存在则返回S22:LCALLDELAY1MOVA,#0CCH;跳过rom匹配0cchLCALLWRITE_1820MOVA,#44H;发出温度转换命令LCALLWRITE_1820LCALLDELAYCBA:LCALLINIT_1820JBFLAG1,ABCLJMPCBAABC:LCALLDELAY1MOVA,#0CCH;跳过rom匹配LCALLWRITE_1820MOVA,#0BEH;发出读温度命令LCALLWRITE_1820LCALLREAD_18200RETWRITE_1820:;写ds18b20程序MOVR2,...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

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

您可能关注的文档

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部