流水灯课程设计
2407流水灯课程设计

2407流水灯课程设计一、课程目标知识目标:1. 让学生理解流水灯的工作原理,掌握基础电子元件的功能和连接方式。
2. 学会使用编程软件,编写简单的流水灯控制程序。
3. 了解电路图的阅读方法,能分析并绘制简单的流水灯电路图。
技能目标:1. 培养学生动手操作能力,能够独立完成流水灯电路的搭建。
2. 培养学生编程思维,提高问题解决能力,能通过编程实现流水灯的不同效果。
3. 提高学生的团队协作能力,学会在小组内分工合作,共同完成项目任务。
情感态度价值观目标:1. 培养学生对电子科技的兴趣,激发创新意识。
2. 培养学生严谨的科学态度,注重实践操作与理论知识的结合。
3. 增强学生的环保意识,关注电子产品对环境的影响,培养社会责任感。
本课程针对2407年级学生的特点,结合电子技术基础知识,设计具有实用性和趣味性的流水灯项目。
通过课程学习,使学生能够掌握相关电子元件的应用、电路图的阅读、编程控制等技术,培养实际操作能力和团队协作能力,同时提高学生对电子科技的兴趣和环保意识。
课程目标具体、可衡量,便于教学设计和评估。
二、教学内容1. 电子元件基础知识:介绍常用电子元件(如电阻、电容、二极管、三极管等)的功能、符号及使用方法,结合课本第2章内容。
2. 流水灯工作原理:分析流水灯的工作原理,讲解电路图的阅读方法,参考课本第3章相关内容。
3. 编程控制:学习C语言基础,使用编程软件(如Arduino IDE)编写流水灯控制程序,结合课本第4章编程知识。
4. 电路搭建:教授学生如何搭建流水灯电路,包括电路板的焊接、元件的连接等,参考课本第5章实践操作内容。
5. 项目实践:分组进行流水灯项目实践,每组设计并实现一种流水灯效果,锻炼学生的动手能力和团队协作能力。
6. 知识拓展:介绍流水灯在现实生活中的应用,探讨电子产品的环保问题,引导学生关注社会热点。
教学内容根据课程目标进行选择和组织,确保科学性和系统性。
教学大纲明确,包括电子元件、电路图、编程控制、电路搭建等模块,与课本章节内容紧密结合。
l流水灯课程设计

l流水灯课程设计一、教学目标本课程旨在通过流水灯的制作,让学生了解和掌握基础的电子电路知识,培养学生动手实践能力和团队协作能力。
知识目标:使学生了解流水灯的原理,掌握基本的电子元件使用方法,了解简单的电路图阅读和绘制。
技能目标:培养学生使用电子工具的能力,如切割、焊接、组装等,训练学生解决实际问题的能力,提高学生的创新思维。
情感态度价值观目标:培养学生对科学探究的兴趣,激发学生对工程技术领域的热情,强化学生的环保意识。
二、教学内容本课程的教学内容主要包括流水灯的原理、电子元件的使用、电路图的阅读和绘制、流水灯的制作等。
1.流水灯的原理:介绍流水灯的工作原理,使学生了解电路的基本构成。
2.电子元件的使用:详细讲解各种电子元件的功能和用途,如电阻、电容、二极管、晶体管等。
3.电路图的阅读和绘制:教授学生如何阅读电路图,如何根据需求绘制电路图。
4.流水灯的制作:指导学生动手制作流水灯,培养学生的实践操作能力。
三、教学方法本课程将采用讲授法、实践法、小组讨论法等教学方法。
1.讲授法:用于讲解流水灯的原理、电子元件的使用和电路图的阅读和绘制。
2.实践法:用于流水灯的制作环节,让学生动手实践,提高操作能力。
3.小组讨论法:用于解决制作过程中遇到的问题,培养学生的团队协作能力和解决问题的能力。
四、教学资源教学资源包括教材、参考书、多媒体资料、实验设备等。
1.教材:提供基础的理论知识,指导学生学习。
2.参考书:丰富学生的知识视野,帮助学生更深入地理解电子电路知识。
3.多媒体资料:通过视频、图片等形式,生动形象地展示流水灯的原理和制作过程。
4.实验设备:包括电子元件、电路板、焊锡丝等,用于学生的实践操作。
五、教学评估本课程的评估方式包括平时表现、作业、考试等,以全面、客观、公正地评价学生的学习成果。
1.平时表现:通过观察学生在课堂上的参与程度、提问回答、小组讨论等,评估学生的学习态度和理解程度。
2.作业:布置相关的电路设计、实验报告等作业,评估学生的掌握程度和应用能力。
流水彩灯课程设计

