基于单片机at89c51控制的花样调速流水灯课题设计报告

上传人:Bod****ee 文档编号:47204734 上传时间:2018-06-30 格式:DOC 页数:26 大小:1.37MB
返回 下载 相关 举报
基于单片机at89c51控制的花样调速流水灯课题设计报告_第1页
第1页 / 共26页
基于单片机at89c51控制的花样调速流水灯课题设计报告_第2页
第2页 / 共26页
基于单片机at89c51控制的花样调速流水灯课题设计报告_第3页
第3页 / 共26页
基于单片机at89c51控制的花样调速流水灯课题设计报告_第4页
第4页 / 共26页
基于单片机at89c51控制的花样调速流水灯课题设计报告_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《基于单片机at89c51控制的花样调速流水灯课题设计报告》由会员分享,可在线阅读,更多相关《基于单片机at89c51控制的花样调速流水灯课题设计报告(26页珍藏版)》请在金锄头文库上搜索。

1、单片机课程设计宁波技师学院课课 程程 设设 计计 报报 告告论文题目 花样调速流水灯 专业班级 学生姓名 学 号 指导教师 宁波技师学院电气技术系宁波技师学院电气技术系20132013 年年 9 9 月月单片机课程设计1目 录第 1 章 系统设计 .11.1 数码管显示方案 .11.2 按键输入方案 .1第 2 章 硬件电路设计 .22.1 电路原理.22.2 系统工作流程.2第 3 章 软件设计 .33.1 系统资源分配.43.2 软件模块设计.6第四章 调试94.1 正常现象104.2 出现的故障11第 5 章 总结 .7参考文献 .7附录 1 硬件电路图 .8附录 2 软件代码 .14单

2、片机课程设计2第 1 章 系统设计1.1 数码管显示方案通常数码管显示有两种方式:动态显示和静态显示。静态显示的优点是程序简单、显示亮度有保证、单片机 CPU 的开销小,节约CPU 的工作时间。但占用 I/O 口线多,每一个 LED 都要占用一个 I/O 口,硬件开销大,电路复杂。需要几个 LED 就必须占用几个并行 I/O 口,比较适用于 LED 数量较少的场合。当然当 LED 数量较多的时候,可以使用单片机的串行口通过移位寄存器的方式加以解决,但程序编写比较复杂。LED 动态显示硬件连接简单,但动态显示扫描方式需要占用 CPU 较多的时间,在单片机没有太多实时测试任务的情况下可以采用。本系

3、统需要采用 4 位 LED 数码管来显示流水灯闪烁方式的序号,故本系统选择动态显示方案。1.2 键盘输入方案单片机的键盘结构可以采用独立式按键和矩阵式键盘两种。独立式按键指直接用 I/O 口线构成单个按键电路。可在系统中键较少时使用。在按键比较多的时候可采用矩阵式键盘。本系统要设置 3 个键,其中 1 个键用来开启整个流水灯系统,另外 2 个键分别控制流水灯的闪烁方式和闪烁速度。单片机课程设计3第 2 章 硬件电路设计2.1 电路原理本硬件的核心是 MCS-51 单片机,我们选用 AT89C51。因无需扩展外部 RAM。系统采用 4 位共阳极数码管,用来显示各种闪烁方式的序号。系统采用 3 个

4、按键控制,一个为启动键,当按下启动按钮整个流水灯系统启动。系统在 P1.0 到 P1.8 上接了 8 个发光二极管,在按一下启动键的时,P1.0 的二极管亮,此时从 P1.0 到 P1.8 的二极管依次闪烁:1 若此时按功能键 2,流水灯将 2 个 2 个,3 个 3 个或 4 个 4 个依次闪烁。2 若此时按功能键 3,流水灯的闪烁频率将改变。 2.2 系统工作流程按设计要求,我们规划了花样调速流水灯的工作流程如下:1.按下启动按钮,流水灯依次闪烁,数码管将显示 1 为第一种闪烁方式2.按下功能键 1 流水灯将 2 个 2 个闪烁,此时数码管将显示 2 表示为第 2 种显示方式,并且在此时按

5、下功能键 3 灯光将放慢频率显示(共有 3 种速度可供调节) 。3.再次按下功能键 1 流水灯 3 个 3 个闪烁,此时数码管将显示 3 表示为第 3种显示方式,在按下功能键 3 灯光将放慢频率显示(共有 3 种速度可供调节) 。4.最后按下功能键 1 流水灯将 4 个 4 个闪烁,此时数码管将显示 4 表示为第4 种显示方式,在按下功能键 3 灯光将放慢频率显示(共有 3 种速度可供调节) 。5.再按下停止按钮系统将停止运行单片机课程设计4第第 3 章章 软件设计3.13.1 系统总体结构框图系统总体结构框图针对与设计思想做系统的结构框图如图针对与设计思想做系统的结构框图如图 3 31 1

