心形流水灯 STC89C52电子制作焊接套件单片机程序设计0_第1页
心形流水灯 STC89C52电子制作焊接套件单片机程序设计0_第2页
心形流水灯 STC89C52电子制作焊接套件单片机程序设计0_第3页
心形流水灯 STC89C52电子制作焊接套件单片机程序设计0_第4页
心形流水灯 STC89C52电子制作焊接套件单片机程序设计0_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、51单片机心形流水灯电路图说明:电路分两个部分:51单片机最小系统,31只LED 发光二极管 和限流电阻。U1采用 目前学习单片机最常用的STC89C52RC。P1是 USB B型座,主要是使用USB数据线方便的为电路提供 +5V 电源。S1 是具有自锁功能的 6脚的8X8 大小的 开关,用来控制电源的通断。C1、R9 构成单片机的自动上电复位。C2、C3、Y1 是单片机的振荡电路外接的起振电容和石英晶体。C4 电源退藕电容。S2 是轻触按钮开关,连接在 P3.2 / INT0 ,通过编程,可以调整设置切换心形流水灯的各种模式。P2 是4 Pin 插针,连接电源和P3.0、P3.1 ,可以用下

2、载线方便下载更新程序,可以不安装。D1D31 ,是31个3mm 红色发光二极管,在线路板上排列成心形,可以将发光颜色更换为其他颜色。R1R8、R10 R32 为限流电阻,控制通过二极管的电流,避免过大电流烧毁发光二极管。元件参数:D1D31 3mm 红色发光二极管R1R8、R10 R32 八分之一瓦电阻, 680欧姆U1 DIP40封装的STC89C52RC 单片机C1、C4 10uF/50V 电解电容C2、C330pF 瓷片电容Y1 11.0592MHz 晶振R9 4.7K 欧姆电阻元件放置分布图说明:在安装元件时,可以最先安装 LED 发光二极管,注意二极管的极性方向。新的二极管长引脚的电

3、极是阳极,如果剪过引脚,要是用万用表判断出来阴极和阳极。在Altium Designer的 PCB 图中,整个圆形中有切掉部分圆弧的一侧是阴极。如上图所示。底层布线连接图(底视)底层布线连接图(顶视)说明:焊接上元件后,先不要盲目的慌着剪去多余的过长引脚,可以考虑将长出的引脚折弯与其他含盘点相连。绕行元的,有交叉的可以考虑使用带绝缘的单芯镀锡线进行连接。具有5种模式轮流 显示的 心形流水灯 单片机 C51 源程序。#include sbit x1=P07;sbit x2=P06;sbit x3=P05;sbit x4=P04;sbit x5=P03;sbit x6=P02;sbit x7=P0

4、1;sbit x8=P00;sbit x9=P10;sbit x10=P11;sbit x11=P12;sbit x12=P13;sbit x13=P14;sbit x14=P15;sbit x15=P16;sbit x16=P17;sbit x17=P30;sbit x18=P31;sbit x19=P33;sbit x20=P34;sbit x21=P35;sbit x22=P36;sbit x23=P37;sbit x24=P20;sbit x25=P21;sbit x26=P22;sbit x27=P23;sbit x28=P24;sbit x29=P25;sbit x30=P26;s

5、bit x31=P27;void delay2ms()unsigned int i;i=12000;while(i-);void Mode_1()P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();P0=0;P1=0;P2=0;P3=0;delay2ms();P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();P0=0;P1=0;P2=0;P3=0;delay2ms();P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();x1 =0; delay2ms();x2 =0; delay2ms();

6、x3 =0; delay2ms();x4 =0; delay2ms();x5 =0; delay2ms();x6 =0; delay2ms();x7 =0; delay2ms();x8 =0; delay2ms();x9 =0; delay2ms();x10 =0; delay2ms();x11 =0; delay2ms();x12 =0; delay2ms();x13 =0; delay2ms();x14 =0; delay2ms();x15 =0; delay2ms();x16 =0; delay2ms();x31 =0; delay2ms();x30 =0; delay2ms();x29

7、 =0; delay2ms();x28 =0; delay2ms();x27 =0; delay2ms();x26 =0; delay2ms();x25 =0; delay2ms();x24 =0; delay2ms();x23 =0; delay2ms();x22 =0; delay2ms();x21 =0; delay2ms();x20 =0; delay2ms();x19 =0; delay2ms();x18 =0; delay2ms();x17 =0; delay2ms();x16 =0; delay2ms(); void Mode_2()P0=0xff;P1=0xff;P2=0xff

