大连理工大学单片机实验报告
大连理工大学电子工程培训实验报告.doc
大连理工大学电子工程培训实验报告大连理工大学本科实验报告DC电机调速与音乐控制系统基于51单片机课程名称:电子工程学院实训(系):电信专业:自动化等级:号码:学生姓名:实验室:成就:XXXX 11月17日评分评估项目总分焊接30最低系统和电源10功能实现45实验报告10出勤5总分电子安装实验室安全代码(请在下一页手动复制安全代码)1.每次实验前,认真准备,仔细阅读实验的安全规则,严格按照安全规则进行实验,确保实验的安全性。
2.桌面应该保持干净整洁。
不允许有杂物。
禁止将杯子和瓶装水放在桌面上。
3、电烙铁使用前,必须检查电源线有无热损漏电,一旦发现,立即找老师进行安全处理;4、电熨斗长时间不使用,电源线应拔掉;电熨斗使用后,应放回铁架,以免烫伤物品。
5.实验结束后,必须拔掉电烙铁的电源线。
加热的电熨斗放入抽屉前必须冷却。
6.焊料中的铅不应含在嘴里。
实验后洗手。
7、稳压电源在使用前,应先调整要使用的电压,然后进行线路连接,并保证连接极性正确;8、抢救触电人员时,应先切断电源或用绝缘物扒开电源线,使触电者脱离电源,不要用手拖触电人员,以免连环触电;9.实验结束后,必须关闭桌面电源开关,以清洁桌面并整理工具和物品。
主题:基于51单片机的DC电机调速及音乐控制系统。
设计要求是设计、焊接和调试一个以51单片机为核心的实际单片机控制系统,实现四合一数码管显示DC电机的方向和转速,用按键控制音乐播放。
系统设计的具体要求:1)电源电路(9V交流-电子工程培训学院(系):电信专业:自动化等级:号码:学生姓名:实验室:成就:XXXX 11月17日评分评估项目总分焊接30最低系统和电源10功能实现45实验报告10出勤5总分电子安装实验室安全代码(请在下一页手动复制安全代码)1.每次实验前,认真准备,仔细阅读实验的安全规则,严格按照安全规则进行实验,确保实验的安全性。
2.桌面应该保持干净整洁。
不允许有杂物。
禁止将杯子和瓶装水放在桌面上。
单片机实训报告范文精选5篇精选
单片机实训报告范文精选5篇实训报告是展示本身实训收获成长的重要报告,那么实训报告该如何写呢?小编精选了一些关于实训报告的优秀范例,一起来看看吧。
单片机课程设计心得体会在学校学习期间我有幸的参加了学校的单片机学习小组,在小组里我理解了什么是单片机,单片机有哪些用途,利用单片机可以实现哪些功能来方便人们的生活如交通灯,时钟,还有中,电子玩具等等,它们里面都有单片机的存在来实现某种功能。
通过在单片机小组里的学习我简单总结了几点心得和体会:第一:万事开头难,要英勇的迈出第一步,不要总找借口说没有学习过就总推脱。
凡事都有第一步可以先可简单的来,然后可以逐步的向深层次学习。
可以从建工程开始,然后可以找一个简单的小程序先把它敲进单片机内然他运转起来,感受一下单片机的运转,让本人理解单片机整个运转。
第二:关于知识点,学过的要掌握结实,关于没有学的和临时用不到的先不用学习。
比方:小灯得点亮就没有用到中断可以先不用看。
如此可以防止知识过多记不住的苦恼。
关于程序这里的知识点不能只停留在理论层次上,一定要结合着程序进展学习如此才能掌握的特别牢靠,当用到哪里的知识点不记得了可以去看书,关于用不到的可以不去看。
第三:程序不要只是看别人得,一定要本人写过才是本人的。
开始不明白可以参考别人的,看看每一句代表着什么意思,可以实现什么现象。
明白之后本人再重新写一遍,你会觉观察别人的能明白到本人写的时候特别困难。
当你本人能写出来的时候说明你真明白了。
第四:一定要学会程序调试的方法。
有时候把程序写完了然后运转时不能实现理想的现象。
这时有人就晕了不知该如何办,然后就去征询别人。
当别人找出征询题出在哪里时就会恍然大悟。
事实受骗遇到征询题一定要本人尝试着处理,不能遇到征询题就去征询别人。
本人一定要掌握处理征询的方法和思路。
第五:在学习初期看别人的代码,学习别人的思路这个特别有用。
通过看别人的代码特别是有多年编程经历的人的程序,可以迅速提高本人的编程水平。
大连理工大学电子工程训练实验报告
c)按键控制音乐播放。按键按下并保持,音乐响起;松开按键,音乐停止播放。
d).综合以上模块功能后,系统成功实现按键控制直流电机的转速转向的控制,同时数码管显示直流电机的工作状态,并可用按键控制音乐的播放与停止,电机控制部分与音乐播放部分并不冲突。
5、实验结束后,必须拔掉电烙铁的电源线;已经加热的电烙铁,必须冷却后再放入抽屉中;
6、焊锡中含铅,不要含在口中,实验结束后要洗手;
7、稳压电源在使用前,应先调好要使用的电压,再进行线路连接,并确保连接的极性正确;
8、抢救触电人员时,应首先切断电源或用绝缘物体挑开电源线,使触电者脱离电源,千万不要用手拖拉触电人员,以免连环触电;
2)音乐播放:乐曲是由音调和节奏组成的,这两种特征都可以用单片机的定时器来实现,所以音乐文件在程序中是一个很大的数组,数组中包含着音乐的两种控制特征。音乐的输出以及播放、停止控制分别用两个按键来控制。
3)总体设计:显示数码管用~进行位选,P0口控制显示数字;直流电机用和输出PWM波形,通过三极管进行驱动,~分别是正反转控制,加速,减速,启动,停止按键;音乐播放通过输出,由控制。
2)51单片机最小系统。
3)按键控制音乐播放。
4)四位一体数码管显示(三极管8550驱动)。
5)直流电机驱动电路。
6)按键控制电机转动并在四位一体数码管显示。
2.设计原理及系统方案设计
1)直流电机:直流电机只要能提供一定的直流就可以转动,改变电压极性可以改变转动方向,可以通过给直流电机提供脉冲信号来驱动它,脉冲信号的占空比可以影响到直流电机的平均速度,因此可以通过调整占空比从而能实现调速的目的(PWM调速)。电机的驱动电流是比较大的,所以需要用三极管来放大电流。程序的关键就是如何实现占空比的调整,这个可以通过对51单片机定时器重装初值进行改变,从而改变时间。
大连理工大学单片机实验实验二
大连理工大学实验报告实验时间: 2016 年 4 月 1 日星期五时间: 7 :45 ~ 10 :00实验室(房间号): 420 实验台号码: 3 班级:电子1303 姓名:种昆指导教师签字:成绩:实验二存储器读写实验1、实验目的和要求目的:进一步熟悉、掌握Keil集成调试软件和DP-51PROC综合实验系统的使用。
掌握单片机并行端口的编程及分支程序的设计方法。
要求:轮流点亮数码管(一个时刻内只有一个数码管是亮的),利用人眼的视觉暂留现象(即余晖效应),就可以做到看起来是所有数码管都同时亮了。
2、实验算法使P0口的低四位为低电平,从而点亮数码管。
三、实验电路图四、实验流程图开始开始向累加器送入数码管控制字向累加器送入数码管控制字将累加器中的数送入P0口将累加器中的数送入P0口点亮P0低四位中低电平对应的数码管点亮P0低四位中低电平对应的数码管延时延时结束结束五、程序清单ORG 0000HLJMP STARTORG 0020HSTART: MOV SP,#60HREAD: MOV A,#0F7HMOV P1,AMOV A,#9FHMOV P0,ALCALL DEALYMOV A,#0FBHMOV P1,AMOV A,#25HMOV P0,ALCALL DEALYMOV A,#0FDHMOV P1,AMOV A,#0DHMOV P0,ALCALL DEALYMOV A,#0EHMOV P1,AMOV A,#99HMOV P0,ALCALL DEALYSJMP READDEALY: PUSH 01HPUSH 02HMOV R1,#00HLOOP1: MOV R2,#01HDJNZ R2,$DJNZ R1,LOOP1POP 02HPOP 01HRETEND六、实验结果与分析数码管上同时显示4321,与程序设计要求相符。
七、实验体会和建议通过本次实验,学会了Keil集成调试软件和DP-51PROC综合实验系统的使用,掌握单片机并行端口的编程及分支程序的设计方法,对于以后的学习有很大的帮助。
单片机实习报告2篇
单片机实习报告单片机实习报告精选2篇(一)实习报告实习单位:XXXX公司实习时间:20XX年X月-20XX年X月一、实习背景在本次实习中,我到了XXXX公司进行单片机相关的实习。
本次实习旨在通过实际操作和实践,深入了解单片机的原理和应用,并提升自己的实践能力和团队合作能力。
二、实习内容1. 学习基础知识在实习开始前,我先通过自学对单片机的基本知识进行了学习,包括单片机的原理、结构、指令系统和编程语言等。
2. 学习开发工具在公司的指导下,我学习了单片机的开发工具,包括Keil开发环境和Proteus仿真软件等。
通过学习和实践,我熟悉了这些工具的基本操作和常用功能。
3. 实际操作在掌握了基础知识和开发工具后,我开始进行实际操作。
根据公司的要求,我完成了一些单片机的应用案例,包括LED灯控制、电机控制、温度测量等。
通过实际操作,我加深了对单片机的理解,并提高了自己的实践能力。
4. 团队合作在实习期间,我积极参与到团队项目中。
与同事合作完成了一个基于单片机的智能家居控制系统的开发,包括温湿度监测、光照控制、门窗报警等功能。
这个项目不仅提高了我的团队合作能力,也进一步加深了我对单片机的应用理解。
三、收获与体会通过这次实习,我对单片机的原理和应用有了更深入的了解。
我不仅学到了书本上没有涉及到的实际操作经验,还学到了与人合作的能力。
在实践中遇到问题时,我学会了积极思考和与他人沟通,寻找解决问题的方法。
同时,我也认识到自己在某些方面的不足,比如对于理论知识的掌握还需要加强,对于一些高级功能的应用还需要进一步学习。
总的来说,这次实习对我来说是一次宝贵的经验,它不仅给我提供了实践机会,也让我认识到自己的不足之处,激发了我进一步深入学习的动力。
我相信,通过不断努力和实践,我能够在单片机领域取得更大的进步。
单片机实习报告精选2篇(二)参加单片机实训课程的心得体会如下:首先,通过单片机实训课程,我对单片机的原理和应用有了更深入的了解。
大连理工大学单片机实验实验三
大连理工大学实验报告实验时间:2016 年月日星期时间:~实验室(房间号):实验台号码:班级:姓名:指导教师签字:成绩:实验三MCS-51单片机中断系统及外部中断/INT0实验一、实验目的和要求学习、掌握单片机的中断原理。
正确理解中断矢量入口、中断返回的概念及物理过程。
学习编写软件“防抖程序”,了解软件防抖原理。
二、实验内容及步骤注:主程序的功能:LDE灯“全亮”、“全灭”交替进行--------(状态2);Int0中断服务程序功能:2个相邻的LED灯被点亮且循环左移(状态0);Int1中断服务程序功能:1个LED灯被点亮且循环右移---(状态1);1.INT0、INT1同一优先级运行实验:保持上电复位时INT0、INT1默认为“低优先级”的状态,且将SW1、SW2全部事先置于“0”电平(同时申请中断)后,再启动运行程序,按照表1要求填写结果。
结论一:默认优先级状态时:(1)同级中断同时申请中断时,CPU按自然优先级响应,即INT0→T0→INT1→T1→ES。
(2)一个中断一旦得到响应(无论什么优先级),其他中断则不能再中断它。
(3)每个中断都是下降沿或者低电平有效(由TCON设定)。
2.将INT1设定为高优先级(INT0保持为低优先级)的运行实验:在程序中使用指令将INT1设定为“高优先级”状态,按照表2内容填写结果。
结论二:将INT1设定为高优先级(INT0保持为低优先级)时:(1)两个不同优先级的中断同时申请时,先执行高优先级的中断(2)低优先级的中断响应在执行时可被高优先级中断所中断。
(3)高优先级的中断响应在执行时不可被低优先级中断所中断。
(4)两个中断都没有申请时程序正常执行主程序。
三、实验算法和程序清单ORG 0000HLJMP STARTORG 0003HLJMP INT_0ORG 0013HLJMP INT_1ORG 0100HSTART: MOV SP,#60HSETB EASETB EX0SETB EX1MOV TCON,#05HMOV IP,#04HMOV R3,#03HMOV R4,#01HLOOP: MOV A,#00HCPL AMOV P1,ALCALL DELAYMOV A,#0FFHCPL AMOV P1,ALCALL DELAYSJMP LOOP INT_0: PUSH PSW LOP_0:LCALL DELAYSETB P3.2MOV A,R3CPL AMOV P1,AMOV A,R3RL AMOV R3,ALCALL DELAYJB P3.2,BACK_0JMP L OP_0 BACK_0:POP PSWRETIINT_1: PUSH PSW lop_1:LCALL DELAYSETB P3.3MOV A,R4CPL AMOV P1,AMOV A,R4RR AMOV R4,ALCALL DELAYJB P3.3,BACK_1JMP l op_1BACK_1:POP PSWRETIDELAY: PUSH 01HPUSH 02HMOV R1,#00H DELAY1: M OV R2,#00H DJNZ R2,$DJNZ R1,DELAY1POP 02HPOP 01HRETEND四、实验电路五、实验流程图六、实验结果与分析本次的中断实验结果符合理论情况。
大连理工大学物理实验报告模板
大连理工大学物理实验报告模板篇一:大连理工大学单片机实验报告成绩:大连理工大学本科设计报告题目:单总线高精度温度采集系统课程名称:单片机综合设计实验学院(系):信息与通信工程学院专业:电子信息工程班级:电子学号:学生姓名:XX 年 5 月5 日一.设计要求1. 启动DS18B20进行12位高精度环境温度采集2. 利用12864LCD屏/数码管显示数据3. 具有温度上限声光报警器4. 可以通过键盘设定报警上限值(选)二.设计分析及系统方案设计通过DS18B20进行小数12位温度转换、采集,通过单片机读取DS18B20采集到的12位温度值进行二进制到十六进制的转换,利用ZLG7290进行八位数码管显示;利用键盘进入中断来设定报警上限,当温度高于上限时进入报警子程序。
利用SW1进入中断来查看当前设置的温度报警上下限值,利用ZLG7290和数码管来显示。
主程序不断循环采集温度比较,并可随时进入中断来修改温度上下限和查看温度值。
三.系统电路图VCC四.外围接口模块硬件电路功能描述:用于测定温度,测量范围-55~+125,分辨率为℃,数据格式为二进制补码形式。
:用于数码管动态显示驱动,键盘扫描管理。
能够驱动8位共阴极结构的LED数码管或64位独立的LED,同时还能扫描管理多达64个按键的扫描识别,其中八个键可以作为功能键使用。
接口采用I2C结构。
3.蜂鸣器:这里用作报警,为无源蜂鸣器。
五.主程序中主要变量定义六.系统软件中各个子程序的功能描述七.主程序程序流程图8. 程序清单(要求打印格式要规范、重要的语句要有必要的注释)SDA BIT SCL BITTEMPER_L EQU 36H TEMPER_H EQU 35H TEMPER EQU 34H TEMPER_BCDEQU 33H;转换后温度值 ;BCD码温度值TEMPER_NUMEQU 60H WSLA_7290 EQU 70H RSLA_7290 EQU 71H FLAG1 BIT 00H;缓冲单元DQ BIT ORG LJMP ORG LJMP ORG0000H MAIN 0003H INT_7290 0100H;总线控制单元MAIN:MOV SP,#70H;ZLG7290复位CLR LCALL DELAY SETBMOV 28H,#1EH MOV TMOD,#01H SETB;t;拨码为0时采集温度;温度采集CLR EX0MOV 27H,#1FHEA;温度上限初始值30度 ;模式一,16位计数器 ;允许INTO中断MODE: JB ,SETTMP TMP: LP1:LCALL GET_TEMPER;7290显示LCALL TEMPER_COV MOV R7,#08H MOV R0,#20H MOV R2,#10H MOV R3,#WSLA_7290 LCALL WRNBYT LCALL DELAY MOV A,TEMPER;判断温度上限MOV 28H,R5篇二:大连理工大学数电实验报告大连理工大学本科实验报告题目:数字钟课程名称:数字电路课程设计学院(系):电子信息工程专业:电子班级:电子1301班学生姓名:陈冠谋学号:完成日期:XX年7月18日成绩:XX 年 7月 18 日注意:本页要求放在实验报告第一页课程设计得分表一、数字钟课程设计要求:1、设计一个具有‘时’、‘分’、‘秒’的十进制数字显示(小时从00~23)计时器。
大连理工大学单片机实验报告
专业资料大连理工大学本科设计报告题目:单总线高精度温度采集系统课程名称:单片机综合设计实验学院(系):信息与通信工程学院专业:电子信息工程班级:电子学号:学生姓名:成绩:2016 年 5 月 5 日一.设计要求1.启动DS18B20进行12位高精度环境温度采集2.利用12864LCD屏/数码管显示数据3.具有温度上限声光报警器4.可以通过键盘设定报警上限值(选)二.设计分析及系统方案设计通过DS18B20进行小数12位温度转换、采集,通过单片机读取DS18B20采集到的12位温度值进行二进制到十六进制的转换,利用ZLG7290进行八位数码管显示;利用键盘进入中断来设定报警上限,当温度高于上限时进入报警子程序。
利用SW1进入中断来查看当前设置的温度报警上下限值,利用ZLG7290和数码管来显示。
主程序不断循环采集温度比较,并可随时进入中断来修改温度上下限和查看温度值。
三.系统电路图四.外围接口模块硬件电路功能描述1.DS18B20:用于测定温度,测量范围-55~+125,分辨率为0.0625℃,数据格式为二进制补码形式。
2.ZLG7290B:用于数码管动态显示驱动,键盘扫描管理。
能够驱动8位共阴极结构的LED数码管或64位独立的LED,同时还能扫描管理多达64个按键的扫描识别,其中八个键可以作为功能键使用。
接口采用I²C结构。
3.蜂鸣器:这里用作报警,为无源蜂鸣器。
五.主程序中主要变量定义六.系统软件中各个子程序的功能描述七.主程序程序流程图8. 程序清单(要求打印格式要规范、重要的语句要有必要的注释)SDA BIT P1.0SCL BIT P1.1TEMPER_L EQU 36HTEMPER_H EQU 35HTEMPER EQU 34H ;转换后温度值TEMPER_BCD EQU 33H ;BCD码温度值TEMPER_NUM EQU 60H ;缓冲单元WSLA_7290 EQU 70HRSLA_7290 EQU 71HFLAG1 BIT 00HDQ BIT P3.3 ;总线控制单元ORG 0000HLJMP MAINORG 0003HLJMP INT_7290ORG 0100HMAIN: MOV SP,#70H;ZLG7290复位CLR P1.7LCALL DELAYSETB P1.7MOV 28H,#1EH ;温度上限初始值30度MOV TMOD,#01H ;模式一,16位计数器SETB EA ;允许INTO中断MODE: JB P1.3,SETTMP ;拨码为0时采集温度;温度采集TMP: CLR EX0MOV 27H,#1FH ;tLP1: LCALL GET_TEMPERLCALL TEMPER_COV;7290显示MOV R7,#08HMOV R0,#20HMOV R2,#10HMOV R3,#WSLA_7290LCALL WRNBYTLCALL DELAYMOV A,TEMPER;判断温度上限MOV 28H,R5CLR CCJNE A,28H,rel ;此处报警温度为30度rel:JC NETLCALL BUZZER ;大于等于时蜂鸣器报警;闪烁MOV 28H,#70H ;闪烁命令字MOV 29H,#7FH ;闪烁命令字MOV R7,#02H ;设定数据个数MOV R0,#28H ;设置源数据首地址MOV R2,#07H ;设置外围器件内部寄存器首地址MOV R3,#WSLA_7290 ;设定外围器件地址LCALL WRNBYT ;调用显示子程序LCALL DELAYLJMP NEXTT;设定温度上限SETTMP:SETB EX0;7290复位CLR P1.7LCALL DELAYSETB P1.7;显示设定内容MOV 27H,#0B6H ;SMOV 26H,#9EH ;EMOV 25H,#1FH ;T.MOV R7,#03HMOV R0,#25HMOV R2,#15HMOV R3,#WSLA_7290LCALL WRNBYTLCALL DELAYSJMP NEXTTNET: MOV 28H,#70H ;不能闪烁MOV 29H,#00HMOV R7,#02HMOV R0,#28HMOV R2,#07HMOV R3,#WSLA_7290LCALL WRNBYTLCALL DELAYNEXTT: CALL DELAYSJMP MODEGET_TEMPER:SETB DQ ;定时入口BCD: LCALL INIT_1820JB FLAG1,S22LJMP BCD ;若ds18b20不存在则返回S22: LCALL DELAY1MOV A,#0CCH ;跳过rom匹配0cchLCALL WRITE_1820MOV A,#44H ;发出温度转换命令LCALL WRITE_1820LCALL DELAYCBA: LCALL INIT_1820JB FLAG1,ABCLJMP CBAABC: LCALL DELAY1MOV A,#0CCH ;跳过rom匹配LCALL WRITE_1820MOV A,#0BEH ;发出读温度命令LCALL WRITE_1820LCALL READ_18200RETWRITE_1820: ;写ds18b20程序MOV R2,#8CLR CWR1: CLR DQMOV R3,#6 ;延时24usDJNZ R3,$RRC AMOV DQ,CMOV R3,#23 ;延时60usDJNZ R3,$SETB DQNOPDJNZ R2,WR1SETB DQRETREAD_18200: ;从1820中读出两个字节温度数据PUSH 01HMOV R4,#2MOV R1,#36HRE00: MOV R2,#8RE01: CLR CSETB DQNOPCLR DQNOPNOPSETB DQMOV R3,#2DJNZ R3,$MOV C,DQMOV R3,#23HDJNZ R3,$RRC ADJNZ R2,RE01MOV @R1,ADEC R1DJNZ R4,RE00POP 01HRETU8TEMPER_COV: ;将读出的数据转换PUSH DPHPUSH DPLPUSH 02HMOV A,#0F0HANL A,TEMPER_L ;舍去小数点后的四位SWAP AMOV TEMPER_NUM,AMOV A,TEMPER_HANL A,#07HSWAP AADD A,TEMPER_NUMMOV TEMPER,A;转换成十进制数显示MOV B,#10DIV ABMOV 30H,B ;个位MOV B,#10DIV ABMOV 31H,B ;十位ANL A,#0FH ;百位SWAP AADD A,BMOV TEMPER_BCD,ALCALL CF2 ;拆分查表MOV 25H,R3MOV 26H,R4MOV A,30HANL A,#0FHLCALL CFMOV 24H,R3;处理四位小数位数据MOV A,TEMPER_LANL A,#0FH ;取低四位数据MOV B,#02HMUL AB ;字节转为字MOV DPTR,#NUMSEGMOVC A,@A+DPTRMOV TEMPER_BCD,ALCALL CF2MOV 22H,R3MOV 23H,R4MOV A,TEMPER_LANL A,#0FHMOV B,#02HMUL ABINC AMOVC A,@A+DPTRMOV TEMPER_BCD,ALCALL CF2MOV 20H,R3MOV 21H,R4POP 02HPOP DPLPOP DPHRET;--------------小数部分查表------------------------ NUMSEG: DW 0000H,0625H,1250H,1875H,2500H,3125H,3750H,4375H DW 5000H,5625H,6250H,6875H,7500H,8125H,8750H,9375H;--------------------------------------------------;--------------拆分显示整数子程序------------------CF: PUSH 02HPUSH DPHPUSH DPLMOV DPTR,#LEDSEGMOV R2,TEMPER_BCDANL A,#0FHMOVC A,@A+DPTR ;查表得字形码MOV R3,AMOV A,R2SWAP AANL A,#0FHMOVC A,@A+DPTRMOV R4,AINC R3 ;加上小数点POP DPLPOP DPHPOP 02HRET;-----------------------------------------------;--------------拆分显示小数子程序------------------ CF2: PUSH 02HPUSH DPHPUSH DPLPUSH ACCMOV DPTR,#LEDSEGMOV R2,TEMPER_BCDMOV A,R2ANL A,#0FHMOVC A,@A+DPTRMOV R3,AMOV A,R2SWAP AANL A,#0FHMOVC A,@A+DPTRMOV R4,A;加上小数点POP ACCPOP DPLPOP DPHPOP 02HRET;-----------------------------------------------;-----------------led字型码--------------------- LEDSEG: DB 0FCH,60H,0DAH,0F2H,66H,0B6H,0BEH,0E4H DB 0FEH,0F6H,0EEH,3EH,9CH,7AH,9EH,8EH;-----------------------------------------------INIT_1820:SETB DQNOPCLR DQMOV R0,#80HTSR1: DJNZ R0,TSR1 ;延时300us SETB DQMOV R0,#25H ;96usTSR2: DJNZ R0,TSR2JNB DQ,TSR3LJMP TSR4 ;延时TSR3: SETB FLAG1 ;致标志位LJMP TSR5 ;ds18b20存在TSR4: CLR FLAG1 ;清标志位LJMP TSR7 ;ds18b20不存在TSR5: MOV R0,#06BH ;延时200usTSR6: DJNZ R0,TSR6TSR7: SETB DQRETDELAY1: MOV R7,#20H ;80us延时DJNZ R7,$RET;---------------蜂鸣器驱动子程序-------------- BUZZER:PUSH 07HMOV R7,#00HMOV TL0,#33H ;设置定时0.5us初值MOV TH0,#0FEHSETB TR0 ;启动t0WAIT: JNB TF0,$CLR TF0MOV TL0,#33HMOV TH0,#0FEHCPL P1.2DJNZ R7,WAITCLR TR0SETB P1.2POP 07HRET;---------------------------------------------;-------------外部中断服务程序---------------- INT_7290:PUSH 00HPUSH 01HPUSH 02HPUSH 03HPUSH 04HPUSH 07HPUSH ACCPUSH PSWSJMP RD1RD1:JB P3.2,$ ;以查询方式等待下一次按键操作SWAP ALCALL RDKEYCJNE A,#0AH,WAITT ;容错功能调整WAITT: JNC RD1MOV TEMPER_BCD,ALCALL CF2MOV B,#0AHMUL ABMOV R5,AMOV 23H,R3MOV R7,#01HMOV R0,#23HMOV R2,#13HMOV R3,#WSLA_7290LCALL WRNBYTKEY2: JB P3.2,$ ;以查询方式等待下一次按键操作LCALL RDKEYCJNE A,#0AH,WAITT2WAITT2: JNC KEY2MOV TEMPER_BCD,ALCALL CF2MOV A,R5ADD A,TEMPER_BCDMOV R5,AMOV 22H,R3MOV 21H,#9CH ;CMOV R7,#02HMOV R0,#21HMOV R2,#11HMOV R3,#WSLA_7290LCALL WRNBYT;确定键COMF: JB P3.2,$ ;等待确认键LCALL RDKEYCJNE A,#0FH,COMFMOV 28H,R5 ;上限值放入28h中DOWN:;7290复位CLR P1.7LCALL DELAYSETB P1.7CLR IE0 ;必须清标志POP PSWPOP ACCPOP 07HPOP 04HPOP 03HPOP 02HPOP 00HRETI;---------------------------------------------;------------读取键值子程序(键值保存在A中)---RDKEY: MOV R0,#1FHMOV R7,#01HMOV R2,#01HMOV R3,#WSLA_7290MOV R4,#RSLA_7290LCALL RDADDMOV A,1FHDEC ARET;----------------------------------------------;------------延时子程序-----------------------DELAY: PUSH 00H ;延时子程序PUSH 01HMOV R1,#00LP: MOV R1,#00HDJNZ R1,$DJNZ R0,LPPOP 01HPOP 00HRET;---------------------------------------------(I2C子程序省略)九.系统调试运行结果说明、分析所出现得问题,设计体会与建议硬件使用ZLG51单片机开发平台,软件使用KEil2软件进行程序的编写编译以及调试。
单片机实习报告(优秀5篇)
单片机实习报告(优秀5篇)电子实习报告篇一因为报告的版本有很多,所以我没有抄下来,但是有一个东西是属于我自己的,那就是自己的感想,不需要抄袭,不需要太多华丽的语言,只是需要内心深处最原始的感触,那就够了。
本周我们班上进行了电子工艺实习,在这一周中,我们学到了很多,包括最后我们都自己看到亲手打造的纯手工的收音机时,内心的深处充满了不可言语的喜悦。
回想一周的时间过的很快,我们没有停下对做出一个收音机的兴趣和热情。
从此至终,我都是一个人在认认真真的学习,遇到不懂的,自己先放下来思考,实在不行看看周围的同学是怎样做的,再实在弄不懂的时候才向师兄或者是老师请教。
因为我知道,一个小小的收音机,里面也是有很多的元器件,有不懂的地方是非常的正常,但是,如果实习完之后,我还是没有弄懂,那就有点对不起老师,甚至是自己啦。
我们实习的第一天是在实验室里练习好焊锡,看起来多么简单易懂,可是当你真正拿起电烙铁的时候,并非像你想象的那样轻松和简单。
你要控制好温度,放电烙铁的地方,以及焊锡的多少,这些都是要思考和练习。
俗话说,熟能生巧,一天过去之后,我们都学的差不多了,对于电阻的焊角已经有一定的熟悉程度了。
实习的第二天是焊接一些元器件,当然在这之前,老师给我们讲了一些收音机的原理,以及元器件是如何进行分布的,还有一些注意事项,这些我们都非常认真的听取,因为在接下来我们将会按照工位的次序进行焊接和排布电子元器件,这其中必需要知道一些实验的原理和工作的一些小细节,因为这些都是非常容易出错的。
第三天我们在老师的指导下,观看了芯片的焊接方式,有点难学,但是熟能生巧,我在尝试了几次之后,也学会了焊接,虽然不是很完美,但是还是可以用的。
焊好之后的时间里,老师让我们大家做电路的检测以及调试,很幸运的是,我的没有出现问题,这可能和我一直以来都很小心的焊接每一个电路点有关,呵呵,当时的内心非常激动,看来做足了准备功夫,后面时就会减少很多的不必要的检查。
2024年单片机实习报告总结模版(2篇)
2024年单片机实习报告总结模版____字2024年,我有幸参加了一家知名科技公司的单片机实习项目,并在项目中获得了丰富的实践经验。
在这次实习中,我深入学习了单片机的原理和应用,并通过实际操作掌握了单片机相关技术和工具的使用。
下面是我的实习报告总结:一、实习背景及目标本次实习的背景是为了提高我们对单片机原理和应用的理解,并能够熟练运用单片机技术解决实际问题。
实习的目标是通过项目实践,加深对单片机的认识,并培养我们的动手能力和团队合作精神。
二、实习内容在实习期间,我主要参与了一个基于单片机的智能家居系统的开发。
该系统包括智能灯控、温湿度监测、门禁系统等功能。
我负责了智能灯控的设计和开发。
具体的工作内容包括:1. 硬件设计:我学习了单片机的接口原理和外围电路的设计方法,根据实际需求设计了灯控模块的硬件电路。
在设计过程中,我充分考虑了稳定性、可靠性和安全性等因素,确保了灯控系统的正常运行和安全使用。
2. 软件开发:在硬件设计完成后,我开始进行软件的开发。
我使用C语言编写了单片机的程序,实现了灯的开关、亮度调节和定时控制等功能。
在开发过程中,我注意到了一些技术细节,如处理中断、优化代码和调试错误等,最终实现了功能完备且稳定的灯控系统。
3. 系统集成:在软件开发完成后,我将灯控系统与其他功能模块进行了集成测试,确保了整个智能家居系统的各个功能正常协同工作。
在测试过程中,我不断排查和修复了一些问题,最终确保了系统的稳定性和可靠性。
三、实习收获通过这次实习,我对单片机技术和应用有了更深入的了解,并获得了以下收获:1. 熟悉单片机的原理和应用:我通过实践操作,深入学习了单片机的工作原理、接口特性和指令系统等,对单片机的运行机制有了更深入的认识。
同时,我还学习了单片机在各种应用场景中的具体技术和方法,对于如何灵活运用单片机解决实际问题有了一定的经验。
2. 掌握了单片机的设计和开发技能:在实习期间,我学习了单片机的硬件设计和软件开发技术。
大连理工大学电子工程训练实验报告
大连理工大学本科实验报告基于51单片机的直流电机调速及音乐控制系统课程名称:电子工程训练学院(系):电信学部专业:自动化班级:学号:学生姓名:实验教室:成绩:2014 年 11 月 17 日成绩评定电子安装实验室安全守则(请在下一页手抄一份安全守则)1、每次实验前,认真预习准备,仔细阅读实验安全守则,严格按照安全规范进行实验,确保实验安全;2、桌面要保持整洁,不允许有杂物,禁止将水杯、瓶装水放在桌面;3、电烙铁在使用前,必须检查电源线有无烫损漏线情况,一经发现,立即找老师进行安全处理;4、电烙铁长时间不使用,应将电源线拔掉;电烙铁使用后,应放回烙铁架中,以免烫伤物品;5、实验结束后,必须拔掉电烙铁的电源线;已经加热的电烙铁,必须冷却后再放入抽屉中;6、焊锡中含铅,不要含在口中,实验结束后要洗手;7、稳压电源在使用前,应先调好要使用的电压,再进行线路连接,并确保连接的极性正确;8、抢救触电人员时,应首先切断电源或用绝缘物体挑开电源线,使触电者脱离电源,千万不要用手拖拉触电人员,以免连环触电;9、实验结束后,必须关闭桌面电源开关,将桌面收拾干净,工具物品整理好。
题目:基于51单片机的直流电机调速及音乐控制系统1.设计要求以51单片机为核心,设计、焊接并调试一个实际单片机控制系统,实现四位一体数码管显示直流电机转向、转速,并利用按键控制音乐播放。
系统设计具体要求:1)电源电路(9V AC - 5V DC)。
2)51单片机最小系统。
3)按键控制音乐播放。
4)四位一体数码管显示(三极管8550驱动)。
5)直流电机驱动电路。
6)按键控制电机转动并在四位一体数码管显示。
2.设计原理及系统方案设计1)直流电机:直流电机只要能提供一定的直流就可以转动,改变电压极性可以改变转动方向,可以通过给直流电机提供脉冲信号来驱动它,脉冲信号的占空比可以影响到直流电机的平均速度,因此可以通过调整占空比从而能实现调速的目的(PWM调速)。
大连理工大学软件学院单片机实验5报告
大连理工大学软件学院《单片机原理与应用设计》实验报告姓名:学号:班级:实验时间:实验台:Proteus仿真平台_指导教师:成绩:实验五一、实验目的和要求1. 通过按键控制,完成数码管的显示计数控制。
2. 学习单片机的基本接口技术。
3. 学习74HC595、74HC138使用及与51单片机的控制方法。
二、实验原理和内容实验原理:1.根据38译码器的片选,一次选中一个数码管不能选择多位的特性,选择很短的时间间隔向8个晶体管传输数据,并循环显示8LED的内容,利用计时器,通过中断次数来实现依次显示时间的控制。
2.利用段码表,通过不断的更新段码,依次传输数据。
3.使用74HC595芯片,接收51单片机传输的串行数据,进行并行输出,并使用数码管对应的段码,完成0、1、2、3、4、5、6、7、8的依次输出,输出到数码管上实验内容:用汇编语言设计程序,完成8个数码管的显示控制。
当按下INT 按钮时,数码管开始快速计时,高五位为秒数,低三位为ms 数,每1ms 刷新一次显示内容。
当再次按下INT 按钮时,停止计数。
三、主要仪器设备及软件编程环境Keil 4+Proteus 8四、实验步骤与编程代码:ORG 0000HLJMP MAINORG 000BHLJMP IT0PORG 0013H //P3.3触发的中断的入口LJMP IT1PORG 0030HNUMTAB: // 0 1 2 3 4 56 7 8 9DB 00111111B, 00000110B, 01011011B, 01001111B, 01100110B, 01101101B, 01111101B, 00000111B, 011111111B, 01101111BMAIN:MOV R3,#1HMOV A,#0011111BMOV R2,#8HMOV R1,#78HSET0:MOV @R1,AINC R1DJNZ R2,SET0 //初始化置零SETB EASETB ET0MOV TMOD,#01BMOV TH0,#0FCHMOV TL0,#018H //1msSETB TR0SETB EX1 // 打开外部中断1SETB IT1LOOP_START:MOV P0,#00 //P0清零MOV R6,#8H //循环8次赋值MOV R0,#78HNUM_LOAD: //移动MOV R7,#8H //循环8次CLR A //Acc清零MOV A,@R0 //把要显示的数放到累加器A中CJNE R6, #4, BIT_LOADADD A, #128 //小数点BIT_LOAD: //74HC595:8位串行输入,8位并行输出 RLC A //带进位的左移MOV P0.5,C //把移出位放到SER引脚CLR P0.4SETB P0.4DJNZ R7,BIT_LOAD //八次移位实8位串行输入INC R0 //移动到下一个要显示的值CLR P0.3SETB P0.3LCALL DELAY //极其短暂延迟INC P0 //(P0.0~P0.2) 对应LED移动DJNZ R6,NUM_LOADLJMP LOOP_STARTDELAY:MOV R4,#10HLOOP_DELAY1:MOV R5,#100LOOP_DELAY2:DJNZ R5,LOOP_DELAY2DJNZ R4,LOOP_DELAY1RETIT0P:CJNE R3,#0H,LOOP_DEAD //启动开关MOV 49H,R0MOV 48H,R1MOV 47H,AMOV 46H,DPH //DPTR_H MOV 45H,DPL //DPTR_LMOV 44H,R7 //入栈操作MOV 43H,R6MOV 42H,R5MOV 41H,R4CALL UPDATELOOP_DEAD:RETIUPDATE:MOV R1,#7FH //8MOV DPTR,#NUMTAB //载入NUMTAB MOV A,60HINC AMOV 60H,ACJNE A,#0AH,ADD8MOV 60H,#0//7MOV R1,#7eHMOV A,61HINC AMOV 61H,ACJNE A,#0AH,ADD7MOV 61H,#0//6 MOV R1,#7DHMOV A,62HINC AMOV 62H,ACJNE A,#0AH,ADD6MOV 62H,#0//5 MOV R1,#7CHMOV A,63HINC AMOV 63H,ACJNE A,#0AH,ADD5MOV 63H,#0//4 MOV R1,#7BHMOV A,64HINC AMOV 64H,ACJNE A,#0AH,ADD4MOV 64H,#0//3 MOV R1,#7AHMOV A,65HINC AMOV 65H,ACJNE A,#0AH,ADD3MOV 65H,#0//2 MOV R1,#79HMOV A,66HINC AMOV 66H,ACJNE A,#0AH,ADD2MOV 66H,#0MOV R1,#78H //1MOV A,67HINC AMOV 67H,AMOVC A,@A+DPTRMOV @R1,AADD2: //2 MOV A,66HMOV R1,#79HMOVC A,@A+DPTRMOV @R1,AADD3: //3 MOV A,65HMOV R1,#7AHMOVC A,@A+DPTRMOV @R1,AADD4: //4 MOV A,64HMOV R1,#7BHMOVC A,@A+DPTRMOV @R1,AADD5: //5 MOV A,63HMOV R1,#7CHMOVC A,@A+DPTRMOV @R1,AADD6: //6 MOV A,62HMOV R1,#7DHMOVC A,@A+DPTRMOV @R1,AADD7: //7 MOV A,61HMOV R1,#7EHMOVC A,@A+DPTRMOV @R1,AADD8: //8 MOV A,60HMOV R1,#7FHMOVC A,@A+DPTRMOV @R1,ALOOP_RST:MOV R0,49HMOV R1,48HMOV A,47HMOV DPH,46H //DPTR_HMOV DPL,45H //DPTR_LMOV R7,44HMOV R6,43HMOV R5,42HMOV R4,41HMOV TH0,#0FCHMOV TL0,#18H //重置定时器的值 SETB TR0 //开启定时器RETIT1P:MOV 68H,A;MOV 69H,R1;MOV A,R3;XRL A,#01H; //改变开关MOV R3,A;MOV R1,69H;MOV A,68H;RETI;END电路图:五、实验数据与结果分析成功,详见录像六、讨论、建议参考了上次的代码思路,举一反三。
单片机实验模版
大连理工大学本科实验报告课程名称:单片机综合设计学院(系):___________________ 专业:电子___________________ 班级:________________________ 学号:________________________ 学生姓名:_____________________实验项目列表注意:独立完成预习报告和实验操作。
专业:_______________ 班级:______________ 学号:______________________________学生签字:__________________________联系电话:__________________________《单片机原理及应用实验》报告填写要求根据《大连理工大学本科实验报告规范(试行)》提出的各项要求,现规定《单片机原理及应用实验》报告填写要求如下:一、每次实验前必须完成预习报告。
注意:预习报告中的回答问题必须手写,且由学生本人签名。
第一次实验时,课前将预习报告与《实验项目列表》一同交给实验老师。
每次实验时,课前提交预习报告,没有完成预习报告者不得进行实验。
二、每一个实验项目均须撰写一份实验报告,最后按顺序装订、上交。
三、实验报告内容:1实验目的和要求:写明实验的目的和任务要求;2、实验原理和内容:与实验内容相关的算法描述、程序的结构类型,与实验相关的接口模块功能描述。
3、算法流程:使用流程图对算法进行描述。
流程图应当逻辑正确、简单清晰。
流程图可以采用打印或手工绘制。
4、使用protel等工具绘制实验系统电路图(也可手工绘制)。
系统电路图应正确、工整。
系统电路中应包含单片机以及单片机工作时所必需的外围相关器件(晶体、上电复位电路等);5、程序清单:程序清单一律采用打印的方式,源程序文件的格式要整齐、规范(语句的标号、指令及注释应在不同列中)。
在程序的关键语句上加注释。
相关子程序要在注视中进行功能说明;6、实验结果与分析:明确地写出最后结果(是否实现设计要求等),对实验中所遇到的问题以及解决的方法加以描述;7、实验体会、建议:通过实验所体会的收获。
大连理工大学单片机综合设计——基于ZLG7290B、PCF8563的时钟系统设计
大连理工大学单片机综合设计——基于ZLG7290B、PCF8563的时钟系统设计大连理工大学本科设计报告题目:基于ZLG7290B、PCF8563的时钟系统设计课程名称:单片机原理及应用实验学院(系):电子信息与电气工程学部专业:班级:学号:学生姓名:成绩:2015 年5月4日《计算机技术实验室安全操作规范》1.实验前认真阅读安全操作规程,不得擅自触及总电源开关。
2.实验期间学生不准使用与实验无关的电气设备。
3.实验过程中若遇计算机故障时,交由指导老师负责,不允许学生私自开箱维修。
4.在实验过程中,连接实验设备的220v电源时,要保持手部干燥,并注意操作安全,不允许使用金属物件触碰220v电源线及电源插座的带点部位。
5.学生实验期间,在连接导线时不允许实验台带电操作,连接完成后经检查无误时再将实验台上电。
完成实验时先将实验台断电后再进行导线的拆除。
6.实验期间要关闭手机等通讯工具,实验室一律禁止携带饮料、食品、禁止吸烟、喧哗、嬉闹、确保实验室卫生、整洁。
7.学生完成实验后,必须关闭所有实验设备的电源。
8.如果实验过程中发生“突发事件”时,不要慌张、应沉着冷静,采取相关的措施。
必要时拨打校内晋级电话(84708110)或拨打110、120报警。
电工电子实验教学中心计算机技术实验室个人签字:题目:基于ZLG7290B、PCF8563的时钟系统设计1 设计要求(1)由PCF8563提供时间参数并由ZLG7290进行显示;(2)能够利用键盘实现时间参数的修改,修改过程可加入“回显”、“闪烁”、“容错”等功能;(3)利用蜂鸣器实现时钟系统的“整点报时”功能;(4)要求程序中有中断环节;2 设计分析及系统方案设计(1)由PCF8563T实时时钟芯片提供时间数据,由ZLG7290B显示电路控制8位数码管显示当前时间,二者通过I2C总线结构与AT89C51单片机相连,SDA 和SCK分别接P1.0和P1.1。
(2)该系统采用双中断结构,时钟输出CLKOUT接INT0,为低优先级,每一秒触发一次中断;键盘中断输出信号INT接INT1,为高优先级,每当有按键时触发中断。
单片机实习报告总结2篇
单片机实习报告总结 (2)单片机实习报告总结 (2)精选2篇(一)在单片机实习中,我学到了很多关于单片机的基本原理和应用知识。
通过实际的操作和编程,我加深了对单片机程序设计的了解,并且掌握了一些基本的电路操作和信号处理技术。
在实习期间,我们完成了多个实验项目,包括LED灯闪烁、按键输入控制LED灯、数码管显示等。
通过这些实验,我熟悉了单片机的引脚功能和输入输出控制方法,并且学会了使用Keil和Proteus等软件进行程序设计和仿真。
在实验中,我遇到了一些问题,比如程序运行错误、电路连接错误等等。
但通过仔细检查和排查,最终成功解决了这些问题,并且从中得到了很多宝贵的经验和教训。
除了实验项目,我们还参观了一些单片机相关的企业和科研机构,并与一些从事单片机研发工作的专业人士进行了交流。
这让我更加了解了单片机在实际应用中的广泛领域,并且对未来的发展前景有了更清晰的认识。
通过这次实习,我不仅学到了专业知识,还培养了一些重要的职业素养,比如团队合作、问题解决能力、沟通能力等等。
这些都对我未来的工作和学习有着重要的影响。
总而言之,这次单片机实习让我受益匪浅,不仅加深了对单片机的理解和掌握,还提升了我在实践中的能力和素养。
我希望在以后的学习和工作中能够继续巩固和应用这些知识和经验,为实现自己的职业目标做出更大的贡献。
单片机实习报告总结 (2)精选2篇(二)单片机实习报告总结本次单片机实习报告总结了我在实习期间学到的知识和经验,对于该领域的的技术和应用有了更深入的了解。
在实习期间,我参与了各种单片机项目的设计和开发,锻炼了自己的实际应用能力。
首先,通过与老师和同学的交流,在实习期间我学会了如何从零开始设计一个单片机系统。
我学会了如何选择合适的单片机型号,了解了不同型号的性能和特点,以及如何根据项目需求选择合适的外设。
在项目的整个开发过程中,我学会了如何使用开发工具,比如KEIL和Proteus,进行程序的开发和仿真测试。
单片机电子实习实验报告
单片机电子实习实验报告一、实习目的和任务本次电子实习的主要目的是通过实际操作,深入理解单片机的工作原理和应用,提高动手能力,并培养团队协作和解决问题的能力。
实习任务是设计和制作一个基于单片机的简易温度监测系统。
二、实习内容和过程1. 理论学习和准备在实习开始前,我们首先学习了单片机的基本原理和编程方法,了解了不同类型的单片机及其应用场景。
同时,我们还学习了温度传感器的工作原理和常见类型。
2. 设计和选型根据实习任务要求,我们设计了简易温度监测系统。
系统主要由单片机、温度传感器、显示模块和控制模块组成。
在选型阶段,我们充分考虑了各种模块的性能、价格和易用性,最终选定了AT89S51单片机、DS18B20温度传感器和LCD1602显示模块。
3. 电路设计和制作在电路设计阶段,我们根据所选模块的引脚和功能,设计了电路图,并进行了仿真测试。
在确认电路设计无误后,我们开始制作电路板。
在制作过程中,我们严格遵守安全操作规程,确保电路板的质量。
4. 编程和调试根据电路设计和功能需求,我们编写了单片机程序。
程序主要包括温度检测、数据处理、显示等功能。
编写完成后,我们进行了程序调试,通过不断优化和修正,确保程序稳定运行。
5. 系统集成和测试将电路板、温度传感器、显示模块等组装成系统后,我们进行了功能测试。
测试过程中,我们发现了部分功能不符合预期,经过分析和修正,最终实现了预期的功能。
三、实习成果和总结通过本次实习,我们成功设计和制作了一个基于单片机的简易温度监测系统。
系统能够实时检测环境温度,并将温度值显示在LCD1602液晶屏上。
此外,我们还通过实习,提高了动手能力、团队协作能力和问题解决能力。
回顾实习过程,我们认识到单片机应用系统的设计和制作并非易事,需要充分考虑各个环节。
在今后的学习和工作中,我们将不断积累经验,努力提高自己在电子工程领域的综合素质。
四、实习体会本次实习让我们深刻体会到理论与实践相结合的重要性。
最新单片机实习报告范文最新4篇
最新单片机实习报告范文最新4篇单片机实训报告篇一实训报告班级:学号:姓名:一、实训目的成本会计是一门实践性很强的学科,不通过实际训练、操作,很难提高实际分析与解决问题的能力。
因此,我们不仅需要掌握成本会计核算的理论与方法,更需要在实践中学会针对特定的企业环境进行准确的成本核算与客观理性的成本分析,为企业管理者提供更加有效的成本信息。
为了让我们能够更好的了解会计在实际工作中的工作内容,以便于实际与理论相结合,也更能够适应社会的要求,了解成本核算在实际工作的重要性,学校开展了为期两周的成本会计实训课程。
学校希望通过这次成本会计实训课程的训练,我们都能够对会计有一个更新更深层次的认识,以便于我们能懂得会计作账的基本流程,从而在今后的工作中具有较强的实际动手操作能力。
这次成本会计实训采用了两个实际案例模拟企业的经营环境,分别涉及了分批和分类两种法,我们需要将分批法、分类法所用的各种费用分配表和明细账结合起来,这不仅能够使我们掌握成本核算基本方法的特点,还进一步理解了产品成本计算的基本原理。
同时还能使我们熟练掌握分批法和分类法核算的会计处理,提高并加快了我们的动手能力,做到理论联系实际,增强感性认识,全面地理解制造企业中成本核算的整个流程。
在实训的过程中还培养了我们认真细致、严谨客观的工作作风和理论联系实践的学习态度。
二、实训过程1、熟悉资料,设置各种帐簿,登记起初余额。
由于我们这次实训课程不用编制总账和财务报表,因此任务量在一定程度上有所减轻。
2、根据经济业务,填制记帐凭证。
并附上原始凭证。
要想登记记账凭证,首先需要做的就是编制会计分录,而在编制会计分录的过程中不得不重视以下几点:(1)各种成本费用的归集与分配。
生产成本的归集与分配是本次实训的重头戏,是中心环节。
成本归集与分配过程实际上就是成本计算过程。
在本次实训中,我们按照成本核算的基本程序,先后对材料费用、职工薪酬、基本生产成本、辅助生产成本、制造费用、完工产品等进行了练习。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大连理工大学单片机实验报告————————————————————————————————作者:————————————————————————————————日期:ﻩ大连理工大学本科设计报告题目: 单总线高精度温度采集系统课程名称:单片机综合设计实验学院(系):信息与通信工程学院专业:电子信息工程班级:电子学号:学生姓名:成绩:2016 年 5 月 5 日一.设计要求1. 启动DS 18B20进行12位高精度环境温度采集2. 利用12864LCD 屏/数码管显示数据3. 具有温度上限声光报警器4. 可以通过键盘设定报警上限值(选)二.设计分析及系统方案设计通过DS 18B20进行小数12位温度转换、采集,通过单片机读取DS18B 20采集到的12位温度值进行二进制到十六进制的转换,利用ZLG7290进行八位数码管显示;利用键盘进入中断来设定报警上限,当温度高于上限时进入报警子程序。
利用SW1进入中断来查看当前设置的温度报警上下限值,利用ZLG7290和数码管来显示。
主程序不断循环采集温度比较,并可随时进入中断来修改温度上下限和查看温度值。
三.系统电路图ZLG7290B SDA SCL /RSTI 2C 总线VCC上拉电阻 5K×28位数码管AT89C51P1.0 P1.1 P1.7四.外围接口模块硬件电路功能描述1.DS18B20:用于测定温度,测量范围-55~+125,分辨率为0.0625℃,数据格式为二进制补码形式。
2.ZLG7290B:用于数码管动态显示驱动,键盘扫描管理。
能够驱动8位共阴极结构的LED数码管或64位独立的LED,同时还能扫描管理多达64个按键的扫描识别,其中八个键可以作为功能键使用。
接口采用I²C结构。
3.蜂鸣器:这里用作报警,为无源蜂鸣器。
五.主程序中主要变量定义变量名称内存单元功能TEMPER_L 36H 存放温度低四位TEMPER_H 35H 存放温度高四位TEMPER34H 转换后的温度值33HBCD形式温度值TEMPER_BCDﻩTEMPER_NUM 60H 温度值缓冲单元WSLA_729070H 7290写控制单元RSLA_7290 71H 7290读控制单元20-27H数码管显示缓冲区28H 存放温度上限值30-31H 存放温度BCD码个位十位六.系统软件中各个子程序的功能描述子程序名称入口参数出口参数功能描述GET_TEMPER无35H,36H读取18B20的温度值READ_18200 35H,36H无向18b20读控制字TEMPER_COV35H,36H 20H,21H温度转换成十进制BCD码形式CF无R3,R4 拆分子程序,拆分送数码管显示INIT_1820 无无温度传感器初始化BUZZER无无蜂鸣器控制发声子程序INT_7290无28H 读取按键外部中断子程序RDKEY无 A 读取键值子程序DELAY 无无延时子程序七.主程序程序流程图8.程序清单(要求打印格式要规范、重要的语句要有必要的注释) SDABIT P1.0SCL BITﻩP1.1ﻩﻩTEMPER_L EQU 36HﻩTEMPER_H EQU35HﻩﻩTEMPER EQU 34Hﻩﻩ;转换后温度值ﻩTEMPER_BCDEQU 33Hﻩﻩ;BCD码温度值TEMPER_NUM EQU60Hﻩ;缓冲单元ﻩWSLA_7290 EQU 70HRSLA_7290 EQU 71HﻩﻩﻩFLAG1 BIT 00HﻩDQ BIT P3.3 ﻩ;总线控制单元ﻩORGﻩ0000HﻩﻩLJMPﻩMAINﻩORG ﻩ0003HLJMPﻩINT_7290ﻩﻩORGﻩﻩ0100HMAIN:ﻩMOV SP,#70Hﻩﻩﻩ;ZLG7290复位CLRﻩP1.7LCALL DELAYﻩﻩSETB P1.7ﻩﻩﻩﻩMOV28H,#1EH ﻩﻩﻩ;温度上限初始值30度ﻩﻩﻩMOVTMOD,#01Hﻩ;模式一,16位计数器ﻩﻩSETBﻩEAﻩﻩﻩ;允许INTO中断ﻩMODE: JBP1.3,SETTMP ﻩﻩ;拨码为0时采集温度;温度采集TMP:ﻩCLR EX0 ﻩﻩﻩﻩMOVﻩ27H,#1FH ﻩﻩ;tLP1:ﻩﻩLCALL GET_TEMPERﻩLCALLﻩTEMPER_COVﻩﻩﻩﻩ;7290显示ﻩMOVﻩR7,#08HﻩMOVﻩR0,#20HMOVﻩR2,#10HﻩMOVﻩR3,#WSLA_7290ﻩLCALLﻩWRNBYTLCALL DELAYﻩﻩﻩMOV A,TEMPERﻩﻩﻩﻩﻩﻩ;判断温度上限28H,R5MOVﻩﻩﻩCLRﻩCCJNE A,28H,relﻩ;此处报警温度为30度rel:ﻩJCﻩNETﻩﻩLCALLﻩBUZZERﻩ;大于等于时蜂鸣器报警ﻩﻩ;闪烁ﻩMOVﻩ28H,#70Hﻩ ;闪烁命令字ﻩMOV 29H,#7FHﻩ;闪烁命令字ﻩﻩMOVﻩR7,#02Hﻩﻩ;设定数据个数ﻩﻩMOVﻩR0,#28Hﻩ;设置源数据首地址MOVﻩR2,#07Hﻩﻩ;设置外围器件内部寄存器首地址MOVﻩR3,#WSLA_7290ﻩ;设定外围器件地址ﻩLCALLﻩWRNBYT ﻩ;调用显示子程序ﻩLCALLﻩDELAYﻩLJMPﻩNEXTTﻩﻩﻩﻩﻩﻩ;设定温度上限SETTMP:SETBﻩEX0ﻩ;7290复位CLR P1.7ﻩLCALLﻩDELAYﻩﻩSETBﻩP1.7ﻩﻩﻩ;显示设定内容ﻩMOVﻩ27H,#0B6H ;SMOV 26H,#9EHﻩ;EﻩMOVﻩ25H,#1FHﻩ;T.ﻩMOV R7,#03HﻩMOV R0,#25HﻩﻩMOVﻩR2,#15HﻩMOV R3,#WSLA_7290ﻩLCALLﻩWRNBYTLCALL DELAYﻩS JMP NEXTTNET:ﻩMOV 28H,#70Hﻩ;不能闪烁29H,#00HﻩMOVﻩﻩMOV R7,#02HMOVﻩR0,#28HﻩMOV R2,#07HﻩMOVﻩR3,#WSLA_7290ﻩLCALL WRNBYTﻩﻩLCALLﻩDELAYNEXTT: CALL DELAYSJMP MODEGET_TEMPER:ﻩSETBﻩDQ ﻩﻩ;定时入口BCD:ﻩLCALLﻩINIT_1820ﻩJBﻩFLAG1,S22ﻩﻩﻩLJMPﻩBCDﻩﻩ;若ds18b20不存在则返回S22: LCALLﻩDELAY1ﻩﻩMOV A,#0CCHﻩﻩ;跳过rom匹配0cch LCALLﻩWRITE_1820ﻩMOVA,#44Hﻩﻩ;发出温度转换命令ﻩLCALLﻩWRITE_1820ﻩLCALLﻩDELAYCBA:ﻩLCALL INIT_1820ﻩJBﻩFLAG1,ABCﻩﻩLJMPﻩCBAABC:ﻩLCALLﻩDELAY1MOV A,#0CCH ﻩ;跳过rom匹配LCALL WRITE_1820ﻩMOVﻩA,#0BEH ﻩ;发出读温度命令ﻩLCALL WRITE_1820LCALLREAD_18200ﻩRETWRITE_1820: ﻩﻩ;写ds18b20程序ﻩﻩMOV R2,#8ﻩCLRﻩCWR1:CLRﻩDQﻩMOV R3,#6 ﻩﻩﻩ;延时24usﻩDJNZﻩR3,$ﻩRRC AﻩMOV DQ,CﻩMOVR3,#23 ;延时60us ﻩDJNZﻩR3,$SETB DQNOPﻩDJNZﻩR2,WR1ﻩﻩSETBﻩDQRETREAD_18200:ﻩﻩﻩ;从1820中读出两个字节温度数据ﻩﻩPUSHﻩ01HﻩMOVﻩR4,#2ﻩﻩMOV R1,#36HRE00:ﻩMOV R2,#8RE01: CLRﻩCSETBﻩDQﻩNOPﻩCLR DQNOPﻩNOPﻩSETBﻩDQﻩﻩMOVﻩR3,#2ﻩﻩDJNZ R3,$ﻩMOV ﻩC,DQMOVﻩﻩR3,#23HﻩDJNZﻩR3,$ﻩﻩRRC AﻩDJNZ R2,RE01ﻩMOVﻩﻩ@R1,ADECﻩﻩR1ﻩDJNZ R4,RE0001HPOPﻩﻩﻩﻩRETU8TEMPER_COV:ﻩﻩﻩﻩﻩ;将读出的数据转换ﻩPUSH DPHﻩﻩPUSH DPLPUSHﻩ02HﻩﻩMOV ﻩA,#0F0HﻩﻩANLﻩA,TEMPER_Lﻩﻩ;舍去小数点后的四位ﻩSWAPﻩAﻩMOV TEMPER_NUM,AﻩMOV A,TEMPER_HﻩANL ﻩA,#07HSWAP AﻩADDﻩA,TEMPER_NUMﻩMOVﻩﻩTEMPER,Aﻩﻩﻩﻩﻩ;转换成十进制数显示MOVﻩB,#10ﻩDIV AB30H,B ;个位MOVﻩﻩMOVﻩB,#10DIV ABﻩﻩMOV31H,B ﻩ;十位ﻩANLA,#0FH ;百位ﻩﻩSWAPﻩAﻩADDﻩA,BﻩMOVﻩTEMPER_BCD,AﻩLCALLCF2;拆分查表ﻩMOVﻩ25H,R3ﻩMOV 26H,R4MOVﻩA,30HﻩANLﻩA,#0FHﻩLCALLCFMOV 24H,R3ﻩ;处理四位小数位数据ﻩMOV A,TEMPER_LﻩANL A,#0FH ;取低四位数据ﻩﻩMOV B,#02HﻩﻩMUL AB ﻩﻩ;字节转为字ﻩﻩMOV DPTR,#NUMSEGﻩMOVC A,@A+DPTRﻩMOV T EMPER_BCD,AﻩLCALLﻩCF2ﻩMOV 22H,R3MOV 23H,R4MOV A,TEMPER_LﻩANLA,#0FHﻩMOVﻩB,#02HﻩMULﻩABﻩINC AﻩﻩMOVC A,@A+DPTRﻩMOVﻩTEMPER_BCD,AﻩLCALLﻩCF2MOVﻩ20H,R321H,R4ﻩMOVﻩﻩ02HﻩPOPﻩﻩPOPDPLﻩPOPﻩDPHRET;--------------小数部分查表------------------------NUMSEG: DW 0000H,0625H,1250H,1875H,2500H,3125H,3750H,4375H DW5000H,5625H,6250H,6875H,7500H,8125H,8750H,9375Hﻩ;--------------------------------------------------;--------------拆分显示整数子程序------------------CF:ﻩﻩPUSHﻩ02HﻩPUSHﻩDPHPUSH DPLﻩMOV DPTR,#LEDSEGﻩﻩMOV R2,TEMPER_BCDﻩﻩANLﻩA,#0FHMOVCﻩA,@A+DPTR ﻩ;查表得字形码ﻩMOVﻩR3,AﻩMOVﻩA,R2ﻩﻩSWAP AﻩﻩANL A,#0FHMOVCﻩA,@A+DPTRMOV R4,AINCﻩR3 ﻩ;加上小数点POPﻩDPLﻩPOP DPHﻩPOP 02HﻩﻩRETﻩ;-----------------------------------------------;--------------拆分显示小数子程序------------------02HCF2:ﻩPUSHﻩﻩPUSH DPHﻩPUSHﻩDPLﻩPUSH ACCﻩMOV DPTR,#LEDSEGﻩﻩMOVﻩR2,TEMPER_BCDﻩMOVﻩA,R2ﻩANL A,#0FHﻩﻩMOVC A,@A+DPTRﻩﻩMOV R3,AMOVA,R2ﻩSWAPﻩAﻩANLﻩA,#0FHMOVCﻩA,@A+DPTRﻩMOVﻩR4,Aﻩ;加上小数点ﻩPOPﻩACCﻩﻩPOP DPLPOPDPH02HﻩﻩPOPﻩRETﻩ;-----------------------------------------------;-----------------led字型码---------------------LEDSEG: DB 0FCH,60H,0DAH,0F2H,66H,0B6H,0BEH,0E4HDBﻩ0FEH,0F6H,0EEH,3EH,9CH,7AH,9EH,8EH;----------------------------------------------- INIT_1820:ﻩSETBﻩDQﻩﻩNOPCLR DQﻩMOVﻩR0,#80HTSR1:ﻩDJNZ R0,TSR1ﻩ;延时300usﻩﻩSETB DQMOVﻩR0,#25Hﻩ;96usTSR2: DJNZﻩR0,TSR2ﻩJNBﻩDQ,TSR3LJMP TSR4 ﻩﻩﻩ;延时TSR3:ﻩSETBﻩFLAG1 ﻩ;致标志位ﻩﻩLJMPﻩTSR5ﻩﻩﻩﻩ;ds18b20存在TSR4: CLRﻩFLAG1ﻩﻩﻩ;清标志位ﻩﻩLJMPﻩTSR7ﻩﻩ;ds18b20不存在TSR5: MOVﻩR0,#06BHﻩ;延时200usTSR6: DJNZﻩR0,TSR6TSR7: SETBﻩDQRETDELAY1: MOVR7,#20H;80us延时ﻩﻩDJNZ R7,$ﻩﻩRET;---------------蜂鸣器驱动子程序-------------- BUZZER:PUSH 07HMOVﻩR7,#00HMOVﻩTL0,#33Hﻩ;设置定时0.5us初值ﻩMOV TH0,#0FEHSETB TR0ﻩﻩﻩ;启动t0WAIT:ﻩJNBﻩTF0,$ﻩCLR TF0ﻩMOV TL0,#33HMOV TH0,#0FEHﻩCPLP1.2DJNZﻩR7,WAITﻩCLR T R0SETBﻩP1.207HﻩPOPﻩRET;--------------------------------------------- ;-------------外部中断服务程序----------------INT_7290:PUSHﻩ00HPUSHﻩ01HPUSHﻩ02H03HPUSHﻩ04HﻩPUSHﻩPUSH07HﻩPUSH ACCPUSHﻩPSWSJMPﻩRD1ﻩRD1:JBﻩP3.2,$ﻩﻩ;以查询方式等待下一次按键操作SWAP ALCALLﻩRDKEYﻩCJNE A,#0AH,WAITT ;容错功能调整WAITT: JNC ﻩRD1ﻩﻩMOVﻩﻩTEMPER_BCD,AﻩLCALLCF2MOV B,#0AHﻩﻩMULﻩﻩABﻩMOV ﻩR5,AMOVﻩﻩ23H,R3ﻩMOVﻩﻩR7,#01HﻩMOV ﻩR0,#23HﻩMOV ﻩR2,#13HMOVﻩR3,#WSLA_7290ﻩLCALLﻩWRNBYTKEY2:ﻩJBﻩP3.2,$ ﻩﻩ;以查询方式等待下一次按键操作ﻩLCALL RDKEYﻩCJNEﻩA,#0AH,WAITT2WAITT2:ﻩJNC KEY2ﻩMOVﻩTEMPER_BCD,AﻩLCALLﻩCF2ﻩﻩMOVﻩA,R5ﻩADDﻩA,TEMPER_BCDﻩMOV R5,AﻩMOV ﻩ22H,R3MOV21H,#9CHﻩﻩ;CﻩMOV R7,#02HﻩMOVﻩR0,#21HﻩMOVﻩﻩR2,#11HﻩﻩMOV R3,#WSLA_7290ﻩLCALLﻩWRNBYTﻩ;确定键COMF: JB P3.2,$ﻩ;等待确认键LCALLﻩRDKEYﻩCJNE A,#0FH,COMFﻩﻩMOV 28H,R5ﻩ;上限值放入28h中DOWN:ﻩ;7290复位CLR P1.7LCALLﻩDELAYSETBﻩP1.7CLR IE0 ﻩ;必须清标志POPPSWPOP ACCPOP 07H04HPOPﻩPOPﻩ03HPOPﻩ02HPOP 00HRETI;---------------------------------------------;------------读取键值子程序(键值保存在A中)---RDKEY:MOVﻩR0,#1FHﻩMOVﻩR7,#01HﻩﻩMOVﻩR2,#01HﻩﻩMOVﻩR3,#WSLA_7290ﻩMOVR4,#RSLA_7290ﻩLCALLﻩRDADDﻩMOVﻩA,1FHﻩDECﻩAﻩRET;---------------------------------------------- ;------------延时子程序-----------------------DELAY: PUSHﻩ00Hﻩ;延时子程序ﻩPUSH01HﻩMOVR1,#00LP:ﻩMOVﻩR1,#00HDJNZ R1,$DJNZ R0,LPﻩﻩPOP 01HﻩPOP 00HﻩRET;---------------------------------------------(I2C子程序省略)九.系统调试运行结果说明、分析所出现得问题,设计体会与建议硬件使用ZLG51单片机开发平台,软件使用KEil2软件进行程序的编写编译以及调试。