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

上传人:rrsccc 文档编号:9924660 上传时间:2021-04-04 格式:DOC 页数:26 大小:1.33MB
返回 下载 相关 举报
基于单片机AT89C51控制的花样调速流水灯课题设计报告.doc_第1页
第1页 / 共26页
基于单片机AT89C51控制的花样调速流水灯课题设计报告.doc_第2页
第2页 / 共26页
基于单片机AT89C51控制的花样调速流水灯课题设计报告.doc_第3页
第3页 / 共26页
基于单片机AT89C51控制的花样调速流水灯课题设计报告.doc_第4页
第4页 / 共26页
基于单片机AT89C51控制的花样调速流水灯课题设计报告.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

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

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

2、码 .14 第 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 个键分别控制流水灯的闪烁方式和闪烁速度。 第 2 章 硬件电路设计 2.1 电路原理 本硬件的核心是 MCS-51 单片机,我们选用 AT89C51。因无需扩展外部 RAM。 系统采用 4 位共阳极数码管,用来显示各种闪烁方式的

4、序号。 系统采用 3 个按键控制,一个为启动键,当按下启动按钮整个流水灯系统启 动。 系统在 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

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

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

7、献 1 张立红 单片微型计算机原理与应用(第二版) 。中国劳动社会保障出版社。 2 胡毓坚 PROTEL 99SE 原理图与 PCB 及仿真。机械工业出版社。 3 百度文库 附录附录1 1 软件代码软件代码 ;流动循环灯 ORG 0000H AJMPSTART ORG 000BH AJMPT_0 ;20ms延时中断 ORG 001BH AJMPT_1 ;100ms延时中断 ;_ _ 伪定义 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ YANS_ENBIT 01H ;延时使能标志,1有效 ORG 0030H ;_ _ 初始化 _ _ _

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 ;R5 流水灯3查表辅助 MOV R5, #0 ;30H 存放 延时数据 (多少次100ms) MOV 30H, #2;

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

10、 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ MAIN: CJNER0, #1D, K1 ;流水灯1 LCALLLOOP1 K1: CJNER0, #2D, K2 ;流水灯2 LCALLLOOP2 K2: CJNER0, #3D, K3 ;流水灯3 LCALLLOOP3 K3: CJNER0, #4D, K4 ;关闭 MOV P1, #0FFH MOV P0, #0FFH LCALLSTART K4: LJMPMAIN ;_ _ 流水灯1 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ LOOP1: JNB Y

11、ANS_EN, $;延时 CLR YANS_EN;(关闭)延时使能标志 MOV DPTR, #LSD1 MOV A, R3 MOVCA, A+DPTR MOV P1, A MOV P0, #0F9H ;数码管显示1 INC R3 CJNER3, #16, BYE1 MOV R3, #0 BYE1: RET ;_ _ 流水灯2 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ LOOP2: JNB YANS_EN, $;延时 CLR YANS_EN;(关闭)延时使能标志 MOV DPTR, #LSD2 MOV A, R4 MOVCA, A

12、+DPTR MOV P1, A MOV P0, #0A4H ;数码管显示2 INC R4 CJNER4, #8, BYE2 MOV R4, #0 BYE2: RET ;_ _ 流水灯3 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ LOOP3: JNB YANS_EN, $;延时 CLR YANS_EN;(关闭)延时使能标志 MOV DPTR, #LSD3 MOV A, R5 MOVCA, A+DPTR MOV P1, A MOV P0, #0B0H ;数码管显示3 INC R5 CJNER5, #40, BYE3 MOV R5,

13、#0 BYE3: RET ;_ _ 中断T_0(20ms延时执行按键判断)_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ T_0: CLR ET0 PUSHPSW PUSHACC MOV TH0, #0D8H MOV TL0, #0F0H;D8F0 = 55536 (20000us即20ms) LCALLAJPD;按键判断 POP ACC POP PSW SETBET0 RETI ;_ _ 中断T_1(100ms延时)_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ T