8、;P3=0xff;delay2ms();P0=0;P1=0;P2=0;P3=0;delay2ms();P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();P0=0;P1=0;P2=0;P3=0;delay2ms();P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();x16 =0; x17 =0; delay2ms();x15 =0; x18 =0; delay2ms();x14 =0; x19 =0; delay2ms();x13 =0; x20 =0; delay2ms();x21 =0; x12 =0; delay2ms

9、();x11 =0; x22 =0; delay2ms();x23 =0;x10 =0; delay2ms();x9 =0; x24 =0; delay2ms();x8 =0;x25 =0; delay2ms();x26 =0; x7 =0; delay2ms();x27 =0;x6 =0; delay2ms();x5 =0; x28 =0; delay2ms();x29 =0; x4 =0; delay2ms();x3 =0; x30 =0; delay2ms();x31 =0;x2 =0; delay2ms();x1 =0; delay2ms(); void Mode_3()P0=0xff

10、;P1=0xff;P2=0xff;P3=0xff;delay2ms();P0=0;P1=0;P2=0;P3=0;delay2ms();P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();P0=0;P1=0;P2=0;P3=0;delay2ms();P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();x1 =0; delay2ms();x2 =0; delay2ms();x3 =0; delay2ms();x4 =0; delay2ms();x5 =0; delay2ms();x6 =0; delay2ms();x7 =0; d

11、elay2ms();x8 =0; delay2ms();x9 =0; delay2ms();x10 =0; delay2ms();x11 =0; delay2ms();x12 =0; delay2ms();x13 =0; delay2ms();x14 =0; delay2ms();x15 =0; delay2ms();x16 =0; delay2ms();x16 =0; delay2ms(); x17 =0; delay2ms();x18 =0; delay2ms();x19 =0; delay2ms();x20 =0; delay2ms();x21 =0; delay2ms();x22 =0

12、; delay2ms();x23 =0; delay2ms();x24 =0; delay2ms();x25 =0; delay2ms();x26 =0; delay2ms();x27 =0; delay2ms();x28 =0; delay2ms();x29 =0; delay2ms();x30 =0; delay2ms();x31 =0; delay2ms();x1 =1; delay2ms();x2 =1; delay2ms();x3 =1; delay2ms();x4 =1; delay2ms();x5 =1; delay2ms();x6 =1; delay2ms();x7 =1; d

13、elay2ms();x8 =1; delay2ms();x9 =1; delay2ms();x10 =1; delay2ms();x11 =1; delay2ms();x12 =1; delay2ms();x13 =1; delay2ms();x14 =1; delay2ms();x15 =1; delay2ms();x16 =1; delay2ms();x16 =1; delay2ms(); x17 =1; delay2ms();x18 =1; delay2ms();x19 =1; delay2ms();x20 =1; delay2ms();x21 =1; delay2ms();x22 =1

14、; delay2ms();x23 =1; delay2ms();x24 =1; delay2ms();x25 =1; delay2ms();x26 =1; delay2ms();x27 =1; delay2ms();x28 =1; delay2ms();x29 =1; delay2ms();x30 =1; delay2ms();x31 =1; delay2ms(); void Mode_4()P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();P0=0;P1=0;P2=0;P3=0;delay2ms();P0=0xff;P1=0xff;P2=0xff;P3=0

15、xff;delay2ms();P0=0;P1=0;P2=0;P3=0;delay2ms();P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();x1 =0; delay2ms(); x2 =0; x31 =0; delay2ms();x3 =0; x30 =0; delay2ms();x4 =0; x29 =0; delay2ms();x5 =0; x28 =0; delay2ms(); x6 =0; x27 =0; delay2ms(); x7 =0; x26 =0; delay2ms();x8 =0; x25 =0; delay2ms();x9 =0; x

16、24 =0; delay2ms();x10 =0; x23 =0; delay2ms();x11 =0; x22 =0; delay2ms();x12 =0; x21 =0; delay2ms();x13 =0; x20 =0; delay2ms();x14 =0; x19 =0; delay2ms(); x15 =0; x18 =0; delay2ms();x16 =0; x17 =0; delay2ms(); void Mode_5()P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();P0=0;P1=0;P2=0;P3=0;delay2ms();P0=0

