1
图3-3硬件焊接图2
物联网、通信专业 单片机课程设计 可控流水灯设计
3.4 软件设计
软件设计部分的方法与函数嵌套、调用函数的方法。要实现按键控制数码管显示数字,还要在显示对应的数字时使8个显示相应的流水灯,所以在P1.5口出现一个低电平时就会被调到其他的函数区域执行,点亮数码管,是数码管显示出相应的数字,然后依然是通过调用函数的方法,使LED灯点亮,课题的要求是显示流水灯,要有一亮一灭的效果,所以在此函数里放一个循环,一个循环左移,这样也就产生了流水灯的效果,接着下面就是这样循环下去,最后按复位键复位。
4 代码编写
MAIN: FS1:
MOV P0 ,A LOOP1:
LCALL WAIT FS2: LOOP2:
ORG 0000H SJMP MAIN
//MOV A,P1 ;读入P1口状态 //ANL A,#20H ;屏蔽无效位 MOV P0 ,#0FFH LCALL WAIT MOV A,#0F9H ;数码管显示数字1 MOV R2 ,#08H MOV A,#0FEH MOV P2 ,A LCALL DELAY RL A
DJNZ R2 ,LOOP1
MOV A,#0A4H
MOV P0 ,A ;数码管显示数字2 MOV R2 ,#08H MOV A,#0FEH MOV P2 ,A
物联网、通信专业 单片机课程设计 可控流水灯设计
RL A FS3: LOOP3:
LCALL WAIT FS4: LOOP4:
RL A
LCALL DELAY RL A
DJNZ R2 ,LOOP2
LCALL WAIT MOV A,#0B0H MOV P0 ,A ;显示3 MOV R2 ,#08H MOV A,#0FEH MOV P2 ,A LCALL DELAY RL A RL A RL A
DJNZ R2 ,LOOP3
MOV A,#99H MOV P0 ,A ;显示4 MOV R2 ,#08H MOV A,#0FEH MOV P2 ,A LCALL DELAY RL A
RL A RL A
DJNZ R2 ,LOOP4 LCALL WAIT FS5:
MOV A,#92H
物联网、通信专业 单片机课程设计 可控流水灯设计
MOV P0 ,A ;显示5
LOOP5: DELAY:
DELAY1: DELAY0:
MOV R2 ,#08H MOV A,#0FEH MOV P2 ,A
LCALL DELAY RL A RL A RL A RL A RL A
DJNZ R2 ,LOOP5 LJMP MAIN
MOV A,P1 ;读入P1口状态 ANL A,#10H
CJNE A,#00H ,DELAY2 ;S2是否按下MOV R7 ,#0FFH ;1s
MOV R6 ,#0FFH NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP
DJNZ R6 ,DELAY0 DJNZ R7 ,DELAY1
物联网、通信专业 单片机课程设计 可控流水灯设计
WAIT: FDG: LET: LEFT:
DELAY2: MOV A ,P1
MOV A,P1 ANL A,#20H
CJNE A,#20H ,LET ;判断S1是否按下 JMP FDG LCALL DE MOV A,P1 ANL A,#20H CJNE A,#20H ,LEFT JMP FDG MOV A,P1 ANL A,#20H CJNE A,#20H ,LEFT RET
;判断S1是否按下
;读入P1口状态 ;读入p1口状态
ANL A ,#40H
CJNE A,#00H ,ERR ;判断S3是够按下
DELAY3: DELAY4:
MOV R7 ,#0FFH MOV R6 ,#0FFH
;延时1S
NOP NOP NOP NOP NOP NOP NOP NOP
物联网、通信专业 单片机课程设计 可控流水灯设计
DE : LAP6: ERR:
NOP
DJNZ R6 ,DELAY4 DJNZ R7 ,DELAY3 RET
MOV R7 ,#28H MOV R6 ,#64H DJNZ R6 ,$ DJNZ R7,LAP6 RET
RET
END
5 系统调试
将编写好的汇编语言代码用Keil进行编译后,修改出现的错误,待无错误后将程序下载到单片机中,运行可控流水灯系统。
物联网、通信专业 单片机课程设计 可控流水灯设计
总 结
这次课程设计是一周的时间,虽说时间不短,但是这之间完成的任务量还是挺大的,要绘制protel原理图,然后对照着原理图焊接,然后写代码,调试在运行。所以这个礼拜时间上都是很紧凑,同时也很充实。
首先在硬件电路上,有一个正确的protel原理图是很关键的,一切硬件包括代码都是依照这个,老师在这个方面帮助了我们很大的忙,帮我们预先设计的很多的电路,以及电阻、电容的取值大小,然后有不懂的也给我们细心讲解,很感谢老师,上午原理图基本上就成型了,接着就是焊接电路,焊接电路时要格外的细心,不能焊错引脚,然后还要小心,电烙铁很烫,不能烫伤。焊接电路时,在布局上也是一大讲究,要充分考虑电路板的大小与待焊接原件的大小,该紧凑的地方要紧凑,然后整体分布要均匀,要能体现一个一个的功能模块,这样在电路发生错误的情况下也便于找出错误的所在,还有一点好处是接线时也很方便。
上面是说的硬件方面,下面说说软件代码不是太成功,主要原因是对单片机的硬件资源还不是太透彻的理解,代码方面要注意的是也要实现功能模块化,以函数与调用函数的形式体现出来,当然第一步是要能对单片机汇编语言很理解,然后怎么去调用函数,实现功能。
软硬件都完成后就是整合,单片机是软硬件的结合,我在这个过程中出现过很多的错误,主要是硬件方面,有的是电容正负接反了,有的是线掉了。这个过程真正意义上找错误,自我完善的过程。另外就是在这个过程中与同学加强合作很重要,这样效率很高,然后要勤于问老师,这样也会进步的很快。
物联网、通信专业 单片机课程设计 可控流水灯设计
致 谢
这一次,能够在一周的时间里顺利的完成此次单片机的课程设计,首先最想要感谢的是我的指导老师,戴俊峰老师,老师在一周时间里,耗费许多的精力与体力对我们进行悉心的指导与帮助,在这一周时间里,在焊接电路、调试程序时,老师总能陪在我们身旁,细心的为我们解答遇到的问题,帮我们解决困难。在此衷心的感谢老师为我们做出的牺牲!
此外感谢淮阴工学院和计算机工程学院为我们提供很好的实践机会。 也要感谢实验室的工作人员为我们提供了舒适的实验环境,还要感谢学校的图书馆为我们提供了丰富的书籍资料以方便我们借阅,在此过程中我遇到许多问题,通过查阅书籍得以解决,谢谢那些优秀书籍的作者,感谢你们的指导!在此次课程设计中得到了同学的帮助,能够与他们一起探索,一起研究解决问题,在互帮互助中我找到自己的不足,在此向帮助过我的同学表示感谢!
课程设计是我们实践的一个重要经历,是我们锻炼自己实践能力的关键环节,一周的课程设计需要许多方面的帮助才能完成,在此再次向所有帮助过我的人表示感谢!
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说高考高中物联网、通信专业 单片机课程设计 可控流水灯设计(2)在线全文阅读。
相关推荐: