左右来回循环的流水灯实验报告

合集下载

流水灯实验报告总结

流水灯实验报告总结

流水灯实验报告总结一、实验目的本次流水灯实验的主要目的是通过实际操作,深入理解数字电路中时序逻辑电路的工作原理,掌握基本的硬件电路设计和编程方法,提高我们对电子电路的实践操作能力和问题解决能力。

二、实验原理流水灯是通过控制一系列发光二极管(LED)依次点亮和熄灭,从而产生一种流动的视觉效果。

其实现的核心原理是利用计数器和译码器来控制 LED 的亮灭状态。

在数字电路中,计数器可以对输入的时钟脉冲进行计数,从而产生不同的计数值。

译码器则将计数器输出的计数值转换为对应的控制信号,使得相应的 LED 点亮或熄灭。

例如,使用常见的 74LS161 四位二进制同步计数器和 74LS138 三线八线译码器,可以构建一个简单的八路流水灯电路。

计数器在时钟脉冲的驱动下不断计数,译码器根据计数器的输出值依次选通不同的输出端口,从而实现 LED 的顺序点亮。

三、实验设备及材料1、数字电路实验箱2、 74LS161 计数器芯片3、 74LS138 译码器芯片4、发光二极管(LED)若干5、电阻、电容等基本电子元件6、杜邦线若干7、数字万用表8、示波器四、实验步骤(一)电路设计1、根据实验原理,在实验箱上规划好芯片的布局和连线方式。

2、使用杜邦线将计数器、译码器和 LED 等元件按照设计好的电路连接起来。

3、注意连接的正确性,避免短路和断路现象。

(二)硬件搭建1、仔细对照电路设计图,将芯片插入实验箱的相应插槽中。

2、确保芯片引脚与插槽接触良好,无松动现象。

(三)编程与调试1、使用数字电路实验箱提供的编程工具,对计数器和译码器进行编程设置。

2、例如,设置计数器的计数模式、初始值等参数。

3、打开电源,观察 LED 的亮灭情况。

4、如果流水灯效果不符合预期,使用数字万用表和示波器等工具检测电路中的信号和电压,排查故障。

五、实验中遇到的问题及解决方法(一)LED 不亮1、问题描述:接通电源后,所有 LED 均不亮。

2、排查过程:首先检查电源是否正常,然后使用万用表测量芯片引脚的电压,发现计数器芯片没有正常工作。

左右来回循环的流水灯实验报告

左右来回循环的流水灯实验报告

青 岛 科 技 大 学微机原理与接口技术综合课程设计(报告)题 目 __________________________________指导教师__________________________ 学生姓名__________________________ 学生学号_________________________________________________________院(部)____________________________专业________________班______年 ___月 ___日直流电机控制综合实验 周艳平宋雪英 01信息科学技术学院 计算机科学与技术0961 2012 12 27摘要 (2)1、单片机概述 (2)2、仿真软件介绍 (2)3、需求分析 (3)一、课程设计目的 (3)二、课程设计要求 (4)三、实验内容 (4)1、设计任务与要求 (4)2、系统分析 (4)1).硬件电路设计(画出原理图、接线图) (5)2)软件框图 (7)3、用keil建项目流程 (8)4、程序清单 (9)4、系统调试 (11)四、设计总结(结论) (12)摘要近年来,随着电子技术和微型计算机的发展,单片机的档次不断提高,起应用领域也在不断的扩大,已在工业控制、尖端科学、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人信息终端及通信产品中得到广泛的应用、成为现代电子系统中最重要的智能化的核心部件。

而AT89C51就是其中一种,它是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMO8位微处理器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

本课程设计介绍一种LED小灯控制系统的设计方法,以单片机作为主控核心,与按键、排阻、电阻、电容等较少的辅助硬件电路相结合,利用软件实现对LED灯进行控制。

能够通过按键控制8个LED小灯从左到右依次点亮。

关键字:单片机、LED流水灯1、单片机概述单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。

流水灯 单片机 实验报告

流水灯 单片机 实验报告

课程设计报告(论文)设计课题:流水灯专业班级:学生姓名:指导教师:设计时间:单片机技术课程设计课程设计任务书姓名:专业:班级:指导教师:职称:课程设计题目:流水灯已知技术参数和设计要求:要求电路开启后:led灯逐个亮,逐个灭以中间四点为中心,向外扩散四个灯顺时针亮灯顺时针亮从左往右亮从下往上亮上半部分亮下半部分亮所需仪器设备:计算机一台单片机最小系统一套成果验收形式:设计成果现场验收、回答提问、课程设计报告参考文献:单片机课程教材时间安排指导教师:教研室主任:注:本表下发学生一份,指导教师一份,栏目不够时请另附页。

课程设计任务书装订于设计计算说明书(或论文)封面之后,目录页之前。

内容摘要电子技术实验是一门重要的实践性技术基础课程。

开设本课程的目的在于使学生理论联系实际,在老师的指导下完成大纲规定的实验任务。

通过实验熟悉电工.电子技术的应用中常用的设备和电子器件,熟悉常用仪器的使用方法,掌握正确记录.处理实验数据、绘制曲线、分析实验结果的方法,从而开发学生分析问题或解决问题的能力,培养学生具有严谨的工作作风,实事求是的科学态度,刻苦钻研、勇于探索和创新的开拓精神以及遵守纪律、团结协作和爱护公物的优良品质,为今后从事专业科研工作和工程技术工作打下良好的基础。

流水灯是一串按一定的规律像流水一样连续闪亮。

流水灯控制是可编程控制器的一个应用,其控制思想在工业控制技术领域也同样适用。

索引关键词:流水灯循环亮灭目录一概述 (1)二方案设计与论证 (1)三单元电路设计与参数计算 (2)四总原理图及元器件清单 (3)五安装与调试 (4)(一般分静态调试与动态调试两大内容)六性能测试与分析 (4)(要围绕设计要求中的各项指标进行)七结论 (4)八心得体会 (4)九参考文献 (4)附录:程序一、概述要求电路开启后,灯在时钟信号作用下按以下规律转换状态。

电路开启后:led灯逐个亮,逐个灭,以中间四点为中心,向外扩散,四个灯顺时针亮,灯顺时针亮,从左往右亮,从下往上亮,上半部分亮,下半部分亮二、方案设计与论证实现单片机流水灯很简单,但是我们不能说P1.0你变低,它就变低了。

流水灯控制的实验报告

流水灯控制的实验报告

流水灯控制的实验报告流水灯控制的实验报告引言:流水灯是一种常见的电子实验装置,通过一系列LED灯的闪烁顺序,形成流动的效果。

本实验旨在通过控制流水灯的亮灭顺序,探索电子元件的控制原理和应用。

实验目的:1. 了解流水灯的基本原理和工作方式;2. 掌握流水灯控制电路的搭建方法;3. 熟悉流水灯控制电路的编程方法;4. 实现不同的流水灯效果。

实验器材与材料:1. Arduino Uno开发板;2. 面包板;3. Jumper线;4. LED灯;5. 220欧姆电阻。

实验步骤:1. 将Arduino Uno开发板连接到电脑上,并打开Arduino IDE软件;2. 在面包板上插入LED灯和电阻,按照电路图连接;3. 将面包板上的电路与Arduino开发板上的数字引脚相连;4. 在Arduino IDE软件中编写代码,控制流水灯的亮灭顺序;5. 上传代码到Arduino开发板,并观察流水灯效果。

实验结果与分析:通过编写不同的代码,可以实现不同的流水灯效果。

例如,可以设置流水灯从左到右依次亮灭,然后从右到左依次亮灭。

还可以设置流水灯的亮灭间隔时间,调节流水灯的闪烁速度。

实验中,我们发现流水灯的控制原理是通过改变LED灯的正负极连接状态来实现的。

当LED灯的正极与Arduino开发板上的数字引脚相连时,流水灯对应的LED灯会亮起;当LED灯的负极与数字引脚相连时,LED灯熄灭。

通过控制不同引脚的高低电平,可以实现流水灯的控制。

此外,我们还观察到流水灯的亮灭效果与代码中的循环次数和延时时间有关。

通过调节循环次数和延时时间,可以改变流水灯的亮灭速度和频率。

这一点对于设计不同的流水灯效果非常重要。

实验总结:通过本次实验,我们深入了解了流水灯的控制原理和应用。

通过编写代码和搭建电路,我们成功实现了多种流水灯效果。

这个实验不仅帮助我们理解了电子元件的控制原理,还培养了我们的动手能力和创造力。

在今后的学习和工作中,我们可以将流水灯的控制原理应用到更复杂的电子装置中,如交通信号灯、广告牌等。

实验三流水灯实验(io口和定时器实验)

实验三流水灯实验(io口和定时器实验)

实验三流水灯实验(I/O口和定时器实验)一、实验目的1.学会单片机I/O口的使用方法和定时器的使用方法;2.掌握延时子程序的编程方法、内部中断服务子程序的编程方法;3.学会使用I/O口控制LED灯的应用程序设计。

二、实验内容1.控制单片机P1口输出,使LED1~LED8右循环轮流点亮(即右流水),间隔时间为100毫秒。

2.控制单片机P1口输出,使LED1~LED8左循环轮流点亮(即左流水),间隔时间为100毫秒。

3.使用K1开关控制上面LED灯的两种循环状态交替进行;4. 用定时器使P1口输出周期为100ms的方波,使LED闪烁。

5.使用定时器定时,使LED灯的两种循环状态自动交替,每一种状态持续1.6秒钟(选作)。

三、实验方法和步骤1.硬件电路设计使用实验仪上的E1、E5和E7模块电路,把E1区的JP1(单片机的P1口)和E5区的8针接口L1~L8(LED的驱动芯片74HC245的输入端)连接起来,P1口就可以控制LED 灯了。

当P1口上输出低电平“0”时,LED灯亮,反之,LED灯灭。

E7区的K1开关可以接单片机P3.0口,用P3.0口读取K1开关的控制信号,根据K1开关的状态(置“1”还是置“0”),来决定LED进行左流水还是右流水。

综上,画出实验电路原理图。

2.程序设计实验1和实验2程序流程图如图3-1实验3程序流程图如图3-2所示。

图3-1 实验1,2程序流程图图3-2 实验3程序流程图实验4程序流程图如图3-3,3-4所示。

实验5程序流程图如图3-5,3-6所示。

图3-5 实验5主程序流程图图3-6 定时器中断服务子程序流程图图3-4 定时器中断服务子程序流程图图3-3 实验4主程序流程图编程要点:(1)Pl,P3口为准双向口,每一位都可独立地定义为输入或输出,在作输入线使用前,必须向锁存器相应位写入“1”,该位才能作为输入。

例如:MOV P1,A; P1口做输出MOV P1,#0FFHMOV A,P1;P1口做输入SETB P3.0MOV C,P3.1;从P3.1口读入数据(2)每个端口对应着一个寄存器,例:P1→90H(P1寄存器地址);P3→B0H(P3寄存器地址);寄存器的每一位对应着一个引脚,例:B0H.0→P3.0(3)对寄存器写入“0”、“1”,对应的外部引脚则输出“低电平”、“高电平”。

左右来回循环的流水灯实验报告

左右来回循环的流水灯实验报告

青 岛 科 技 大 学微机原理与接口技术综合课程设计(报告)题 目 __________________________________指导教师__________________________ 学生姓名__________________________ 学生学号_________________________________________________________院(部)____________________________专业________________班______年 ___月 ___日直流电机控制综合实验 周艳平宋雪英 01 信息科学技术学院计算机科学与技术0961 2012 12 27摘要 (2)1、单片机概述 (2)2、仿真软件介绍 (2)3、需求分析 (3)一、课程设计目的 (3)二、课程设计要求 (4)三、实验内容 (4)1、设计任务与要求 (4)2、系统分析 (4)1).硬件电路设计(画出原理图、接线图) (5)2)软件框图 (7)3、用keil建项目流程 (8)4、程序清单 (9)4、系统调试 (11)四、设计总结(结论) (12)摘要近年来,随着电子技术和微型计算机的发展,单片机的档次不断提高,起应用领域也在不断的扩大,已在工业控制、尖端科学、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人信息终端及通信产品中得到广泛的应用、成为现代电子系统中最重要的智能化的核心部件。