流水彩灯课程设计一、课程目标知识目标:1. 学生能理解流水彩灯的基本原理,掌握电路连接方式,了解彩灯色彩变化与电路设计的关系。
2. 学生能运用所学的物理知识与美术技巧,设计并制作出独特的流水彩灯作品。
技能目标:1. 学生能够运用绘图工具和手工制作技巧,完成流水彩灯的设计与制作。
2. 学生能够通过小组合作,学会沟通、协调、分工与协作,提高团队协作能力。
情感态度价值观目标:1. 学生在创作过程中,培养对美的感知和审美情趣,激发创新思维和创造力。
2. 学生通过流水彩灯的制作,体验传统文化与现代科技的结合,增强民族自豪感。
3. 学生在小组合作中,学会尊重他人,培养团队精神和责任感。
课程性质:本课程为综合实践活动课程,结合物理、美术、传统文化等多学科知识,注重培养学生的动手能力、创新意识和团队协作精神。
学生特点:五年级学生对新鲜事物充满好奇,具备一定的手工制作能力和创新思维,但合作意识与沟通能力有待提高。
教学要求:教师应注重引导学生将理论知识与实践操作相结合,鼓励学生创新设计,关注学生在合作过程中的沟通与协作,提高学生的综合素养。
通过课程目标的分解,使学生在完成具体学习成果的过程中,达到课程目标的预期效果。
二、教学内容1. 彩灯原理与电路设计:- 彩灯的基本原理与电路连接方式(教材第四章第三节)- 电路设计中的串联与并联知识(教材第四章第四节)- 彩灯颜色变化与电阻的关系(教材第四章第五节)2. 彩灯制作与美术技巧:- 彩灯设计草图绘制(教材第三章第二节)- 彩灯材料选择与加工(教材第三章第三节)- 彩灯装饰技巧与色彩搭配(教材第三章第四节)3. 小组合作与团队协作:- 小组分工与协作方法(教材第五章第二节)- 沟通技巧与团队协调(教材第五章第三节)- 团队成果展示与评价(教材第五章第四节)4. 实践活动与综合应用:- 彩灯制作实践操作(结合教材第四章、第三章内容)- 创新设计与应用(教材第六章第一节)- 传统文化与现代科技相结合(教材第六章第二节)教学内容安排与进度:第一课时:学习彩灯原理与电路设计,进行电路实验,理解彩灯的基本原理。
多彩流水灯课程设计

