ARDUINO UNO 12颗LED超酷流水灯效果

效果代码:
#define t 30
#define t1 20
#define t2 100
#define t3 50
void setup() {
// set up pins 2 to 13 as outputs
for (int i = 2; i <= 13; i++) {
pinMode(i, OUTPUT);
}
}
/Effect 1
void loop()
{
effect_1();
effect_1();
effect_2();
effect_2();
effect_3();
effect_3();
effect_4();
effect_4();
effect_5();
effect_5();
effect_6();
effect_6();
effect_7();
effect_7();
}
//左到右右到左
void effect_1()
{
for(int i=2; i<14; i++){
digitalWrite(i, HIGH);
delay(t1);
digitalWrite(i+1, HIGH);
delay(t1);
digitalWrite(i+2, HIGH);
delay(t1);
digitalWrite(i, LOW);
delay(t1);
digitalWrite(i+1, LOW);
delay(t1);
}
for(int i=13; i>1; i--){
digitalWrite(i, HIGH);
delay(t1);
digitalWrite(i-1, HIGH);
delay(t1);
digitalWrite(i-2, HIGH);
delay(t1);
digitalWrite(i, LOW);
delay(t1);
digitalWrite(i-1, LOW);
delay(t1);
}
}
/Effect 2
void effect_2()
{
int count = 13; // keeps track of second LED movement
// 将第一个 LED 从左向右移动,第二个 LED 从右向左移动
for (int i = 2; i < 13; i++) {
clear();
digitalWrite(i, HIGH); // chaser 1
digitalWrite(count, HIGH); // chaser 2
count--;
// 停止 LED ,静止在中间
if (count != 7) {
delay(t2);
}
}
// 将第一个 LED 从右向左移动,将第二个 LED 从左向右移动
for (int i = 13; i > 2; i--) {
clear();
digitalWrite(i, HIGH); // chaser 1
digitalWrite(count, HIGH); // chaser 2
count++;
// 停止 LED ,静止在中间
if (count != 8) {
delay(t2);
}
}
}
Effect 3
void effect_3()
{
for(int i=2; i<14; i++){
digitalWrite(i, HIGH);
delay(t3);
}
for(int i=2; i<14; i++){
digitalWrite(i, LOW);
delay(t3);
}
for(int i = 14; i>=2; i--){
digitalWrite(i, HIGH);
delay(t3);
}
for(int i = 14; i>=2; i--){
digitalWrite(i, LOW);
delay(t3);
}
}
///Effect 4
void effect_4()
{
for(int j = 2; j <= 13; j++){
digitalWrite(j, HIGH);
delay(t2);
j=j+1;
}
for(int j = 2; j <= 13; j++){
digitalWrite(j, LOW);
delay(t2);
}
for(int k = 15; k > 2; k--){
digitalWrite(k, HIGH);
delay(t2);
k=k-1;
}
for(int k = 15; k > 2; k--){
digitalWrite(k, LOW);
delay(t2);
}
}
//Effect 5
void effect_5()
{
clear();
for (int i = 2; i < 13; i++) {
for (int pin = 13; pin >= i; pin--)
{
digitalWrite(pin, HIGH);
delay(t1);
digitalWrite(pin + 1, LOW);
delay(t1);
}
}
}
/Effect 6
void effect_6()
{
for(int j=2; j<14; j++){
digitalWrite(j, LOW);
delay(t);
digitalWrite(j, HIGH);
delay(t);
digitalWrite(j-2, LOW);
delay(t);
digitalWrite(j, HIGH);
}
for(int k = 15; k>2; k--){
digitalWrite(k, LOW);
delay(t);
digitalWrite(k, HIGH);
delay(t);
digitalWrite(k+2, LOW);
delay(t);
digitalWrite(k, HIGH);
}
for(int k = 2; k<14; k++){
digitalWrite(k, LOW);
delay(t);
digitalWrite(k, HIGH);
delay(t);
digitalWrite(k-2, LOW);
delay(t);
digitalWrite(k, HIGH);
}
for(int k = 15; k>2; k--){
digitalWrite(k, LOW);
delay(t);
digitalWrite(k, HIGH);
delay(t);
digitalWrite(k+4, LOW);
delay(t);
digitalWrite(k, HIGH);
}
for(int k = 2; k<14; k++){
digitalWrite(k, LOW);
delay(t);
digitalWrite(k, HIGH);
delay(t);
digitalWrite(k-4, LOW);
delay(t);
digitalWrite(k, HIGH);
}
}
///Effect 7
void effect_7()
{
for(int j=2; j<14; j++){
digitalWrite(j, HIGH);
delay(t);
digitalWrite(j+2, LOW);
delay(t);
}
for(int k = 15; k>2; k--){
digitalWrite(k, HIGH);
delay(t);
digitalWrite(k+2, LOW);
delay(t);
}
}
// function to switch all LEDs off
void clear(void)
{
for (int i = 2; i <= 13; i++) {
digitalWrite(i, LOW);
}
}
相关文章:
ARDUINO UNO 12颗LED超酷流水灯效果
效果代码: #define t 30 #define t1 20 #define t2 100 #define t3 50 void setup() { // set up pins 2 to 13 as outputs for (int i 2; i < 13; i) { pinMode(i, OUTPUT); } } /Effect 1 void loop() { effect_1(); effect_1(); effect_…...
Linux下查看pytorch运行时真正调用的cuda版本
一般情况我们会安装使用多个cuda版本。而且pytorch在安装时也会自动安装一个对应的版本。 正确查看方式: 想要查看 Pytorch 实际使用的运行时的 cuda 目录,可以直接输出 cpp_extension.py 中的 CUDA_HOME 变量。 import torch import torch.utils imp…...
分享mfc140u.dll丢失的解决方法,针对原因解决mfc140u.dll丢失的问题
作为电脑小白,如果电脑中出现了mfc140u.dll丢失的问题,肯定会比较的慌乱。但是出现mfc140u.dll丢失的问题,其实也有很简单的办法,所以大家不用慌张,接下来就教大家解决办法,能够有效的解决mfc140u.dll丢失的…...
torch_cluster、torch_scatter、torch_sparse三个包的安装
涉及到下面几个包安装的时候经常会出现问题,这里我使用先下载然后再安装的办法: pip install torch_cluster pip install torch_scatter pip install torch_sparse 1、选择你对应的torch版本:https://data.pyg.org/whl/ 2、点进去然后&…...
软件安利——火绒安全
近年来,以优化、驱动、管理为目标所打造的软件屡见不鲜,大同小异的电脑管家相继走入了公众的视野。然而,在这日益急功近利的社会氛围驱动之下,真正坚持初心、优先考虑用户体验的电脑管家逐渐湮没在了浪潮之中。无论是鲁大师&#…...
Induced AI:一个专门为自动化任务而设计的AI原生浏览器RPA平台
内容来源:xiaohuggg Induced AI:一个专门为自动化任务而设计的AI原生浏览器RPA平台 刚刚获得OpenAI CEOsama的个人投资! 它能够模拟人类浏览网页的行为,自动化地浏览网页,搜集关键信息,并对这些信息进行…...
vue3中使用reactive定义的变量响应式丢失问题(大坑!!!)
前言 在Vue 3中,可以使用reactive函数将普通JavaScript对象转换为响应式对象,这样当对象的属性发生变化时,就会自动更新相应的UI。 但是请注意以下情况可能会丢失数据的响应式: 响应式丢失的情况: 1、对使用reactiv…...
Windows Server 2012 R2系统服务器远程桌面服务多用户登录配置分享
Windows Server 2012系统在没有安装远程多界面的情况下,最多只能同时运行2个远程桌面,如果是有多个技术员、合伙人同时操作或是像游戏开发需要用到多界面,但是没有安装就很不方便,今天飞飞来和你们分享Windows server 2012R2系统远…...
mysql之搭建MHA架构实现高可用
1、定义 全称是masterhigh avaliabulity。基于主库的高可用环境下可以实现主从复制及故障切换(基于主从复制才能故障切换) MHA最少要求一主两从,半同步复制模式 2、作用 解决mysql的单点故障问题。一旦主库崩溃,MHA可以在0-30…...
Databend 与海外某电信签约:共创海外电信数据仓库新纪元
为什么选择 Databend 海外某电信面临的主要挑战是随着业务量的增加,传统的 Clickhouse Hive 方案在数据存储和处理上开始显露不足。 原来的大数据分析采用的 Clickhouse Hive 方案进行离线的实时报表。但随着业务量的上升后,Hive的数据存储压力变大&…...
scala解析命令行参数
如何用scala解析命令行参数: 首先,需要在项目中添加Apache Commons CLI库的依赖。可以在build.sbt文件中添加如下行: libraryDependencies "commons-cli" % "commons-cli" % "1.4" import org.apache.comm…...
盘点60个Python各行各业管理系统源码Python爱好者不容错过
盘点60个Python各行各业管理系统源码Python爱好者不容错过 学习知识费力气,收集整理更不易。 知识付费甚欢喜,为咱码农谋福利。 源码下载链接:https://pan.baidu.com/s/1VdAFp4P0mtWmsA158oC-aA?pwd8888 提取码:8888 项目名…...
SpringSecurity6 | 自动配置(下)
✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉 🍎个人主页:Leo的博客 💞当前专栏: Java从入门到精通 ✨特色专栏…...
6、传统CV之均值滤波
在前5节,从最基础的像素开始了介绍,并且着重介绍了像素局部性、RGB图片和YUV图片以及通道的概念。 其实写那么多,很多细节知识也不用都学会,只需要知道计算机在处理图片时,看到的都是一堆像素,而这一堆像素,都是以数据点的形式存放在计算机中的。 为了更好的展示图像和…...
快速搭建本地的chatgpt
快速搭建本地的chatgpt 参考:一篇文章教你使用Docker本地化部署Chatgpt(非api,速度非常快!!!)及裸连GPT的方式(告别镜像GPT)-CSDN博客 前提是linux下 已安装docker 命…...
分布式下多节点WebSocket消息收发
1、使用场景 2、疑问 第一次发送请求后,通过N1,W2,到达service2,建立websocket连接。 1、接下来发送的消息,通过Ngixn后和网关gateway后还能落在service2上面吗? 如果不能落在service2上,需要怎…...
LeetCode算法题解(动态规划)|LeetCode509. 斐波那契数、LeetCode70. 爬楼梯、LeetCode746. 使用最小花费爬楼梯
一、LeetCode509. 斐波那契数 题目链接:509. 斐波那契数 题目描述: 斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:…...
【图像处理】:Otsu算法最大类间方差法(大津算法:附源码)
这里写自定义目录标题 数学原理算法评价参考链接 数学原理 以灰度图像为例,对于图像MN大小的矩阵,即图像中的像素,每一个值即为像素值,其中灰度图像像素值在(0~255)之间。 主要实现前景(即目标)和背景的分割: 主要公式…...
【uni-app】设置背景颜色相关
1. 全局页面背景色设置: 在App.vue的style样式表中设置 <style> page {background-color: #F0AD4E; } </style> 2. 顶部导航栏背景色设置: 在pages.json页面路由中,globalStyle设置 "globalStyle": {"navi…...
工厂模式-C++实现
工厂模式是一个创建型设计模式,即“对象创建模式”,通过这种模式可以绕开new,来避免对象创建过程中,也就是new的方法造成的紧耦合,从而支持对象创建的稳定。 工厂模式中引入了一个工厂类,该工厂负责根据客…...
[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?
🧠 智能合约中的数据是如何在区块链中保持一致的? 为什么所有区块链节点都能得出相同结果?合约调用这么复杂,状态真能保持一致吗?本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里…...
label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...
Unity3D中Gfx.WaitForPresent优化方案
前言 在Unity中,Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染(即CPU被阻塞),这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案: 对惹,这里有一个游戏开发交流小组&…...
PHP和Node.js哪个更爽?
先说结论,rust完胜。 php:laravel,swoole,webman,最开始在苏宁的时候写了几年php,当时觉得php真的是世界上最好的语言,因为当初活在舒适圈里,不愿意跳出来,就好比当初活在…...
AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...
【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)
服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...
基于数字孪生的水厂可视化平台建设:架构与实践
分享大纲: 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年,数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段,基于数字孪生的水厂可视化平台的…...
从零实现STL哈希容器:unordered_map/unordered_set封装详解
本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说,直接开始吧! 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...