而AT89C51就是其中一种,它是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMO8位微处理器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

本课程设计介绍一种LED小灯控制系统的设计方法,以单片机作为主控核心,与按键、排阻、电阻、电容等较少的辅助硬件电路相结合,利用软件实现对LED灯进行控制。

能够通过按键控制8个LED小灯从左到右依次点亮。

关键字:单片机、LED流水灯1、单片机概述单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。

流水灯实验报告

流水灯实验报告
图6奇数显示
方案二
将显示译码管的低位端A接高电平,74LS160的输出端QA悬空,QB、QC、QD分别接入B、C、D,利用74LS160自身的十进制计数,就可实现奇数序列。
图7奇数显示(1)
分析
第二种方案的显示时间是第一种方案的两倍,在进行自然数显示到奇数
列显示的时间周期就不相等了。所以选择方案一。
3.4
74hc139功能
2线—4线译码器,M74HC139/74HC139用于高性能的存贮译码或要求传输延迟时间短的数据传输系统,在高性能存贮器系统中,用这种译码器可以提高译码系统的效率。将快速赋能电路用于高速存贮器时,译码器的延迟时间和存贮器的赋能时间通常小于存贮器的典型存取时间,这就是说由系统译码器所引起的有效系统延迟可以忽略不计。HC139含有两个单独的2线—4线译码器,当赋能输入端G为高电平时,按二进制控制输入码从4个输出端中译出一个低电平输出。在解调器应用中,低电平有效的赋能输入端用作数据线。
真值表
INPUTS输入
OUTPUTS输出
SELECTED OUTPUT选定的输出
ENABLE启用
SELECT选择
Y0
Y1
Y2
Y3
G
B
A
H
X
X
H
H
H
H
NONE
L
L
L
L
H
H
H
Y0
L
L
H

L
H
H
Y1
L
H
L
H
H
L
H
Y2
L
H
H
H
H
H
L
Y3
输入信号来自74hc390当QA,QB为“0”,“0”时,这时译码器的输出端就只有Y0为0,接一个反相器然后再接产生自然序列的计数器的清零端;这样就可以实现只有自然序列输出的功能,同理当QA,QB为“0”,“1”时,这是译码器的输出端就只有Y1为0,接一个反相器然后再接产生奇数序列的计数器的清零端,这样就可以实现只有奇数序列输出的功能;当QA,QB为“1”,“0”时,这是译码器的输出端就只有Y2为0,接一个反相器然后再接产生偶数序列的计数器的清零端,这样就可以实现只有偶数序列输出的功能。

流水灯实验报告单(3篇)

流水灯实验报告单(3篇)

第1篇实验名称:流水灯实验实验日期:2021年10月25日实验地点:实验室实验者:张三一、实验目的1. 了解流水灯的原理和组成;2. 掌握流水灯的制作方法;3. 培养动手能力和团队合作精神。

二、实验原理流水灯是一种通过改变电路中各个灯泡的连接方式,实现灯光顺序变化的电子装置。

其原理是利用555定时器产生一个周期性的方波信号,通过控制方波信号的占空比,实现不同灯泡的顺序点亮。

三、实验器材1. 555定时器1个;2. 集成电路板1块;3. 灯泡4个;4. 电阻4个;5. 电池1节;6. 导线若干;7. 万用表1个;8. 电烙铁1把;9. 剪线钳1把。

四、实验步骤1. 制作电路板:将555定时器、电阻、灯泡等元件焊接在电路板上。

2. 连接电路:将电池的正负极分别连接到电路板的电源端,将555定时器的输出端分别连接到灯泡的正极,将灯泡的负极分别连接到电路板的GND端。

3. 测试电路:使用万用表测量555定时器的输出电压,确保输出电压在正常范围内。

4. 调整占空比:通过改变电阻的阻值,调整555定时器的占空比,实现不同灯泡的顺序点亮。

5. 验证实验:观察流水灯的运行情况,确认实验是否成功。

五、实验结果与分析1. 实验成功:通过调整电阻的阻值,实现了4个灯泡的顺序点亮,实验成功。

2. 分析:在实验过程中,我们发现调整电阻的阻值可以改变555定时器的占空比,从而改变灯光的顺序。

当电阻阻值增大时,占空比减小,灯光点亮速度变慢;当电阻阻值减小时,占空比增大,灯光点亮速度变快。

六、实验结论通过本次流水灯实验,我们掌握了流水灯的原理和制作方法,提高了动手能力和团队合作精神。

实验结果表明,通过调整电阻的阻值,可以实现不同灯泡的顺序点亮,达到流水灯的效果。

七、实验反思1. 在实验过程中,我们发现电路板焊接过程中容易出现短路现象,因此在焊接过程中要仔细检查,确保电路板焊接正确。

2. 在调整电阻阻值时,要注意观察灯光的变化,以便找到最佳的电阻阻值。

流水灯实验报告总结

流水灯实验报告总结

流水灯实验报告总结流水灯实验是一种常用的电子元件实践训练,通过使用电子器件和编程语言,实现LED灯的流水效果。

本次实验中,我们成功地搭建了一个简单的流水灯电路,并通过编程控制实现了流水灯的效果。

首先,我们搭建了一个基本的流水灯电路。

流水灯电路由多个LED灯组成,LED 灯按照一定的顺序依次点亮和熄灭。

我们使用了74HC595位移寄存器来控制LED灯的点亮和熄灭。

通过给74HC595寄存器输入正确的二进制数值,可以实现给指定的LED灯点亮或熄灭。

接下来,我们使用编程语言对流水灯进行了控制。

在本次实验中,我们使用了Arduino编程语言来控制流水灯。

通过编写Arduino程序,我们可以控制74HC595寄存器的输入,从而控制LED灯的点亮和熄灭。

在程序中,我们使用了for循环和延时函数来实现流水灯的效果。

通过改变循环的次数和延时的时间,我们可以调整流水灯的速度和亮度。

在实验过程中,我们遇到了一些问题和困难。

首先,我们需要仔细连接电路,确保LED灯和74HC595寄存器的引脚正确连接。

其次,我们需要正确设置Arduino的串口和端口,以便将程序烧录到Arduino板上。