多彩流水灯课程设计一、课程目标知识目标:1. 学生能理解并掌握电路基础知识,包括电路元件的作用、电路图的识别;2. 学生能了解并运用流水灯的工作原理,掌握彩色流水灯的设计与制作方法;3. 学生能够运用所学的编程知识,编写程序控制多彩流水灯的显示效果。
技能目标:1. 学生能够运用工具和材料,动手制作一个功能齐全的多彩流水灯;2. 学生通过实践操作,提高动手能力、问题解决能力和团队协作能力;3. 学生能够运用信息技术手段,进行电路设计和程序编写,提高信息技术素养。
情感态度价值观目标:1. 学生在学习过程中,培养对科学技术的兴趣和求知欲,激发创新意识;2. 学生通过团队合作,学会分享、交流,培养团队精神和合作意识;3. 学生能够认识到科技与社会生活的紧密联系,增强社会责任感和使命感。
本课程针对初中年级学生,结合课程性质、学生特点和教学要求,制定具体、可衡量的学习目标。
通过本课程的学习,学生不仅能够掌握电路和编程知识,还能够提高实践操作能力,培养创新精神和团队协作能力,全面提升科技素养。
二、教学内容1. 电路基础知识:介绍电路元件(如电阻、电容、二极管、三极管等)的功能和作用,学习电路图的识别和绘制方法;相关教材章节:第一章《走进电世界》2. 流水灯工作原理:讲解流水灯的基本原理,包括LED灯的发光原理、控制电路的设计;相关教材章节:第二章《电子电路的制作与实践》3. 彩色流水灯设计:学习彩色LED灯的特性,探讨如何设计出多种颜色变换的流水灯;相关教材章节:第三章《电子电路的设计与应用》4. 编程控制:运用所学的编程知识(如Arduino、Scratch等),编写程序控制多彩流水灯的显示效果;相关教材章节:第四章《编程与控制》5. 实践操作:分组进行实践操作,每组制作一个功能齐全的多彩流水灯,并展示其成果;相关教材章节:第五章《综合实践与创新能力培养》教学内容安排和进度:第一课时:电路基础知识学习,认识电路元件,绘制电路图;第二课时:流水灯工作原理学习,分析彩色LED灯特性;第三课时:设计彩色流水灯,编写程序控制;第四课时:实践操作,制作并展示多彩流水灯成果。
c52流水灯课程设计

c52流水灯课程设计一、课程目标知识目标:1. 让学生理解流水灯的基本原理,掌握电路的连接方式以及程序设计的基础知识。
2. 学会运用所学知识,设计并实现简单的流水灯效果。
技能目标:1. 培养学生动手操作能力,能够独立完成电路连接和程序编写。
2. 提高学生的问题解决能力,能够分析并解决流水灯设计过程中遇到的问题。
情感态度价值观目标:1. 激发学生对电子制作的兴趣,培养其创新意识和团队合作精神。
2. 引导学生关注生活中的电子应用,认识到科技与生活的紧密联系,增强社会责任感。
课程性质分析:本课程为电子制作实践课程,旨在通过流水灯的设计与制作,让学生将所学知识应用于实际操作中,提高学生的实践能力和创新能力。
学生特点分析:本年级学生具备一定的电子基础和编程能力,对新鲜事物充满好奇,喜欢动手实践,但独立解决问题的能力尚需提高。
教学要求:1. 教师需引导学生复习相关电子知识,为学生提供必要的理论支持。
2. 教学过程中注重培养学生的动手操作能力和问题解决能力,关注学生的情感态度价值观培养。
3. 教学评价应以学生的实际操作能力和创新成果为主要依据。
二、教学内容本课程教学内容主要包括以下三个方面:1. 理论知识学习:- 电路基础知识:回顾电路的基本元件、电路图的识别和电路连接方法。
- 编程基础知识:介绍流水灯程序设计所需的编程语言和基本语法。
2. 实践操作:- 电路连接:指导学生根据设计要求,完成流水灯电路的连接。
- 程序编写:教授学生编写简单的流水灯程序,实现流水灯的基本效果。
3. 创新设计与制作:- 创意设计:鼓励学生发挥创意,设计具有特色的流水灯效果。
- 制作与调试:指导学生进行流水灯的制作、调试,解决过程中遇到的问题。
教学内容安排与进度:1. 第一课时:复习电路基础知识,讲解流水灯原理和编程基础。
2. 第二课时:学生分组,进行电路连接和程序编写。
3. 第三课时:学生展示作品,互相交流,教师点评,指导改进。
4. 第四课时:学生根据教师指导意见,进行创新设计和制作。
ewb流水灯课程设计