6、所示。所示。图 313.2 系统流程图系统流程图整个系统的总体程序,电路通电后, ,若按一下功能键 (按钮 1) ,为第一种方式;若再按一下功能键(按钮 1) ,此 时为第二种方式;再按一下为第三种方式,每种方式各有它 的流水灯花样。(流程图请看附录)单片机课程设计5第 5 章 总结通过此次设计使我对应用系统设计思路有了一定的掌握,对硬件和软件的实践。系统采用 4 位共阳极数码管来显示数字,采用 3 个按键,用来调整闪烁方式和频率。将所学的知识得到了贯通,进一步掌握了独立设计的本领,深入领会单片机应用系统的软、硬件调试方法和系统研制开发过程。参考文献1 张立红 单片微型计算机原理与应用(第二版

7、) 。中国劳动社会保障出版社。2 胡毓坚 PROTEL 99SE 原理图与 PCB 及仿真。机械工业出版社。3 百度文库单片机课程设计6附录附录1 1 软件代码软件代码;流动循环灯ORG 0000HAJMPSTART ORG 000BHAJMPT_0 ;20ms延时中断ORG 001BHAJMPT_1 ;100ms延时中断;_ _ 伪定义 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _YANS_ENBIT 01H ;延时使能标志,1有效ORG 0030H单片机课程设计7;_ _ 初始化 _ _ _ _ _ _ _ _ _ _ _ _ _

8、_ _ _ _ _ _ _ _ _ _ _ _ _ START:;打开四位一体数码管COM1端MOV P2, #0FEH;设置堆栈指针在(5FH)MOV SP, #5FH;R0 存放 按键1(选择工作方式)MOV R0, #0D;R1 存放 按键2(变换延时时间)MOV R1, #1;R2 延时辅助MOV R2, #0;R3 流水灯1查表辅助MOV R3, #0;R4 流水灯2查表辅助MOV R4, #0单片机课程设计8;R5 流水灯3查表辅助MOV R5, #0;30H 存放 延时数据 (多少次100ms)MOV 30H, #2;2x100ms即200ms;中断初始化MOV IE, #100

9、01010B;T_0、T_1延时中断使能MOV IP, #00000000B ;无 中断优先MOV TMOD, #00010001B ;T_0、T_1延时中断 工作方式一MOV TH0, #0D8HMOV TL0, #0F0H;“D8F0“ = “55536“ (20000us即20ms)MOV TH1, #3CHMOV TL1, #0B0H;“3CB0“ = “15536“ (100000us即100ms)MOV TCON, #01010000B ;启动T_0、T_1延时;_ _ 主程序 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

10、_ MAIN:CJNER0, #1D, K1 ;流水灯1单片机课程设计9LCALLLOOP1K1:CJNER0, #2D, K2 ;流水灯2LCALLLOOP2K2:CJNER0, #3D, K3 ;流水灯3LCALLLOOP3K3:CJNER0, #4D, K4 ;关闭MOV P1, #0FFHMOV P0, #0FFHLCALLSTARTK4:LJMPMAIN;_ _ 流水灯1 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _LOOP1:JNB YANS_EN, $;延时CLR YANS_EN;(关闭)延时使能标志MOV DPTR,

11、 #LSD1MOV A, R3单片机课程设计10MOVCA, A+DPTRMOV P1, AMOV P0, #0F9H ;数码管显示1INC R3CJNER3, #16, BYE1MOV R3, #0BYE1:RET;_ _ 流水灯2 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _LOOP2:JNB YANS_EN, $;延时CLR YANS_EN;(关闭)延时使能标志MOV DPTR, #LSD2MOV A, R4MOVCA, A+DPTRMOV P1, AMOV P0, #0A4H ;数码管显示2单片机课程设计11INC R4CJ

12、NER4, #8, BYE2MOV R4, #0BYE2:RET;_ _ 流水灯3 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _LOOP3:JNB YANS_EN, $;延时CLR YANS_EN;(关闭)延时使能标志MOV DPTR, #LSD3MOV A, R5MOVCA, A+DPTRMOV P1, AMOV P0, #0B0H ;数码管显示3INC R5CJNER5, #40, BYE3单片机课程设计12MOV R5, #0BYE3:RET;_ _ 中断T_0(20ms延时执行按键判断)_ _ _ _ _ _ _ _ _ _

13、 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _T_0:CLR ET0PUSHPSWPUSHACCMOV TH0, #0D8HMOV TL0, #0F0H;“D8F0“ = “55536“ (20000us即20ms)LCALLAJPD;按键判断POP ACCPOP PSWSETBET0RETI单片机课程设计13;_ _ 中断T_1(100ms延时)_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _T_1:CLR ET1PUSHPSWPUSHACCMOV TH1, #3CHMOV TL1, #0B0H;“3CB0“ = “15536“ (100000us即100ms)INC R2MOV A, R2CJNEA, 30H, YESMOV R2, #0SETBYANS_EN;(启动)延时使能YES:POP ACC单片机课程设计14POP PSWSETBET1RETI;_ _ 按键判断 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _AJPD:;按键1(选择工作方式)JB P3.0, O

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 毕业论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号