最后,我们需要仔细调试程序,确保流水灯的效果符合预期。

通过本次实验,我们学到了很多知识和技能。

首先,我们了解了流水灯和74HC595寄存器的工作原理。

其次,我们掌握了Arduino编程语言的基本语法和用法。

最后,我们掌握了电路搭建和调试的技巧。

总的来说,本次流水灯实验是一次很有意义的实践训练。

通过实验,我们进一步加深了对电子元件和编程语言的理解,提高了我们解决问题和创新的能力。

同时,通过实验我们也加强了团队合作和沟通的能力。

在今后的学习和工作中,我们将继续运用实践训练所学的知识和技能,不断创新和进步。

汽车流水灯实验报告(3篇)

汽车流水灯实验报告(3篇)

第1篇一、实验目的1. 掌握汽车流水灯电路的设计原理;2. 熟悉汽车流水灯电路的搭建与调试方法;3. 提高动手实践能力,加深对电子电路的理解。

二、实验原理汽车流水灯是一种常见的汽车装饰灯具,其原理是通过控制LED灯的亮灭,形成动态的流水效果。

本实验采用555定时器作为核心元件,通过控制定时器的输出波形,实现LED灯的流水效果。

三、实验器材1. 555定时器1片;2. LED灯8个;3. 电阻10kΩ8个;4. 电阻220Ω1个;5. 电阻1kΩ1个;6. 跳线若干;7. 电路板1块;8. 电源5V。

四、实验步骤1. 搭建电路:根据电路图,将555定时器、LED灯、电阻等元件按照电路图要求连接好。

2. 调试电路:将电源接入电路板,观察LED灯的流水效果。

3. 调整参数:通过调整电阻值,改变LED灯的亮灭时间,实现流水效果的调整。

4. 测试与验证:观察LED灯的流水效果,确保流水灯工作正常。

五、实验结果与分析1. 电路搭建成功,LED灯按照预定效果流水。

2. 通过调整电阻值,可以改变LED灯的亮灭时间,实现流水效果的调整。

3. 实验过程中,注意观察电路板的电压、电流等参数,确保电路安全稳定运行。

六、实验心得1. 通过本次实验,加深了对555定时器、LED灯等电子元件的理解,提高了动手实践能力。

2. 在电路搭建过程中,学会了如何根据电路图进行元件连接,提高了电路搭建速度。

3. 实验过程中,遇到问题及时查阅资料,学会了如何解决问题,提高了自学能力。

4. 通过本次实验,认识到电子电路在实际应用中的重要性,为今后的学习和工作打下了基础。

七、实验总结本次汽车流水灯实验,成功实现了LED灯的流水效果。

通过实验,掌握了汽车流水灯电路的设计原理、搭建与调试方法,提高了动手实践能力。

在今后的学习和工作中,将继续努力,不断提高自己的电子电路水平。

第2篇一、实验目的1. 熟悉汽车流水灯电路的基本组成和工作原理。

2. 掌握汽车流水灯电路的设计和制作方法。

流水灯实验报告

流水灯实验报告

[文档标题]一、 实验目的1. 初步熟悉并掌握keil uVision 的基本使用方法;2. 学习51单片机的内部电路和工作原理,并在以SST89E564RD 芯片为基础的单片机上实现简单逻辑的LED 的闪烁;3. 熟悉使用C 语言编程实现单片机程序的编写;二、 实验器材1. 安装keil uVision5 的笔记本电脑1台2. 以SST89E564RD 芯片为基础的单片机1个三、 实验原理(1)LED 显示器(数码管)的结构与原理1.数码管的结构LED 显示器(数码管)系发光器件的一种。

常用的LED 发光器件有两类:数码管和点阵。

数码管内部由七个条形发光二极管和一个小圆点发光二极管组成,根据各管的亮暗组合成字符。

常见数码管有10根管脚。

管脚排列如下图所示。

其中COM 为公共端,根据内部发光二极管的接线形式可分为共阴极和共阳极两种。

+5V ab fcg d e 3 COM e 1 d2 c 4 dp 5b 6a 7 8 f9 g 10 COM(a) (b) (c)使用时,共阴极数码管公共端接地,共阳极数码管公共端接电源。

每段发光二极管需5~10mA 的驱动电流才能正常发光,一般需加限流电阻控制电流的大小。

2. 数码管显示原理LED 数码管的a ~g 七个发光二极管。

加正电压的发光,加零电压的不能发光,不同亮暗的组合就能形成不同的字型,这种组合称为字型码。

管脚排列 共阴极数码管 共阳极数码管(2)keil uVision软件使用1.keil uVision简介Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。

Keil 提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(μVision)将这些部分组合在一起。

运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。

流水灯实验报告

流水灯实验报告