14、_1: CLR ET1 PUSHPSW PUSHACC MOV TH1, #3CH MOV TL1, #0B0H;3CB0 = 15536 (100000us即100ms) INC R2 MOV A, R2 CJNEA, 30H, YES MOV R2, #0 SETBYANS_EN;(启动)延时使能 YES: POP ACC POP PSW SETBET1 RETI ;_ _ 按键判断 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ AJPD: ;按键1(选择工作方式) JB P3.0, OUT1 JNB P3.

15、0, $ INC R0 OUT1: ;按键2(变换延时时间) JB P3.1, OUT2 JNB P3.1, $ INC R1 LCALLYSSJ;调用延时数据(并更新) OUT2: RET ;_ _ 延时数据(更新) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ YSSJ: CJNER1, #1, SD1 MOV 30H, #2;2x100ms即200ms MOV R2, #0 SJMPSD3 SD1: CJNER1, #2, SD2 MOV 30H, #5;5x100ms即500ms MOV R2, #0 SJMPSD3

16、 SD2: CJNER1, #3, SD3 MOV R1, #0 MOV 30H, #10 ;10 x100ms即1s MOV R2, #0 SD3: RET ;_ _ 流水灯数据 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ LSD1:;流水灯1,(0 15) DB 0FEH, 0FCH, 0F8H, 0F0H, 0E0H, 0C0H, 80H, 00H DB 80H, 0C0H, 0E0H, 0F0H, 0F8H, 0FCH, 0FEH, 0FFH LSD2:;流水灯2,(0 7) DB 0FCH, 0F0H

17、, 0C0H, 00H, 0C0H, 0F0H, 0FCH, 0FFH LSD3:;流水灯3,(0 39) DB 0FEH, 0FCH, 0F8H, 0F0H, 0FFH DB 0FDH, 0F9H, 0F1H, 0E1H, 0FFH DB 0FBH, 0F3H, 0E3H, 0C3H, 0FFH DB 0F7H, 0E7H, 0C7H, 87H, 0FFH DB 0EFH, 0CFH, 8FH, 0FH, 0FFH DB 0DFH, 9FH, 1FH, 1EH, 0FFH DB 0BFH, 3FH, 3EH, 3CH, 0FFH DB 7FH, 7EH, 7CH, 78H, 0FFH 附录

18、2 仿真电路图 花样调速流水灯的硬件电路 附录附录3 3 系统原理图系统原理图 流程图流程图 PCBPCB 图图 项目 负责人 绘图 PCB 程序 硬件 设计 软件 设计 系统 设计 调试 清单 总结 乌呈琪乌呈琪 姚文杰姚文杰 吴银锋吴银锋 第四章 调试 4.1 正常现象 按下功能键1,灯开始闪烁.开始运行,这是第一种方式,然后在第一种方式中又 有五中闪烁方式,这时候,就要用到功能键2了,按下功能键2切换方式.按一下,切 换一种方式,再按一下切换一种方式. 然后就是切换到方式二,开始第二种方式. 按下功能键2,第二种方式开始.灯开始闪烁,然后就按到功能键2切换方式,切 换五种方式. 按下功能键3,切换到第三种方式,灯开始闪烁,然后再按下功能键2,切换方式,与 上面一样. 最后,就是关闭,按下功能键3 4.2 出现的故障 在我们调试当中,出现了芯片发烫的问题,一开始是好的,但是后来突然停住了,紧 接着就是芯片烫了,后来我觉得应该是三极管的问题,因为在插三极管的时候我就 觉得好像错了,但是我还是插上去了,结果错了,最后把三极管全部换掉了,再一次 通电就行了.显示正常. 电阻 470 1K20010022uf30uf12Mhz 三极 管 9012 LED 数码 管四 位一 体 12个9个1个8个1个2个1个4个8个1个 (元件清单)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1