17、xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();P0=0;P1=0;P2=0;P3=0;delay2ms();P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();x1 =0; delay2ms();x2 =0; delay2ms();x3 =0; delay2ms();x4 =0; delay2ms();x1 =1;x5 =0; delay2ms();x2 =1;x6 =0; delay2ms();x3 =1;x7 =0; delay2ms();x4 =1;x8 =0; delay2ms();x5 =1;x9 =0; delay2

18、ms();x6 =1;x10 =0; delay2ms();x7 =1;x11 =0; delay2ms();x8 =1;x12 =0; delay2ms();x9 =1;x13 =0; delay2ms();x10 =1;x14 =0; delay2ms();x11 =1;x15 =0; delay2ms();x12 =1;x16 =0; delay2ms();x13 =1;x17 =0; delay2ms();x14 =1;x18 =0; delay2ms();x15 =1;x19 =0; delay2ms();x16 =1;x20 =0; delay2ms();x17 =1; x21 =

19、0; delay2ms();x18 =1; x22 =0; delay2ms();x19 =1; x23 =0; delay2ms();x20 =1;x24 =0; delay2ms();x21 =1;x25 =0; delay2ms();x22 =1;x26 =0; delay2ms();x23 =1; x27 =0; delay2ms();x24 =1;x28 =0; delay2ms();x25 =1; x29 =0; delay2ms();x26 =1; x30 =0; delay2ms();x27 =1; x31 =0; delay2ms();x28 =1; x1 =0; delay

20、2ms();x29 =1; x2 =0; delay2ms();x3 =0; delay2ms(); void Mode_6()P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();P0=0;P1=0;P2=0;P3=0;delay2ms();P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();P0=0;P1=0;P2=0;P3=0;delay2ms();P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay2ms();x1 =0; delay2ms(); x1 =1; x31 =0; x2 =0; dela

21、y2ms();x31 =1; x2 =1; x3 =0; x30 =0; delay2ms();x3 =1; x30 =1; x4 =0;x29 =0; delay2ms();x29 =1; x4 =1; x5 =0; x28 =0; delay2ms(); x5 =1; x28 =1;x6 =0;x27 =0; delay2ms(); x27 =1; x6 =1;x7 =0;x26 =0; delay2ms();x26 =1; x7 =1;x8 =0; x25 =0; delay2ms();x8 =1; x25 =1;x9 =0; x24 =0; delay2ms();x9 =1; x24

22、=1;x10 =0;x23 =0; delay2ms();x23 =1; x10 =1;x11 =0; x22 =0; delay2ms();x11 =1; x22 =1; x12 =0;x21 =0; delay2ms();x21 =1; x12 =1;x13 =0; x20 =0; delay2ms();x13 =1; x20 =1; x14 =0; x19 =0; delay2ms(); x14 =1; x19 =1; x15 =0; x18 =0; delay2ms();x15 =1; x18 =1;x16 =0; x17 =0; delay2ms();/2x1 =0; delay2m

23、s(); x1 =1; x31 =0; x2 =0; delay2ms();x31 =1; x2 =1; x3 =0; x30 =0; delay2ms();x3 =1; x30 =1;x29 =0; x4 =0; delay2ms();x29 =1; x4 =1; x5 =0; x28 =0; delay2ms(); x5 =1; x28 =1;x27 =0; x6 =0; delay2ms(); x27 =1; x6 =1;x26 =0; x7 =0; delay2ms();x26 =1; x7 =1;x8 =0; x25 =0; delay2ms();x8 =1; x25 =1;x9 =

24、0; x24 =0; delay2ms();x9 =1; x24 =1;x23 =0; x10 =0; delay2ms();x23 =1; x10 =1;x11 =0; x22 =0; delay2ms();x11 =1; x22 =1;x21 =0; x12 =0; delay2ms();x21 =1; x12 =1;x13 =0; x20 =0; delay2ms();x13 =1; x20 =1; x14 =0; x19 =0; delay2ms(); x14 =1; x19 =1; x15 =0; x18 =0; delay2ms(); /3x1 =0; delay2ms(); x1