实验一流水灯实验一、实验目的(1)简单I/O引脚的输出(2)掌握软件延时编程方法(3)简单按键输入捕获判断二、实验实现的功能(1)按下KEY1键12个二极管点亮,并闪烁(2)按下KEY2键按照顺时循环依次针点亮发光二极管(3)按下KEY3键按照逆时针循环依次点亮发光二极管三、系统硬件设计(1)单片机最小系统部分(2)电源部分(3)人机界面部分二极管部分按键部分(4)串口通讯部分四、系统软件设计实验编程如下:#include <reg52.h>#include <intrins.h>#define uchar unsigned char#define uint unsigned intuchar tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xfb,0xf7,0xef,0xdf}; // 12支二极管顺时针点亮的代码uint i,j,k;uchar m,n;sbit H1=P3^6; //对应行1sbit H2=P3^7; //对应行2sbit L1=P0^5; //对应列sbit L2=P0^6;sbit L3=P0^7;/***延时函数***/void delay(uint k){uint i,j; //定义局部变量ijfor(i=0;i<k;i++) //外层循环{for(j=0;j<121;j++); //内层循环}}/*************闪烁******************/void shanshuo(){P2=0x00; // 12支二极管全亮P3=0x00;delay(500); //延时500毫秒P2=0xff; //12支二极管全灭P3=0xff;delay(500); // 延时500毫秒}/***************正转****************/void zhengzhuan(){m=0; //前8支二极管顺时针按方向依次点亮 for(j=0;j<8;j++){P2=tab[m];delay(300);m+=1;}P2=0xff;n=8; //后4支二极管顺时针方向依次点亮for(k=0;k<4;k++){P3=tab[n];delay(300);n+=1;}P3=0xff;}/***************反转*************/void fanzhuan(){n=11; //后4支二极管逆时针方向依次点亮 for(j=4;j>0;j--){P3=tab[n];delay(300);n--;}P3=0xff;m=7; //前8支二极管逆时针方向依次点亮 for(j=8;j>0;j--){P2=tab[m];delay(300);m--;}P2=0xff;}/**********按键扫描**********/void keyscan(){uchar temp=1;H1=0;H2=1;L1=1;L2=1;L3=1; //检测是否有按键按下if(L1==0)delay(5); //如果KEY1键按下,二极管闪烁 if(L1==0)while(temp){ H1=0;H2=1;L2=1;L3=1; //检测是否有按键按下temp=L2&L3;shanshuo();}if(L2==0)delay(5);//如果KEY2键按下,顺时针点亮if(L2==0)while(temp){ H1=0;H2=1;L1=1;L3=1; //检测是否有按键按下temp=L1&L3;zhengzhuan();}if(L3==0)delay(5); //如果KEY3键按下,二极管逆时针点亮if(L3==0)while(temp){ H1=0;H2=1;L1=1;L2=1; //检测是否有按键按下temp=L1&L2;fanzhuan();}}/***主函数***/main(){while(1){keyscan();}}五、实验过程中遇到的问题及解决方法(1)根据本实验硬件设计,要想点亮二极管,需要使与该二极管接通的管脚为低电平;(2)由于12支二极管前8支接在P2口,后4支接在P3口,故在正时针和逆时针依次点亮二极管时应注意P2口和P3口的衔接,如在正时针旋转时,第8个二极管点亮的语句是P2=tab[8],第9个二极管点亮的语句是P3=tab[9],所以在两个语句之间应加一句P2=0xff,使第8个二极管熄灭;(3)在写按键扫描程序时,在检测到有按键按下时,应加一条延时语句,否则按键的性能不稳定;(4)在循环时需注意循环条件,在keyscan()函数中,如果检测到有KEY1~3中有按键按下,则循环执行该按键的功能,直到有另外一个按键按下,则循环执行另外按键的功能。

多功能流水灯实验报告

多功能流水灯实验报告

多功能流水灯实验报告第一篇:多功能流水灯实验报告课程设计报告设计课题:多功能流水灯专业班级:学生姓名:指导教师:设计时间:题目多功能流水灯一、课程设计目的1、掌握数字系统的设计方法和测试方法。

二、课程设计题目(问题)描述和要求设计一个四模式三路彩灯(红、绿、黄三种颜色)显示系统。

该系统的显示模式由外部输入Z、Y控制,要求开机自动置入初态后便按规定模式循环运行。

设各路彩灯均为8个(红灯序号为r1-r8,绿灯序号为g1-g8,黄灯序号为y1-y8),各模式规定如下: XY=00时,系统的显示模式在以下六个节拍间循环:第一节拍,依次点亮奇号红灯(r1亮→r1、r3亮→r1、r3、r5亮→r1、r3、r5、r7亮),其余灯均灭。

第二节拍,依次点亮偶号红灯,其余灯均灭。

第三节拍,依次点亮奇号绿灯,其余灯均灭。

第四节拍,依次点亮偶号绿灯,其余灯均灭。

第五节拍,依次点亮奇号黄灯,其余灯均灭。

第六节拍,依次点亮偶号黄灯,其余灯均灭。

XY=01时,系统的显示在第一、二节拍间循环。

XY=10时,系统的显示在第三、四节拍间循环。

XY=11时,系统的显示在第五、六节拍间循环。

三、系统分析与设计根据课程设计题目问题描述和要求,完成:主要器件:绘制电路原理图:确定选用的元件及其封装形式,完善电路。

原理图设计过程:进行电子电路设计时,首先要有一个设计方案,而将电路设计方案表达出来的最好方法就是画出清晰、正确的电路原理图。

根据设计需要选择出元器件,并把所选用的元器件和相互之间的连接关系明确地列出,直观地表达出设计概念。

电路原理图的基本组成是电子元器件符号和连接导线,电子元器件符号包含了该元器件的功能,连接导线则包含了元器件的电气连接信息,所以电路原理图设计的质量好坏直接影响到PCB印制电路板的设计质量。

绘制原理图的两大原则:首先应该保证整个电路原理图的连线正确,信号流向清晰,便于阅读分析和修改;其次应该做到元器件的整体布局合理、美观、实用。

流水灯实验报告

流水灯实验报告

流水灯实验报告课程名称:LED流水灯实验报告学院:xxxxx学院专业:姓名:学号:年级:任课教师:【正文】一、实验的背景和意义单片机全称叫单片微型计算机,是一种集成在电路芯片,是采用大规模集成电路技术把CPU随机存储器RAM、只读存储器ROM、多种输入输出口、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。

目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的应用。

大致可以分为以下几个范畴: 1、在智能仪器仪表上的应用,例如精确的测量设备;2、在工业控制中的应用,例如用单片机可以构成形式多样的控制系统,与计算机互联网构成二级控制系统等;3、在家用电器中的应用,可以从手机、电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话、集群移动通信、无线电话对讲机等;4、在医用设备中的应用,例如医用呼叫机、各种分析仪、超声诊断设备及病床呼叫系统等等;5在各种大型电器中的模块化作用,如音乐集成单片机,看是简单的功能,微缩在电子芯片中,就需要复杂的类似于计算机的原理。

本设计着重在于分析计算器软件和开发过程中的环节和步骤,并从实践经验出发计算器设计做了详细的分析和研究。

本系统就是充分利用了8051芯片的I/O引脚。

系统已采用MCS—51系列单片机为中心器件来设计LED流水灯系统,实现LED左循环显示,并实现循环的速度可调。

二、设计目的1.学习基本理论在实践中综合运用的初步经验,掌握电路设计的基本方法、设计步骤,培养综合设计与调试能力。

2.掌握汇编语言程序和C 语言程序设计方法。

3.培养实践技能,提高分析和解决实际问题的能力。