ewb流水灯课程设计一、课程目标知识目标:1. 学生理解并掌握流水灯的基本原理,包括电路组成、工作原理及电路图的阅读。
2. 学生能够描述微控制器与外围电路的连接方法,并解释其功能。
3. 学生掌握基础的电子元件知识,如电阻、电容、二极管等,并能在实际电路中识别和应用。
技能目标:1. 学生能够运用已学知识,设计并搭建简单的ewb流水灯电路。
2. 学生通过ewb软件操作,实现流水灯程序的编写和调试,培养动手实践能力。
3. 学生通过课程学习,能够进行基本的电路故障排查和问题解决。
情感态度价值观目标:1. 学生培养对电子技术和编程的兴趣,激发创新思维和探究精神。
2. 学生在学习过程中,培养合作意识,学会分享和互助。
3. 学生通过实践,增强自信心,认识到学习科学技术的实际意义,培养社会责任感。
本课程针对中学生设计,注重理论与实践相结合,针对学生的好奇心强、动手能力逐渐增强的特点,课程设计以实践操作为主线,让学生在动手实践中学习理论知识。
课程目标明确、具体,旨在通过本章节的学习,使学生在掌握电子技术基础知识的同时,提高实际操作能力,培养科学探究精神和团队合作意识。
二、教学内容1. 电子元件基础知识:介绍电阻、电容、二极管等基础元件的作用、符号及参数,对应教材第二章。
- 电阻的种类和阻值计算- 电容的作用和容值识别- 二极管的单向导电特性2. 流水灯电路原理:讲解流水灯电路的组成、工作原理及电路图识别,对应教材第三章。
- 流水灯电路的构成元件- 电路工作原理及流程- 电路图的识别和解读3. 微控制器与外围电路连接:学习微控制器与外围电路的连接方法,对应教材第四章。
- 微控制器引脚功能介绍- 外围电路与微控制器连接方式- 电路连接注意事项4. ewb软件操作与编程:利用ewb软件设计流水灯电路并进行编程,对应教材第五章。
- ewb软件基本操作与界面介绍- 流水灯电路的搭建与仿真- 编程实现流水灯效果5. 流水灯电路实践:动手实践,进行流水灯电路的搭建、编程和调试,对应教材第六章。
dsp课程设计2812流水灯

dsp课程设计2812流水灯一、教学目标本课程的教学目标是使学生掌握DSP 2812流水灯的基本原理和实现方法。
具体包括以下三个方面:1.知识目标:使学生了解DSP 2812的基本结构和工作原理,掌握流水灯的硬件设计和软件编程方法。
2.技能目标:培养学生具备使用DSP 2812开发流水灯项目的能力,能够独立完成硬件电路设计和软件编程。
3.情感态度价值观目标:培养学生对电子技术的兴趣和热情,提高他们解决实际问题的能力和创新精神。
二、教学内容本课程的教学内容主要包括以下几个部分:1.DSP 2812的基本结构和工作原理:包括CPU、存储器、外围接口等组成部分,以及指令系统和工作模式。
2.流水灯的硬件设计:包括LED灯阵的设计、驱动电路的设计、时钟电路的设计等。
3.流水灯的软件编程:包括初始化程序、定时器程序、PWM控制程序等。
三、教学方法为了达到本课程的教学目标,我们将采用以下几种教学方法:1.讲授法:用于讲解DSP 2812的基本原理和流水灯的硬件设计。
2.讨论法:用于讨论流水灯的软件编程方法和实际应用。
3.实验法:让学生亲自动手进行硬件电路搭建和软件编程,增强实践能力。
四、教学资源为了支持本课程的教学内容和教学方法,我们将准备以下教学资源:1.教材:《DSP 2812原理与应用》。
2.参考书:包括DSP 2812的数据手册、硬件设计手册等。
3.多媒体资料:包括教学PPT、视频教程等。
4.实验设备:DSP 2812开发板、LED灯阵、驱动电路等。
五、教学评估为了全面、客观地评估学生在课程中的学习成果,我们将采取以下评估方式:1.平时表现:通过学生在课堂上的参与度、提问回答、小组讨论等表现来评估。
2.作业:布置与课程内容相关的编程练习和实验报告,通过学生的完成质量来评估。
3.考试:包括期中考试和期末考试,内容涵盖课程的全部知识点,以笔试形式进行。
4.项目演示:学生需要设计和实现一个DSP 2812流水灯项目,通过项目演示和报告来评估。
16组流水灯课程设计

