单片机实习总结报告.docx
- 文档编号:10195887
- 上传时间:2023-05-24
- 格式:DOCX
- 页数:45
- 大小:308.88KB
单片机实习总结报告.docx
《单片机实习总结报告.docx》由会员分享,可在线阅读,更多相关《单片机实习总结报告.docx(45页珍藏版)》请在冰点文库上搜索。
单片机实习总结报告
专业综合实习总结
专业班级:
学生学号:
学生姓名:
指导教师:
实习时间:
机电工程学院
一、实习目的和意义
1、实习目的:
(1)利用单片机小系统实习板,掌握电路原理图;
(2)通过对系统板的测试,了解系统板的工作原理及性能,掌握元器件及系统故障的排除方法;
(3)通过单片机系统的调试、程序编制及运行,掌握单片机系统的工作原理、开发方法和操作方法。
2、实习意义:
通过本实习不但可以掌握单片机软、硬件的综合调试方法,而且可以熟练掌握电路原理图,激发对单片机智能性的探索精神,提高学生的综合素质,培养学生应用单片机实现对工业控制系统的设计、开发与调试的能力。
在制作学习过程中,不但可以掌握软、硬件的综合调试方法,而且可以使学生对单片机智能性产生强烈的欲望。
达到最大限度地掌握微机应用技术,软件及接口设计和数据采集与处理的技能,培养电综合实践素质的目的。
二、实习内容
1.熟悉“单片机课程实习”电路板,领会、掌握该电路板的设计原理及硬件布局。
2.掌握单片机技术应用平台keil软件的学习。
3.借助平台软件,学习开发板的使用,按照要求编制、调试出正确的汇编语言程序。
4.学习适合本开发平台软件STC-ISP的在线单片机烧录。
5.针对实习电路板的功能,编制、调试、编译汇编语言程序,下载烧录并在实验板上运行,或利用软件ISIS7Professional进行软件仿真。
实现的功能:
1.led显示模块:
单向循环流水led显示、双向循环流水led显示、花样流水灯的显示,使用查表方法编制任意点亮历程的实现,使用软件延时;
2.数码管显示模块:
一位静态数码管显示0到9和0到F、二位静态数码管显示0到99、三位静态数码管显示0到999、四位静态数码管显示0到9999;阴极和阳极四位动态数码管显示;74LS驱动4位静态数码管显示;利用74HC595四位静态数码管显示;使用串行静态显示和动态扫描显示两种方式;
3.键盘模块:
利用4×4矩阵键盘按键对应置数显示“0~F”;使用键盘的行列扫描方式;
三、硬件介绍
(一)LED显示模块:
图1流水灯显示
图2键盘控制循环灯
(二)数码管显示模块:
图31位静态数码管显示
图44位静态数码管显示
图54位动态数码管显示
图6独立键盘加减清零数码管显示
图74位74LS驱动静态数码管显示
图84位74HC595静态显示
图90到F矩阵键盘
四、软件程序流程图
1、流水灯循环左移右移程序框图:
否
是
是
否
2、0到F一位静态显示程序框图:
3、0到9一位静态显示程序框图:
4、动态数码显示程序框图:
5、4×4矩阵矩阵键盘数码显示程序框图:
主程序图:
判别是否有键按下程序:
五、实习的心得体会
回顾起此次课程设计,感觉受益匪浅,从拿到题目到完成整个编程,从理论到实践,学到很多很多的课堂理论中没学到过的东西,不仅对键盘的识别技术这一章节的知识点有了深刻的认识,而且对这学期开设的单片机这门课程有了更全面的了解,尤其是在学习使用proteus软件片编程和仿真时收获良多。
通过这次单片机课程设计,还使我懂得了实践的重要性。
同时在程序调试的过程中提高自己的发现问题、解决问题、实际动手和独立思考的能力。
本次单片机实习我们一共完成了三个模块的程序设计,包括:
led显示模块、数码管显示模块和键盘模块。
分别实现了流水灯的循环点亮控制、数码管的静态和动态计数显示,还有矩阵键盘按键控制数码管显示的程序设计。
然后我们分别用protues系统仿真软件对各个模块进行了模拟仿真,用keil软件编制了汇编语言程序,验证了我们所设计的程序。
当然,这其中也有很多问题,第一、不够细心比如由于粗心大意焊错了线,由于对课本理论的不熟悉导致编程出现错误。
第二,是在学习态度上,这次课设是对我的学习态度的一次检验。
对于这次单片机综合课程实习,我的第一大心得体会就是作为一名工程技术人员,要求具备的首要素质绝对应该是严谨。
我们这次实习所遇到的多半问题多数都是由于我们不够严谨。
第三,在做人上,我认识到,无论做什么事情,只要你足够坚强,有足够的毅力与决心,有足够的挑战困难的勇气,就没有什么办不到的。
通过这次单片机实习,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。
创新可以是在原有的基础上进行改进,使之功能不断完善,成为真己的东西。
这次课程设计能顺利的完成,除了我们的努力外,当然也离不开指导老师申老师的辛勤指导,致使我在设计的过程中学到了很多实用性的知识。
同时,对给过我帮助的所有同学和各位指导老师表示忠心的感谢!
附录:
程序清单
P1口闪亮:
ORG0000H
LOOP:
MOVP1,#01H
ACALLDELAY
MOVP1,#00H
ACALLDELAY
SJMPLOOP
DELAY:
MOVR7,#250
DEL1:
MOVR6,#250
DJNZR6,$
DJNZR7,DEL1
RET
END
流水灯循环左移右移:
方法一:
ORG0000H
MOVA,#01H
LOOP:
MOVP1,A
MOVR5,#10
LOOP1:
ACALLDELAY
DJNZR5,LOOP1
RLA
JBACC.7,LOOP2
SJMPLOOP
LOOP2:
MOVP1,A
MOVR5,#10
LOOP3:
ACALLDELAY
DJNZR5,LOOP3
RRA
JBACC.0,LOOP
SJMPLOOP2
DELAY:
MOVR7,#250
DEL1:
MOVR6,#250
DJNZR6,$
DJNZR7,DEL1
RET
END
方法二:
ORG0000H
MOVA,#80H
LOOP:
RLA
MOVP1,A
ACALLDELAY
CJNEA,#80H,LOOP
LOOP1:
RRA
MOVP1,A
ACALLDELAY
CJNEA,#01H,LOOP1
SJMPLOOP
DELAY:
MOVR7,#0FFH
DELAY1:
MOVR6,#0FFH
DELAY2:
MOVR5,#03H
DELAY3:
DJNZR5,DELAY3
DJNZR6,DELAY2
DJNZR7,DELAY1
RET
END
方法三:
ORG0000H
MOVA,#80H
MOVR0,#08H
LOOP:
RLA
MOVP1,A
ACALLDELAY
DJNZR0,LOOP
MOVR0,#07H
LOOP1:
RRA
MOVP1,A
ACALLDELAY
DJNZR0,LOOP1
MOVR0,#07H
SJMPLOOP
DELAY:
MOVR7,#0FFH
DELAY1:
MOVR6,#0FFH
DELAY2:
MOVR5,#03H
DELAY3:
DJNZR5,DELAY3
DJNZR6,DELAY2
DJNZR7,DELAY1
RET
END
方法四:
ORG0000H
MOVA,#00H
SETBCY
LOOP:
RLCA
JCLOOP1
MOVP1,A
ACALLDELAY
SJMPLOOP
LOOP1:
RRCA
JCLOOP
MOVP1,A
ACALLDELAY
SJMPLOOP1
DELAY:
MOVR7,#0FFH
DELAY1:
MOVR6,#0FFH
DELAY2:
MOVR5,#03H
DELAY3:
DJNZR5,DELAY3
DJNZR6,DELAY2
DJNZR7,DELAY1
RET
END
从中间向两边,再从两边向中间循环点亮:
ORG0000H
STAR:
MOVR0,#00H
MOVR1,#07
MOVA,R0
MOVDPTR,#TAB
LOOP:
MOVCA,@A+DPTR
MOVP1,A
MOVR5,#10
LOOP1:
ACALLDEL
DJNZR5,LOOP1
INCR0
MOVA,R0
DJNZR1,LOOP
SJMPSTAR
DEL:
MOVR7,#200
DEL1:
MOVR6,#250
DJNZR6,$
DJNZR7,DEL1
RET
TAB:
DB18H,24H,42H,81H,42H,24H,18H
END
键盘控制流水灯循环点亮:
ORG0000H
AJMPMAIN
ORG0003H
AJMPET
ORG0030H
MAIN:
MOVSP,#60H
SETBEA
SETBIT0
SETBEX0
CLRC
MOVA,#0FFH
MOVP2,A
LCALLDEL
LOOP:
JNB21H.1,L;检测标志
RRCA;右移动
MOVP2,A
AJMPDEE
L:
RLCA;左移动
MOVP2,A
DEE:
LCALLDEL
AJMPLOOP
ET:
CLREA
PUSHACC
PUSHPSW
LCALLDELAY
MOVA,#0FFH
MOVP1,A
NOP
NOP
MOVA,P1;读键值
ANLA,#0F0H
CJNEA,#0F0H,NEXT1
AJMPNEXT
NEXT1:
JBACC.5,NEXT2
CLR21H.1;按键后产生标志
AJMPNEXT
NEXT2:
JBACC.6,NEXT
SETB21H.1;按键后产生标志
NEXT:
SETBEA
POPPSW
POPACC
HHH:
RETI
DEL:
MOVR6,#250
DEL11:
MOVR5,#250
DJNZR5,$
DJNZR6,DEL11
RET
DELAY:
MOVR6,#10
DEL1:
MOVR5,#200
DEL2:
DJNZR5,$
DJNZR6,DEL1
RET
END
花样流水灯:
ORG0000H
START:
MOVR0,#00H
MOVP1,#00H
LOOP:
MOVA,R0
ADDA,#0CH
MOVCA,@A+PC
CJNEA,#01H,XSH
SJMPSTART
XSH:
MOVP1,A
ACALLDELAY
INCR0
SJMPLOOP
DB0FFH,00H,0FFH,00H,0FFH,00H,0FFH,00H,0FH,0F0H,0FH,0F0H,0FH,0F0H,0FH
DB0F0H,0FH,0F0H,0AAH,55H,0AAH,55H,0AAH,55H,0AAH,55H,0AAH,55H,81H,42H
DB24H,18H,24H,42H,81H,42H,24H,18H,24H,42H,81H,42H,24H,18H,24H,42H,81H
DB42H,24H,18H,24H,42H,81H,03H,06H,0CH,18H,30H,60H,0C0H,60H,30H,18H,0CH
DB06H,03H,06H,0CH,18H,30H,60H,0C0H,60H,30H,18H,0CH,06H,03H,01H
DELAY:
MOVR7,#0FFH
DELAY1:
MOVR6,#0FFH
DELAY2:
MOVR5,#03H
DELAY3:
DJNZR5,DELAY3
DJNZR6,DELAY2
DJNZR7,DELAY1
RET
END
1位静态数码显示:
ORG0000H
MOVR0,#0FFH
DISPLY:
INCR0
CJNER0,#0AH,DISPLY1
MOVR0,#0FFH
SJMPDISPLY
DISPLY1:
MOVA,R0
ADDA,#06H
MOVCA,@A+PC
MOVP0,A
ACALLDELAY
SJMPDISPLY
DTAB:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,7FH,0BFH
DELAY:
MOVR7,#0FFH
DELAY1:
MOVR6,#0FFH
DELAY2:
MOVR5,#03H
DELAY3:
DJNZR5,DELAY3
DJNZR6,DELAY2
DJNZR7,DELAY1
RET
2位静态数码显示:
ORG0000H
MOVR0,#0FFH
MOVR1,#00H
DISPLY:
INCR0
CJNER0,#0AH,DISPLY1
INCR1
CJNER1,#0AH,DISPLY2
MOVR0,#0FFH
MOVR1,#00H
MOVP0,#0FFH
AJMPDISPLY
DISPLY2:
MOVA,R1
ADDA,#10H
MOVCA,@A+PC
MOVP0,A
MOVR0,#0FFH
AJMPDISPLY
DISPLY1:
MOVA,R0
ADDA,#06H
MOVCA,@A+PC
MOVP2,A
ACALLDELAY
AJMPDISPLY
DTAB:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,7FH,0BFH
DELAY:
MOVR7,#0FFH
DELAY1:
MOVR6,#0FFH
DELAY2:
MOVR5,#03H
DELAY3:
DJNZR5,DELAY3
DJNZR6,DELAY2
DJNZR7,DELAY1
RET
END
3位静态数码显示:
ORG0000H
START:
MOVR0,#0FFH
MOVR1,#00H
MOVR2,#00H
MOVP3,#0FFH
MOVP2,#0FFH
MOVP0,#0FFH
DISPLY:
INCR0
CJNER0,#0AH,DISPLY1
MOVR0,#0FFH
INCR1
CJNER1,#0AH,DISPLY2
MOVR1,#00H
MOVP2,#0C0H
INCR2
CJNER2,#0AH,DISPLY3
SJMPSTART
DISPLY3:
MOVA,R2
ADDA,#16H
MOVCA,@A+PC
MOVP0,A
SJMPDISPLY
DISPLY2:
MOVA,R1
ADDA,#0EH
MOVCA,@A+PC
MOVP2,A
SJMPDISPLY
DISPLY1:
MOVA,R0
ADDA,#06H
MOVCA,@A+PC
MOVP3,A
ACALLDELAY
SJMPDISPLY
DTAB:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,7FH,0BFH
DELAY:
MOVR7,#0FFH
DELAY1:
MOVR6,#0FFH
DELAY2:
MOVR5,#03H
DELAY3:
DJNZR5,DELAY3
DJNZR6,DELAY2
DJNZR7,DELAY1
RET
END
4位静态数码显示:
ORG0000H
START:
MOVR0,#0FFH
MOVR1,#00H
MOVR2,#00H
MOVR3,#00H
MOVP1,#0FFH
MOVP3,#0FFH
MOVP2,#0FFH
MOVP0,#0FFH
DISPLY:
INCR0
CJNER0,#0AH,DISPLY1
MOVR0,#0FFH
INCR1
CJNER1,#0AH,DISPLY2
MOVR1,#00H
MOVP3,#0C0H
INCR2
CJNER2,#0AH,DISPLY3
MOVR2,#00H
MOVP2,#0C0H
INCR3
CJNER3,#0AH,DISPLY4
SJMPSTART
DISPLY4:
MOVA,R3
ADDA,#1EH
MOVCA,@A+PC
MOVP0,A
SJMPDISPLY
DISPLY3:
MOVA,R2
ADDA,#16H
MOVCA,@A+PC
MOVP2,A
SJMPDISPLY
DISPLY2:
MOVA,R1
ADDA,#0EH
MOVCA,@A+PC
MOVP3,A
SJMPDISPLY
DISPLY1:
MOVA,R0
ADDA,#06H
MOVCA,@A+PC
MOVP1,A
ACALLDELAY
SJMPDISPLY
DTAB:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,7FH,0BFH
DELAY:
MOVR7,#0AH
DELAY1:
MOVR6,#0FFH
DELAY2:
MOVR5,#03H
DELAY3:
DJNZR5,DELAY3
DJNZR6,DELAY2
DJNZR7,DELAY1
RET
END
74HC595四位稳定显示:
1)最大数为9999的计数器
ORG0000H
AJMPMAIN
ORG000BH
AJMPCRT0
ORG0020H
MAIN:
MOVR1,#33H
MOVR2,#04H
CLEAR:
MOV@R1,#33H
DECR1
DJNZR2,CLEAR
MOVSP,#60H
MOVTMOD,#01H
MOVTH0,#3CH
MOVTL0,#0B0H
SETBEA
SETBET0
SETBTR0
MOVR7,#1
MOVDPTR,#DTAB
LOOP:
MOVR1,#33H
MOVR2,#04H
MOVR3,#08H
MOVR4,#01H
LOOP1:
MOVA,R3
MOVP2,A
RRA
MOVR3,A
MOVA,@R1
CJNER4,#00H,MODE
XSH:
LCALLDIS
LCALLDEL
DECR1
DJNZR2,LOOP1
AJMPLOOP
MODE:
CJNEA,#00H,FH
MOVR4,#01H
MOVA,#0AH
SJMPXSH
FH:
MOVR4,#00H
SJMPXSH
CRT0:
DJNZR7,RRR
MOVR7,#1
INC30H
MOVR0,30H
CJNER0,#0AH,RRR
MOV30H,#00H
INC31H
MOVR0,31H
CJNER0,#0AH,RRR
MOV31H,#00H
INC32H
MOVR0,32H
CJNER0,#0AH,RRR
MOV32H,#00H
INC33H
MOVR0,33H
CJNER0,#0AH,RRR
MOV33H,#00H
RRR:
MOVTH0,#3CH
MOVTL0,#0B0H
RETI
DIS:
MOVCA,@A+DPTR
MOVP0,A
RET
DEL:
MOVR6,#20
DEL1:
MOVR5,#150
DEL2:
DJNZR5,$
DJNZR6,DEL1
RET
DTAB:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH
DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,7FH,0BFH
END
2)最高位为零时,最高位不显示
ORG0000H
AJMPMAIN
ORG000BH
AJMPCRT0
ORG0020H
MAIN:
MOVR1,#33H
MOVR2,#04H
CLEAR:
MOV@R1,#00H
DECR1
DJNZR2,CLEAR
MOVSP,#60H
MOVTMOD,#01H
MOVTH0,#3CH
MOVTL0,#0B0H
SETBEA
SETBET0
SETBTR0
MOVR7,#1
MOVDPTR,#DTAB
LOOP:
MOVR1,#33H
MOVR2,#04H
MOVR3,#08H
LOOP1:
MOVA,R3
MOVP2,A
RRA
MOVR3,A
MOVA,@R1
LCALLDIS
LCALLDEL
DECR1
DJNZR2,LOOP1
AJMPLOOP
CRT0:
DJNZR7,RRR
MOVR7,#1
MOVR0,#30H
MOVR4,04H
CON:
INC@R0
CJNE@R0,#0AH,RRR
MOV@R0,#00H
INCR0
DJNZR4,CON
RRR:
MOVTH0,#3CH
MOVTL0,#0B0H
RETI
DIS:
MOVCA,@A+DPTR
MOVP0,A
RET
DEL:
MOVR6,#20
DEL1:
MOVR5,#150
DEL2:
DJNZR5,$
DJNZR6,DEL1
RET
DTAB:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH
DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,7FH,0BFH
END
3)最大数为256的计数器
DATDATA30H
BWDATA31H
SHWDATA32H
GWDATA33H
O
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 实习 总结报告
![提示](https://static.bingdoc.com/images/bang_tan.gif)