25、 =1; x31 =0; x2 =0; delay2ms();x31 =1; x2 =1; x3 =0; x30 =0; delay2ms();x3 =1; x30 =1;x29 =0; x4 =0; delay2ms();x29 =1; x4 =1; x5 =0; x28 =0; delay2ms(); x5 =1; x28 =1;x27 =0; x6 =0; delay2ms(); x27 =1; x6 =1;x26 =0; x7 =0; delay2ms();x26 =1; x7 =1;x8 =0; x25 =0; delay2ms();x8 =1; x25 =1;x9 =0; x24

26、=0; delay2ms();x9 =1; x24 =1;x23 =0; x10 =0; delay2ms();x23 =1; x10 =1;x11 =0; x22 =0; delay2ms();x11 =1; x22 =1;x21 =0; x12 =0; delay2ms();x21 =1; x12 =1;x13 =0; x20 =0; delay2ms();x13 =1; x20 =1; x14 =0; x19 =0; delay2ms(); /4x1 =0; delay2ms(); x1 =1; x31 =0; x2 =0; delay2ms();x31 =1; x2 =1; x3 =0

27、; x30 =0; delay2ms();x3 =1; x30 =1;x29 =0; x4 =0; delay2ms();x29 =1; x4 =1; x5 =0; x28 =0; delay2ms(); x5 =1; x28 =1;x27 =0; x6 =0; delay2ms(); x27 =1; x6 =1;x26 =0; x7 =0; delay2ms();x26 =1; x7 =1;x8 =0; x25 =0; delay2ms();x8 =1; x25 =1;x9 =0; x24 =0; delay2ms();x9 =1; x24 =1;x23 =0; x10 =0; delay2

28、ms();x23 =1; x10 =1;x11 =0; x22 =0; delay2ms();x11 =1; x22 =1;x21 =0; x12 =0; delay2ms();x21 =1; x12 =1;x13 =0; x20 =0; delay2ms();/5x1 =0; delay2ms(); x1 =1; x31 =0; x2 =0; delay2ms();x31 =1; x2 =1; x3 =0; x30 =0; delay2ms();x3 =1; x30 =1;x29 =0; x4 =0; delay2ms();x29 =1; x4 =1; x5 =0; x28 =0; dela

29、y2ms(); x5 =1; x28 =1;x27 =0; x6 =0; delay2ms(); x27 =1; x6 =1;x26 =0; x7 =0; delay2ms();x26 =1; x7 =1;x8 =0; x25 =0; delay2ms();x8 =1; x25 =1;x9 =0; x24 =0; delay2ms();x9 =1; x24 =1;x23 =0; x10 =0; delay2ms();x23 =1; x10 =1;x11 =0; x22 =0; delay2ms();x11 =1; x22 =1;x21 =0; x12 =0; delay2ms();/6x1 =

30、0; delay2ms(); x1 =1; x31 =0; x2 =0; delay2ms();x31 =1; x2 =1; x3 =0; x30 =0; delay2ms();x3 =1; x30 =1;x29 =0; x4 =0; delay2ms();x29 =1; x4 =1; x5 =0; x28 =0; delay2ms(); x5 =1; x28 =1;x27 =0; x6 =0; delay2ms(); x27 =1; x6 =1;x26 =0; x7 =0; delay2ms();x26 =1; x7 =1;x8 =0; x25 =0; delay2ms();x8 =1; x

31、25 =1;x9 =0; x24 =0; delay2ms();x9 =1; x24 =1;x23 =0; x10 =0; delay2ms();x23 =1; x10 =1;x11 =0; x22 =0; delay2ms();/7x1 =0; delay2ms(); x1 =1; x31 =0; x2 =0; delay2ms();x31 =1; x2 =1; x3 =0; x30 =0; delay2ms();x3 =1; x30 =1;x29 =0; x4 =0; delay2ms();x29 =1; x4 =1; x5 =0; x28 =0; delay2ms(); x5 =1; x

32、28 =1;x27 =0; x6 =0; delay2ms(); x27 =1; x6 =1;x26 =0; x7 =0; delay2ms();x26 =1; x7 =1;x8 =0; x25 =0; delay2ms();x8 =1; x25 =1;x9 =0; x24 =0; delay2ms();x9 =1; x24 =1;x23 =0; x10 =0; delay2ms();/8x1 =0; delay2ms(); x1 =1; x31 =0; x2 =0; delay2ms();x31 =1; x2 =1; x3 =0; x30 =0; delay2ms();x3 =1; x30