三、设计任务及要求 1.用个发光二极管作为显示电路 2.实现LED 动态显示 3.能连续循环显示 四、 设计思路LEDLED如果要让接在P1.0口的LED1亮起来,相反,如果要让接在P1.0口的LED1熄灭,那么只需要把P1.0口的电平变为高电平就可以了;同理,接在P1.1—P1.7口的其他7个LED 的点亮的熄灭的方法同LED1。

流水灯实验报告

流水灯实验报告
C语言程序:
Keil编译和生成hex的过程:
电路仿真图:
实验结果及分析:
实现了单片机控制数码管的效果。
单片机C语言程序正确,编译正确,仿真正确。
成绩:
优(),良(),中(),合(),不合格()
实验
班级:
学号:
姓名:
日期:
实验目的:
利用单片机的P2.7口控制4颗数码管效果
编程指导(思路):
单片机控制LED灯流水灯的硬件电路,包括单片机、复位电路、时钟电路、电源及八颗LED发光二级管控制电路
流水灯是指按顺序依次点亮,反复循环,像流水一样,通过采用单片机的引脚控制八颗LED灯,实现流水灯的效果。

流水灯的实验

流水灯的实验

1.广告灯的左移右移1.实验任务做单一灯的左移右移,硬件电路如图4.4.1所示,八个发光二极管L1-L8分别接在单片机的P1.0-P1.7接口上,输出“0”时,发光二极管亮,开始时P1.0→P1.1→P1.2→P1.3→┅→P1.7→P1.6→┅→P1.0亮,重复循环。

2.电路原理图图4.4.13.系统板上硬件连线把“单片机系统”区域中的P1.0-P1.7用8芯排线连接到“八路发光二极管指示模块”区域中的L1-L8端口上,要求:P1.0对应着L1,P1.1对应着L2,……,P1.7对应着L8。

4.程序设计内容我们可以运用输出端口指令MOV P1,A或MOV P1,#DATA,只要给累加器值或常数值,然后执行上述的指令,即可达到输出控制的动作。

每次送出的数据是不同,具体的数据如下表1所示表15.程序框图图4.4.26.汇编源程序ORG 0START: MOV R2,#8MOV A,#0FEHSETB CLOOP: MOV P1,ALCALL DELAYRLC ADJNZ R2,LOOPMOV R2,#8LOOP1: MOV P1,A LCALL DELAYRRC ADJNZ R2,LOOP1LJMP STARTDELAY: MOV R5,#20 ; D1: MOV R6,#20D2: MOV R7,#248 DJNZ R7,$DJNZ R6,D2DJNZ R5,D1RETEND7. C语言源程序#include <AT89X51.H> unsigned char i; unsigned char temp; unsigned char a,b;void delay(void) {unsigned char m,n,s; for(m=20;m>0;m--)for(n=20;n>0;n--)for(s=248;s>0;s--); }void main(void){while(1){temp=0xfe;P1=temp;delay();for(i=1;i<8;i++) {a=temp<<i;b=temp>>(8-i);P1=a|b;delay();}for(i=1;i<8;i++) {a=temp>>i;b=temp<<(8-i);P1=a|b;delay();}}}2.多路开关状态指示1.实验任务如图4.3.1所示,AT89S51单片机的P1.0-P1.3接四个发光二极管L1-L4,P1.4-P1.7接了四个开关K1-K4,编程将开关的状态反映到发光二极管上。

LED流水灯实验报告

LED流水灯实验报告
RST/VPD:复位/备用电源线,可以使单片机处于复位工作状态,外接人工按钮复位。
EA/VPP允许访问片外存储器/编程电源线,他可控制单片机使用片内ROM还是还是使用片外ROM,若EA为1允许使用片内ROM,为0则允许使用片外ROM。
七、实验过程
下载程序:
程序下载成功
程序检测
新建文本文档(程序)
#include "reg52.h"
本设计着重在于分析计算器软件和开发过程中的环节和步骤,并从实践经验出发计算器设计做了详细的分析和研究。本系统就是充分利用了8051芯片的I/O引脚。系统已采用MCS—51系列单片机为中心器件来设计LED流水灯系统,实现LED左循环显示,并实现循环的速度可调。
二、设计目的
1.学习基本理论在实践中综合运用的初步经验,掌握电路设计的基本方法、设计步骤,培养综合设计与调试能力。
在此我们还需注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令时的时间很短,我们在控制二极管亮灭的时候应该延迟一段时间,否则我们就看不到“流水”的效果了。
五、模块介绍
采用AT89C51作为主控芯片,将P1分别接8个LED实现显示,采用汇编语言编程和C语言实现。方案框图如下:
图2.1
六、元件清单
元件
如果要让接在P1.0口的LED1亮起来,那么只需要把P1.0口的电平变为低电平就可以了;相反,如果要让接在P1.0口的LED1熄灭,那么只需要把P1.0口的电平变为高电平就可以了;同理,接在P1.1—P1.7口的其他7个LED的点亮的熄灭的方法同LED1。因此,只要使接在单片机上的八个LED灯在接通电源后除了最右端一个其余都亮,一秒后倒数第二个熄灭其余都亮,如此循环往复,就可以达到流水的效果。
AT89C51芯片外形结构和引脚分布图

LED流水灯实验报告

