基于51单片机的花样流水灯设计
文章目录
- 一、前言
- 二、模块介绍及原理说明
- 三、硬件连接
- 四、程序说明
- 五、效果演示
- 六、代码链接
一、前言
花样流水灯就是让LED灯按照一定规律进行各种变化,流水灯在生活中也随处可见,例如在建筑物的棱角上装上流水灯,可以起到变换闪烁达到美不胜收的效果。此设计使用16个LED灯,有四种花样,循环往复显示,每隔15S左右的时间进行一次花样变换。也可手动切换花样。单片机系统装有按键复位电路可直接复位电路。
二、模块介绍及原理说明
单片机最小系统:
单片机最小系统完成系统运行的最基本电路,单片机最小系统可配合其他模块或自行搭建电路完成各种实验功能,单片机最小系统接口设计灵活,电路简洁,可完成基本的驱动任务。单片机最小系统包括晶振电路、复位电路。复位电路我使用按键复位,方便系统的重启。
三、硬件连接
本设计使用P0、P2控制LED灯由于LED灯所需电量少,所以不需要加驱动就可以完成显示。P3^0为按键控制端口,用于控制花样灯的切换。
仿真连接
实物连接
四、程序说明
主程序,用以调用不同的函数。
main()
{Timer0Init(); //定时器0初始化P2=0x00;//端口初始化P0=0x00;while(1){key(); if(num==0){P2=0x00;P0=0x00;}else if(num==1)num1();//花样一else if(num==2) num2(); //花样二else if(num==3)num3();else if(num==4) num4(); }
}
定时器函数,用来控制不同花样切换的时间,更加准确,此设计控制每种花样的显示时间为15S,可根据喜好自己调节。
void Timer0() interrupt 1
{TH0=(65536-6000)/256; //给定时器赋初值,定时10msTL0=(65536-6000)%256;ssec++;if(ssec>=100) //毫秒 时钟{ssec=0;sec++; if(sec>=15) //秒{sec=0;num++;}if(num==5)num=1;}
}
花样表格函数,将各种花样流水灯分开放入表格中,在主函数中进行调用。通过查表的方式显示各种花样,实用性更强,在花样较多时也方便进行管理。花样相对简单,可自己进行编写。
unsigned char code seg1[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0xff,0x00,0x00,0x55,0x55,0xaa,0xaa}; //第一种unsigned char code seg2[]={0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff};
unsigned char code seg3[]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff,}; //第二种unsigned char code seg4[]={0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff,0xff,0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01};
unsigned char code seg5[]={0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff,0xff,0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01}; //第三种
unsigned char code seg6[]={0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x00,0x00,0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x00,0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x81,0x82,0x84,0x88,0x90,0xa0,0xc0,0xc1,0xc2,0xc4,0xc8,0xd0,0xe0,0xe1,0xe2,0xe4,0xe8,0xf0,0xf1,0xf2,0xf4,0xf8,0xf9,0xfa,0xfc,0xfd,0xfe,0xff};
unsigned char code seg7[]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x81,0x41,0x21,0x11,0x09,0x05,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x83,0x43,0x23,0x13,0x0b,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x87,0x47,0x27,0x17,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x8f,0x4f,0x2f,0x1f,0x1f,0x1f,0x1f,0x1f,0x1f,0x1f,0x1f,0x1f,0x9f,0x5f,0x3f,0x3f,0x3f,0x3f,0x3f,0x3f,0x3f,0x3f,0x3f,0xbf,0x7f,0x7f,0x7f,0x7f,0x7f,0x7f,0x7f,0x7f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,}; //第四种
按键函数,可以通过按键进行LED灯花样的切换,按键函数中需要加入消抖函数,以防止按键误触。
void key()
{if(key1==0) //按键控制{delay(10);if(key1==0){num++;if(num==5) num=0;}while(!key1); //检测按键是否松开}}
五、效果演示
仿真演示
花样流水灯仿真演示
实物演示
基于51单片机的花样流水灯实物演示
六、代码链接
欢迎留言评论分享自己的看法,如有错误欢迎指正。关注公众号:“小小创客者”回复“花样流水灯“获得源码及仿真。
基于51单片机的花样流水灯设计相关推荐
- 基于51单片机的花样流水灯设计(源码+仿真+设计报告)
资料编号:113 采用51单片机的IO控制多个LED灯,实现多种模式的流水风,全套资料齐全:具体功能请看下方演示视频 113-基于51单片机的花样流水灯设计(源码+仿真+设计报告) 单片机最小系统介绍 ...
- 基于51单片机的八位流水灯(三种形式)
写一下寒假做的51小项目. 基本项目 基于AT89C51的流水灯:流水灯共八个,可以实现交替闪烁,一起闪烁,左右流水灯等效果. 模式一:按动key1,实现1,3,5,7和2,4,6,8交替闪烁: 模式 ...
- 基于51单片机的特殊流水灯——中间向两边流动
这是在学校嵌入式应用协会中开学考核的一道题目,具体如下:按下独立按键K1设置led流水灯,从中间向两边流动,后8个流水灯同时进行闪烁,并使用独立按键K2控制流水灯2级变速. 我对题目的理解比较简单粗暴 ...
- 基于51单片机的LED呼吸灯设计(定时器)
定时器实现led呼吸灯 实验原理: 灯在高速闪烁时,光信号传入大脑神经,需经过一段短暂的时间,光的作用结束后,视觉形象并不立即消失.每次循环时,前半部分先让亮的时间逐渐增加,暗的时间逐渐减小:后半部分 ...
- 51单片机LED花样流水灯实验
#include <reg52.h> typedef unsigned char u8; typedef unsigned int u16; void delay(u16 t) //延时 ...
- 基于51单片机多功能智能台灯设计 视力灯 坐姿矫正套件 台灯 人体感应 包括实物+电路原理图+程序+proteus仿真
基于51单片机多功能智能台灯设计 视力灯 坐姿矫正套件 台灯 人体感应 包括实物+电路原理图+程序+proteus仿真 ID:69100646120443268太白路自信的桔梗
- 【DIY】多模式51单片机心形流水灯+呼吸灯+蜂鸣器音乐
目录: 总体设计 1.基础硬件DIY设计 1)整体原理图 2)PCB电路 3)3D_PCB 2.单片机程序设计 1)呼吸灯[简易模拟PWM] 2)蜂鸣器音乐 3)几种简易流水灯方式 3.效果展示 1) ...
- 基于51单片机的酒精浓度检测仪设计
本设计仅供参考 基于51单片机的酒精浓度检测仪设计(proteus仿真+程序+原理图+报告) 原理图:Altium Designer 仿真:proteus 8.9 程序编译器:keil 4/keil ...
- 基于51单片机的智能家居的设计(一)
基于51单片机的智能家居的设计初级版本 项目简介: 该项目可以通过单片机烧写软件发送指令并实现大厅灯跟卧室灯的亮灭.该项目分为四个等级: 1.在单片机烧写软件上面发送指令实现灯的亮灭: 2.用语音模块 ...
最新文章
- DJango操作MySQL数据库
- .net程序员转战android第一篇---环境部署
- CA计划6.14亿美元收购安全测试公司Veracode
- python编码解码单词_在使用w2v时python中的编码问题
- 高校里的“内卷”能有多少种操作?
- mysql max字符串报错_mysql [Warning] max_join_size报错问题解决办法
- 数据源管理 | 搜索引擎框架,ElasticSearch集群模式
- Word英文句子之间空两格的方法,有截图
- mysql安装,数据库连接
- 使用 Socket 通信实现 FTP 客户端程序
- 网页鼠标指针样式(cursor属性)
- 2021软件评测师考试大纲(清华出版社2021.7第1次印刷)
- 【模拟电路知识】运算放大器没有反馈电路——做电压比较器应用
- 小米蓝牙耳机持续白灯_小米蓝牙耳机不能自动串联问题
- 每日一记—蓝牙模块应用(一)
- 凡刻(Fenke)FK169机械手表测评
- 上海交大计算机系分数线2019,2019年上海部分高校各专业录取分数线汇总|附2019上海交通大学上海生源情况!...
- SpringBoot 自动装配原理解析
- 微信小程序中图片压缩的最佳实现与封装
- 【57期分享】4款毕业答辩PPT模板免费下载
热门文章
- 职场指南,如何当一个不背锅的人?
- 选购笔记本电脑型号的查询
- kepware KEPServerEX与欧姆龙NX系列PLC通讯-Omron NJ Ethernet
- Windows系统下载SRA数据,使用sratoolkit工具
- 叶问短线绝招之拨云见日
- WIN二种安装方式UEFI和BIOS方式引导修复
- 2023新年红包,兔年HTML红包页面代码【2023新年快乐_附源码】
- Zabbix分布式部署
- 在Home Assistant中配置天气信息
- 小学教师资格证计算机知识,小学老师教师资格证复习内容是什么 小学教师资格证考试笔试必备知识点...