16组流水灯课程设计一、课程目标知识目标:1. 让学生掌握16组流水灯的基本电路原理,理解电子元件的功能和相互关系。
2. 使学生了解编程控制16组流水灯的方法,掌握相关编程知识和技巧。
3. 帮助学生理解流水灯在实际应用中的电路设计和调试方法。
技能目标:1. 培养学生动手搭建16组流水灯电路的能力,提高实践操作技能。
2. 培养学生编写程序,实现对16组流水灯的控制,锻炼编程思维。
3. 培养学生运用所学知识解决实际问题的能力,提高创新意识和团队协作能力。
情感态度价值观目标:1. 激发学生对电子技术和编程的兴趣,培养自主学习、探究问题的积极性。
2. 培养学生面对困难时的坚持和毅力,树立自信心,勇于克服挑战。
3. 增强学生的环保意识,培养学生爱护电子设备、节约资源的价值观。
课程性质:本课程为实践性较强的课程,注重理论联系实际,以学生动手实践为主。
学生特点:学生具备一定的电子元件知识和编程基础,喜欢动手实践,具有较强的求知欲。
教学要求:教师需注重引导学生掌握基本原理,关注学生实践操作过程,鼓励学生创新思考,提高解决问题能力。
在教学过程中,将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. 电子元件基础知识:复习常用电子元件的功能和符号,重点讲解晶体管、电阻、电容等在流水灯电路中的应用。
相关教材章节:第一章 电子元件及其应用2. 流水灯电路原理:介绍16组流水灯电路的设计原理,分析电路中各个元件的作用及相互关系。
相关教材章节:第二章 基本电路原理3. 编程控制方法:讲解编程控制流水灯的方法,包括编程语言基础、程序结构、控制指令等。
相关教材章节:第三章 编程基础知识;第四章 控制指令及其应用4. 实践操作:指导学生动手搭建16组流水灯电路,编写程序实现流水灯控制效果,并进行调试。
相关教材章节:第五章 实践操作与调试5. 创新设计:鼓励学生运用所学知识进行创新设计,提高流水灯的趣味性和实用性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于单片机的流水灯设计学院:专业:指导老师:姓名:班级:学号:年月日摘要:当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。
单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。
This age is a new technology emerge in endlessly era, in the electronic field especially automation intelligent control field, the traditional schism components or digital logic circuit, is composed of control system with unprecedented speed was replaced by microcontroller intelligent control system. SCM has small, strong function, low cost, etc, it can be said that wide application, intelligent control and automatic control core is the microcontroller.关键词:LED 单片机控制系统流水灯目录1.前言1.1 设计概述 (2)1.2 设计主要功能 (2)2. 硬件组成2.1 80C51单片计算机的组成原理 (3)2.组成框图及内部总体结构 (3)2.寄存器和存储器………………………………………………………(4)2.1.3 单片机各口及其负载能力、接口要求 (5)2.1.4 MCS—51单片机的引脚功能 (8)2.步进电机 (11)2.2.1 步进电机的控制原理 (11)2.2.2 分类 (11)2.2.2.1 反应式步进电机 (11)2.2.2.2 感应子式步进电机 (12)3. 软件编程3.1 双相三拍控制程序 (16)3.2 三相六拍控制程序…………4. 结语5. 课程设计体会6 参考文献前言学习单片机的最有效方法就是理论与实践并重,现在我把单片机流水灯设计作为一个毕业课程设计,需要更深的去了解单片机的很多功能,努力的去查找资料,当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。
单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。
件组成的单个单片机。
其具体硬件组成如图1所示。
图1 流水灯硬件原理图从原理图中可以看出,如果要让接在P1.0口的LED1亮起来,那么只要把P1.0口的电平变为低电平就可以了;相反,如果要接在P1.0口的LED1熄灭,就要把P1.0口的电平变为高电平;同理,接在P1.1~P1.7口的其他7个LED的点亮和熄灭的方法同LED1。
因此,要实现流水灯功能,我们只要将发光二极管LED1~LED8依次点亮、熄灭,8只LED灯便会一亮一暗的做流水灯了。
在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“流水”效果了。
软件编程单片机的应用系统由硬件和软件组成,上述硬件原理图搭建完成上电之后,我们还不能看到流水灯循环点亮的现象,我们还需要告诉单片机怎么来进行工作,即编写程序控制单片机管脚电平的高低变化,来实现发光二极管的一亮一灭。
软件编程是单片机应用系统中的一个重要的组成部分,是单片机学习的重点和难点。
下面我们以最简单的流水灯控制功能即实现8个LED灯的循环点亮,来介绍实现流水灯控制的几种软件编程方法。
3.1位控法这是一种比较笨但又最易理解的方法,采用顺序程序结构,用位指令控制P1口的每一个位输出高低电平,从而来控制相应LED灯的亮灭。
程序如下:ORG 0000H ;单片机上电后从0000H地址执行AJMP START ;跳转到主程序存放地址处ORG 0030H ;设置主程序开始地址START:MOV SP,#60H ;设置堆栈起始地址为60HCLR P1.0 ;P1.0输出低电平,使LED1点亮ACALL DELAY ;调用延时子程序SETB P1.0 ;P1.0输出高电平,使LED1熄灭CLR P1.1 ;P1.1输出低电平,使LED2点亮ACALL DELAY ;调用延时子程序SETB P1.1 ;P1.1输出高电平,使LED2熄灭CLR P1.2 ;P1.2输出低电平,使LED3点亮ACALL DELAY ;调用延时子程序SETB P1.2 ;P1.2输出高电平,使LED3熄灭CLR P1.3 ;P1.3输出低电平,使LED4点亮ACALL DELAY ;调用延时子程序SETB P1.3 ;P1.3输出高电平,使LED4熄灭CLR P1.4 ;P1.4输出低电平,使LED5点亮ACALL DELAY ;调用延时子程序SETB P1.4 ;P1.4输出高电平,使LED5熄灭CLR P1.5 ;P1.5输出低电平,使LED6点亮ACALL DELAY ;调用延时子程序SETB P1.5 ;P1.5输出高电平,使LED6熄灭CLR P1.6 ;P1.6输出低电平,使LED7点亮ACALL DELAY ;调用延时子程序SETB P1.6 ;P1.6输出高电平,使LED7熄灭CLR P1.7 ;P1.7输出低电平,使LED8点亮ACALL DELAY ;调用延时子程序SETB P1.7 ;P1.7输出高电平,使LED8熄灭ACALL DELAY ;调用延时子程序AJMP START ;8个LED流了一遍后返回到标号START处再循环DELAY:;延时子程序MOV R0,#255 ;延时一段时间D1: MOV R1,#255DJNZ R1,$DJNZ R0,D1RET ;子程序返回END ;程序结束3.2循环移位法在上个程序中我们是逐个控制P1端口的每个位来实现的,因此程序显得有点复杂,下面我们利用循环移位指令,采用循环程序结构进行编程。
我们在程序一开始就给P1口送一个数,这个数本身就让P1.0先低,其他位为高,然后延时一段时间,再让这个数据向高位移动,然后再输出至P1口,这样就实现“流水”效果啦。
由于8051系列单片机的指令中只有对累加器ACC中数据左移或右移的指令,因此实际编程中我们应把需移动的数据先放到ACC中,让其移动,然后将ACC移动后的数据再转送到P1口,这样同样可以实现“流水”效果。
具体编程如下所示,程序结构确实简单了很多。
ORG 0000H ;单片机上电后从0000H地址执行AJMP START ;跳转到主程序存放地址处ORG 0030H ;设置主程序开始地址START:MOV SP,#60H ;设置堆栈起始地址为60HMOV A,#0FEH ;ACC中先装入LED1亮的数据(二进制的11111110)MOV P1,A ;将ACC的数据送P1口MOV R0,#7 ;将数据再移动7次就完成一个8位流水过程LOOP: RL A ;将ACC中的数据左移一位MOV P1,A ;把ACC移动过的数据送p1口显示ACALL DELAY ;调用延时子程序DJNZ R0,LOOP ;没有移动够7次继续移动AJMP START ;移动完7次后跳到开始重来,以达到循环流动效果DELAY:;延时子程序MOV R0,#255 ;延时一段时间D1: MOV R1,#255DJNZ R1,$DJNZ R0,D1RET ;子程序返回END ;程序结束3.3查表法上面的两个程序都是比较简单的流水灯程序,“流水”花样只能实现单一的“从左到右”流方式。
运用查表法所编写的流水灯程序,能够实现任意方式流水,而且流水花样无限,只要更改流水花样数据表的流水数据就可以随意添加或改变流水花样,真正实现随心所欲的流水灯效果。
我们首先把要显示流水花样的数据建在一个以TAB为标号的数据表中,然后通过查表指令“MOVC A,@A+DPTR”把数据取到累加器A中,然后再送到P1口进行显示。
具体源程序如下,TAB标号处的数据表可以根据实现效果的要求任意修改。
ORG 0000H ;单片机上电后从0000H地址执行AJMP START ;跳转到主程序存放地址处ORG 0030H ;设置主程序开始地址START:MOV SP,#60H ;设置堆栈起始地址为60HMOV DPTR,# TAB ;流水花样表首地址送DPTRLOOP: CLR A ;累加器清零MOVC A,@A+DPTR ;取数据表中的值CJNE A,#0FFH,SHOW;检查流水结束标志AJMP START ;所有花样流完,则从头开始重复流SHOW: MOV P1,A ;将数据送到P1口ACALL DELAY ;调用延时子程序INC DPTR ;取数据表指针指向下一数据AJMP LOOP ;继续查表取数据DELAY:;延时子程序MOV R0,#255 ;延时一段时间D1: MOV R1,#255DJNZ R1,$DJNZ R0,D1RET ;子程序返回TAB:;下面是流水花样数据表,用户可据要求任意编写DB 11111110B ;二进制表示的流水花样数据,从低到高左移DB 11111101BDB 11111011BDB 11110111BDB 11101111BDB 11011111BDB 10111111BDB 01111111BDB 01111111B ;二进制表示的流水花样数据,从高到低右移DB 10111111BDB 11011111BDB 11101111BDB 11110111BDB 11111011BDB 11111101BDB 11111110BDB 0FEH,0FDH,0FBH,0F7H ;十六进制表示的流水花样数据DB 0EFH,0DFH,0BFH,7FHDB 7FH,0BFH,0DFH,0EFHDB 0F7H,0FBH,0FDH,0FEH……DB 0FFH ;流水花样结束标志0FFHEND ;程序结束这里需要说明的是,按汇编语法要求,所编制的程序(下称源程序)之格式和书写要求必须依下列原则:1、源程序必须为纯文本格式文件,如用Windows“附件”中的“记事本”编写的文本文件或用UltraEdit文本编辑器编辑;2、源程序的扩展名应是*.ASM;3、一行只能写一条语句,以回车作为本句的结束,每一语句行长度应少于80个字符(即40个汉字)。