LED流水灯实验报告
#include "intrins.h"
#define uint unsigned int
void delays(uint z)
{
uint i,j;
for(i=z;i>0;i--)
for(j=110;j>0;j--);
}
void main()
{
uint temp1,temp2;
temp1=0x01;
如果要让接在P1.0口的LED1亮起来,那么只需要把P1.0口的电平变为低电平就可以了;相反,如果要让接在P1.0口的LED1熄灭,那么只需要把P1.0口的电平变为高电平就可以了;同理,接在P1.1—P1.7口的其他7个LED的点亮的熄灭的方法同LED1。因此,只要使接在单片机上的八个LED灯在接通电源后除了最右端一个其余都亮,一秒后倒数第二个熄灭其余都亮,如此循环往复,就可以达到流水的效果。
LED流水灯的设计报告
课程名称:LED流水灯设计
学院:大数据与信息工程学院
专业:
姓名:
学号:
年级:
任课教师:
一、实验的背景和意义
单片机全称叫单片微型计算机,是一种集成在电路芯片,是采用大规模集成电路技术把CPU随机存储器RAM、只读存储器ROM、多种输入输出口、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的应用。大致可以分为以下几个范畴: 1、在智能仪器仪表上的应用,例如精确的测量设备;2、在工业控制中的应用,例如用单片机可以构成形式多样的控制系统,与计算机互联网构成二级控制系统等;3、在家用电器中的应用,可以从手机、电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话、集群移动通信、无线电话对讲机等;4、在医用设备中的应用,例如医用呼叫机、各种分析仪、超声诊断设备及病床呼叫系统等等;5在各种大型电器中的模块化作用,如音乐集成单片机,看是简单的功能,微缩在电子芯片中,就需要复杂的类似于计算机的原理。

流水灯测试实验报告

流水灯测试实验报告

流水灯测试实验报告一、实验目的本实验旨在通过设计并搭建流水灯电路,并进行测试,验证电路设计的正确性和流水灯效果实现的可行性。

二、实验材料- Arduino开发板- 面包板- LED发光二极管- 杜邦线三、实验原理流水灯是一种常见的LED灯效,其通过一组LED灯依次点亮和熄灭,形成一个像水流般流动的效果。

本实验中,使用了Arduino开发板作为控制器,通过Arduino的数字IO口与LED发光二极管相连。

利用Arduino的高低电平输出和延时函数,我们可以控制LED的点亮和熄灭。

四、实验步骤1. 将Arduino开发板插入面包板的相应位置,并连接好电源。

2. 将LED发光二极管连接到面包板上,并与Arduino的数字IO口相连。

注意将正极连接到IO口,负极连接到GND。

3. 打开Arduino开发环境,新建一个项目。

4. 在项目中编写代码,利用Arduino的`digitalWrite()`函数控制IO口的高低电平,从而控制LED的点亮和熄灭。

代码示例如下:cint ledPin = 2; 定义LED灯所连接的IO口void setup() {pinMode(ledPin, OUTPUT); 将LED灯所连接的IO口设置为输出模式}void loop() {digitalWrite(ledPin, HIGH); 点亮LED灯delay(500); 延时500msdigitalWrite(ledPin, LOW); 熄灭LED灯delay(500); 延时500ms}5. 将Arduino开发板与计算机通过USB线连接,并上传代码到开发板中。

6. 测试LED灯是否按照预期效果点亮和熄灭。

若效果符合要求,则实验成功。

五、实验结果与分析经过实验,我们成功实现了流水灯的效果。

LED灯依次点亮和熄灭,形成了一个流动的效果。

通过调整延时函数的参数,我们可以改变LED灯点亮和熄灭的速度。

实验结果表明,所设计的电路和代码能够正确地控制LED灯的点亮和熄灭,实现了流水灯效果。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

青 岛 科 技 大 学微机原理与接口技术综合课程设计(报告)题 目 __________________________________指导教师__________________________ 学生姓名__________________________ 学生学号_________________________________________________________院(部)____________________________专业________________班______年 ___月 ___日直流电机控制综合实验 周艳平宋雪英 01 信息科学技术学院计算机科学与技术0961 2012 12 27摘要 (2)1、单片机概述 (2)2、仿真软件介绍 (2)3、需求分析 (3)一、课程设计目的 (3)二、课程设计要求 (4)三、实验内容 (4)1、设计任务与要求 (4)2、系统分析 (4)1).硬件电路设计(画出原理图、接线图) (5)2)软件框图 (7)3、用keil建项目流程 (8)4、程序清单 (9)4、系统调试 (11)四、设计总结(结论) (12)摘要近年来,随着电子技术和微型计算机的发展,单片机的档次不断提高,起应用领域也在不断的扩大,已在工业控制、尖端科学、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人信息终端及通信产品中得到广泛的应用、成为现代电子系统中最重要的智能化的核心部件。

而AT89C51就是其中一种,它是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMO8位微处理器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

本课程设计介绍一种LED小灯控制系统的设计方法,以单片机作为主控核心,与按键、排阻、电阻、电容等较少的辅助硬件电路相结合,利用软件实现对LED灯进行控制。

能够通过按键控制8个LED小灯从左到右依次点亮。

关键字:单片机、LED流水灯1、单片机概述单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。

单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。

通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O 接口电路等。

因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。

单片机经过1、2、3、3 代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU 功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。

2、仿真软件介绍(1).Keil uv3运行Keil uv3新建工程:菜单“Preject->New Preject”,保存为*.uv2,选择芯片型号,copy否新建文件:菜单“File->New”,保存为*.c,编写程序将源文件添加到工程:在左侧project workspace的source group1点右键选择addfile加入*.c设置工程:点菜单栏上的,选Target,设晶振值;选Output,点create Hex file以生成少些文件;选Debug,选择软件仿真(simulator)或硬件仿真(Keil Monitor)方式。

编译链接:点菜单栏上的进行编译,或点菜单栏上的进行编译链接,或点菜单栏上的进行重新编译链接,或点菜单栏上的停止编译。

编译链接后生成*.hex文件,可烧写到单片机。

(2).Proteus使用Proteus仿真点击单片机,在Program Files处选择*.hex文件,OK,进行仿真RESPACK--8排阻,就是好多电阻连载一起,有一个公共端,1端为公共端接VCC(上拉)或地(下拉)一般接在51单片机P0口,因P0口内没有上拉电阻,不能输出高电平,所以要接上拉电阻。

3、需求分析随着现代社会的发展,人们越来越追求审美和新颖,而流水灯就是其中一种,以前简单的照明工具变得越来越多样化,流水灯的千姿百态恰能给人一种视觉冲击,现在不管大街小巷我们都可以随处可见这种变幻万千的流水灯,而这种流水灯我们可以产用电子电路去设计,我们主要可以用装套控制器和状态译码器来实现灯光的流水效果,但是现在我们可以用单片机AT89C51来实现,因为其相对于电子电路有明显的优越性,控制硬件电路比较简单,软件方面程序也不复杂,因此制作的远离简单,但功能作用并不低于电子电路设计的,由于它的小巧方便、通俗易懂,所以我们往往采用单片机来做流水灯。