33、=1;x29 =0; x4 =0; delay2ms();x29 =1; x4 =1; x5 =0; x28 =0; delay2ms(); x5 =1; x28 =1;x27 =0; x6 =0; delay2ms(); x27 =1; x6 =1;x26 =0; x7 =0; delay2ms();x26 =1; x7 =1;x8 =0; x25 =0; delay2ms();x8 =1; x25 =1;x9 =0; x24 =0; delay2ms();/9x1 =0; delay2ms(); x1 =1; x31 =0; x2 =0; delay2ms();x31 =1; x2 =1;

34、 x3 =0; x30 =0; delay2ms();x3 =1; x30 =1;x29 =0; x4 =0; delay2ms();x29 =1; x4 =1; x5 =0; x28 =0; delay2ms(); x5 =1; x28 =1;x27 =0; x6 =0; delay2ms(); x27 =1; x6 =1;x26 =0; x7 =0; delay2ms();x26 =1; x7 =1;x8 =0; x25 =0; delay2ms();/10x1 =0; delay2ms(); x1 =1; x31 =0; x2 =0; delay2ms();x31 =1; x2 =1;

35、x3 =0; x30 =0; delay2ms();x3 =1; x30 =1;x29 =0; x4 =0; delay2ms();x29 =1; x4 =1; x5 =0; x28 =0; delay2ms(); x5 =1; x28 =1;x27 =0; x6 =0; delay2ms(); x27 =1; x6 =1;x26 =0; x7 =0; delay2ms();/11x1 =0; delay2ms(); x1 =1; x31 =0; x2 =0; delay2ms();x31 =1; x2 =1; x3 =0; x30 =0; delay2ms();x3 =1; x30 =1;x

36、29 =0; x4 =0; delay2ms();x29 =1; x4 =1; x5 =0; x28 =0; delay2ms(); x5 =1; x28 =1;x27 =0; x6 =0; delay2ms(); /12x1 =0; delay2ms(); x1 =1; x31 =0; x2 =0; delay2ms();x31 =1; x2 =1; x3 =0; x30 =0; delay2ms();x3 =1; x30 =1;x29 =0; x4 =0; delay2ms();x29 =1; x4 =1; x5 =0; x28 =0; delay2ms(); /13x1 =0; dela

37、y2ms(); x1 =1; x31 =0; x2 =0; delay2ms();x31 =1; x2 =1; x3 =0; x30 =0; delay2ms();x3 =1; x30 =1;x29 =0; x4 =0; delay2ms();/14 x1 =0; delay2ms(); x1 =1; x31 =0; x2 =0; delay2ms();x31 =1; x2 =1; x3 =0; x30 =0; delay2ms();/15x1 =0; delay2ms(); x1 =1; x31 =0; x2 =0; delay2ms(); /16x1 =0; delay2ms(); voi

38、d main()while(1)Mode_1();Mode_2();Mode_3();Mode_4();Mode_5();Mode_6();博客中有大量单片机学习文章,有很多乐趣,也是对我的很好的支持。欢迎转发! 16X16点阵流动显示154和2个595驱动(51汇编)0629更新2(2013-12-20 20:57:00) 单片机控制二相步进电机正反转的仿真(51汇编)(2013-12-20 20:48:00) 51单片机099S正倒计时秒表(汇编)(2013-12-20 20:38:00) STC89C52RC单片机多种花样的流水灯(2013-12-6 9:11:00) 彩色灯光控制系统(

39、2013-11-10 23:04:00) 51单片机18B20测温,可怕的85度(2013-11-10 0:25:00) 最近浏览的电子制作方面单片机的文章(2013-11-6 8:02:00) 转电子工程师如何经营人脉(2013-10-18 13:49:00) TI的LDC真的会革传感器的命吗?(2013-9-21 16:59:00) 矩阵式键盘按键音-8051单片机C51语言实现(2013-2-1 12:12:00) 单片机接收PC发出的数据-8051单片机C51语言实现(2012-12-25 19:21:00) 数码时钟设计-8051单片机C51语言实现(2012-12-25 19:13:00) 矩阵式键盘按键音-8051单片机C51语言实现(2012-12-25 19:10:00) 单片机试卷1(2012-12-23 19:13:00) 单片机试卷1(2012-12-23 19:12:00) KS0107KS0108控制的19264液晶驱动程序C51示例(2012-12-16 10:1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论