一、课程设计目的微机原理和接口技术是一门实践性强的学科,相关知识仅靠学习教科书不能很好的掌握,必须通过实践才能比较直观和深刻的理解。

在综合课程设计过程中,学生结合所学知识,选择一个综合性的设计题目,根据设计要求确定实验方案,选择合适的器件,进行电路设计,实现电路连接,编写调试程序,完成设计任务。

通过课程设计课程,可检验学生在微机原理与接口综合应用方面分析问题与解决问题的能力,从而帮助学生系统地掌握微机原理的接口技术的相关知识,达到将知识融会贯通的目的。

同时给学生提供更多、更好的训练机会,培养学生的创新能力。

二、课程设计要求综合利用微机原理与接口课程所学的各种知识,设计一套具有一定功能、实用价值的应用系统,(1)必须用和微机系统相关的知识设计题目;(2)确定设计任务后,明确题目要求,查找资料提出设计方案;(3)独立设计、编程、调试和验证所设计系统;(4)系统必须能够演示、运行或得到仿真结果;(5)完成设计任务后撰写课程设计报告;三、实验内容1、设计任务与要求设计任务:在AT89S52-Ⅰ开发板上实现8个发光LED“流水”的现象即8只LED左右来回点亮,并通过编写程序控制流水现象。

要求:点亮第一个流水灯,然后熄灭,接着点亮第二个流水灯,熄灭;点亮第三个,到最后点亮第八个灯,熄灭;点亮第七个灯,依次到第一个灯,然后循环实现流水。

程序利用循环移位函数_crol_和_cror_形成来回滚动的效果。

8只LED左右来回点亮:接在P0口的8个LED从左到右循环依次点亮,然后右到左循环依次点亮,产生左右循环走马灯效果2、系统分析MCS-51系列单片机有四组8位并行I/O口记作P0、P1、P2和P3。

每组I/O口内部都有8位数据输入缓冲器、8位数据输出锁存器及数据输出驱动等电路。

四组并行I/O端口即可以按字节操作又可以按位操作。

当系统没有扩展外部器件时I/O端口用作双向输入输出口当系统作外部扩展时使用P0、P2口作系统地址和数据总线、P3口有第二功能与MCS-51的内部功能器件配合使用。

以P1口为例:P1口的位结构作输出时输出0时将0输出到内部总线上在写锁存器信号控制下写入锁存器锁存器的反向输出端输出1下面的场效应管导通输出引脚成低电平。

输出1时下面的场效应管截止上面的上拉电阻使输出为1。

作输入时P1端口引脚信号通过一个输入三态缓冲器接入内部总线再读引脚信号控制下引脚电平出现在内部总线上。

I/O口的注意事项如果单片机内部有程序存贮器不需要扩展外部存贮器和I/O接口单片机的四个口均可作I/O口使用四个口在作输入口使用时均应先对其写“1”以避免误读P0口作I/O口用时应外接10K的上拉电阻其它口则可不必P2可某几根线作地址使用时剩下的线不能作I/O口线使用P3口的某些口线作第二功能时剩下的口线可以单独作I/O口线使用。

1).硬件电路设计(画出原理图、接线图)绘制流水灯原理图假设元器件参数为c1=c2=20pf、c3=10uf R1=R2=R3=R4=R5=R6=R7=R8=470欧姆、R9=10k欧姆晶振=12M;VCC=5V。

总电路图如图 1所示图1 流水灯原理图绘制流水灯接线图:图2绘制流水灯接线图2).选用AT89C51的引脚功能XTAL1:单芯片系统时钟的反向放大器输入端。

XTAL2:系统时钟的反向放大器输出端,一般在设计上只要在XTAL1和XTAL2上接上一只石英震荡晶体系统就可以工作了,此外可以在两引脚与地之间加入20PF的小电容,可以使系统更稳定,避免噪音干扰而死机。

RESET:重置引脚,高电平动作,当要对晶体重置时,只要对此引脚电平提升至高电平并保持两个及其周期以上的时间便能完成系统重置的各项动作,使得内部特殊功能寄存器内容均被设成已知状态。

P0:端口0是一个8位宽的开路汲汲双向输出入端口,共有8个位,表示0,表示1,以此类推。

P2:端口2是具有内部提升电路的双向I/O端口,每一个引脚可以推动4个LS的TTL负载,若将端口2的输出设为高电平时,此端口便能当成输入端口来使用。

4.说明如图所示,S1为复位开关,S2、S3、S4分别为切换不同流水效果的开关,P2口控制LED灯D1~D7的显示,P0口作为LED的输出控制。

当按下S2后能实现D1和D7同时亮其他不亮,然后D2和D6亮,依此类推。

当按下复位S1,然后按下S2实现LED灯从D7到D1循环亮,按下S1然后按下S3实现LED 从D1到D7的循环亮。

3)软件框图下面是8只LED左右来回点亮的流程图判断i是否小于7是P2的值向左循环移动结束8只LED左右来回点亮的程序流程图3、用keil 建项目流程1)、运行keil 2软件,启动后,点击Project菜单新建项目,新建项目后,选择为AT89C51的仿真单片机的型号,单击File选择New新建程序文件,保存后,右击Source Group1添加入程序文件。

2)、编写程序,右击Target 1打开设置输出HEX窗口,如图3所示:图 3 打开设置输出HEX窗口3)、设置输出HEX文件,勾选上Output下的Create HEX Fi:,单击确定保存,运行程序得到HEX文件,如图 4 所示:图4 设置输出HEX文件4、程序清单#include<>#include<>#define uchar unsigned char#define uint unsigned int//延时void DelayMS(uint x){uchar i;while(x--){for(i=0;i<120;i++);}}//主程序void main(){uchar i;P2=0x01;while(1){for(i=0;i<7;i++){P2=_crol_(P2,1); //P2 的值向左循环移动 DelayMS(150);}for(i=0;i<7;i++){P2=_cror_(P2,1); //P2 的值向右循环移动 DelayMS(150);}}}代码解释:(1)#include <>预处理命令,包含头文件,通用格式#include <>,类似的头文件,基本一样,只在使用时对位的定义不一样文件中对的操作是写成P1_1;文件中的操作则写成P1^1。

相关文档
最新文档