目录

  • 一、参考
  • 二、目标
  • 三、理论学习
  • 四、实物图
  • 五、代码
    • 7色光切换
    • 颜色渐变

一、参考

  • Arduino火焰传感器(含代码)
  • 火焰传感器与 Arduino 连接

二、目标

驱动一颗RGB三基色LED产生七色光的变化

引脚最长的为共阳的正极,剩下3个分别为红色、绿色、蓝色。

三、理论学习

四、实物图

淘宝链接:https://item.taobao.com/item.htm?spm=a1z0d.7625083.1998302264.5.5c5f4e69AeWU7v&id=638544134425

五、代码

7色光切换


// 定义三基色
#define LED_R 6
#define LED_G 4
#define LED_B 5// 红、绿、蓝、黄、紫、青、白
enum{Color_R,Color_G,Color_B,Color_RG,Color_RB,Color_GB,Color_RGB};void setup()
{Serial.begin(115200);// 三基色pinMode(LED_R, OUTPUT); pinMode(LED_G, OUTPUT); pinMode(LED_B, OUTPUT); }int color_index = 0;
void loop()
{Change_Color(color_index);color_index++//if(color_index>7)if(color_index == Color_RGB+1){//color_index = 0;color_index = Color_R;}delay(1000);}// 切换颜色
void Change_Color(unsigned char data_color) {switch(data_color) {case Color_R: // 红色digitalWrite(LED_R, LOW);digitalWrite(LED_G, HIGH);digitalWrite(LED_B, HIGH);break;case Color_G: // 绿色digitalWrite(LED_R, HIGH);digitalWrite(LED_G, LOW);digitalWrite(LED_B, HIGH);break;case Color_B: // 蓝色digitalWrite(LED_R, HIGH);digitalWrite(LED_G, HIGH);digitalWrite(LED_B, LOW);break;case Color_RG: // 黄色digitalWrite(LED_R, LOW);digitalWrite(LED_G, LOW);digitalWrite(LED_B, HIGH);break;case Color_RB: // 紫色digitalWrite(LED_R, LOW);digitalWrite(LED_G, HIGH);digitalWrite(LED_B, LOW);break;case Color_GB: // 青色digitalWrite(LED_R, HIGH);digitalWrite(LED_G, LOW);digitalWrite(LED_B, LOW);break;case Color_RGB: // 白色digitalWrite(LED_R, LOW);digitalWrite(LED_G, LOW);digitalWrite(LED_B, LOW);break;default:break;} }

颜色渐变

参考:使用RGB共阳极LED,基于Arduino实现七彩渐变

需要把三根线接到板子带波浪线的引脚,比如3,,5,6
颜色值是从0~255

#define LED_R 3
#define LED_G 5
#define LED_B 6int PWMValue = 0void setup()
{// 初始化三个颜色都是不亮,都是低电平analogWrite(LED_R, 255);analogWrite(LED_G, 255);analogWrite(LED_B, 255);
}void loop()
{int i = 0;// 红色逐渐变亮PWMValue = 255;for(i = 0;i<255;i++){analogWrite(LED_R, PWMValue--);analogWrite(LED_G, 255);analogWrite(LED_B, 255);delay(10);}// 红色逐渐变暗PWMValue = 0;for(i = 0;i<255;i++){analogWrite(LED_R, PWMValue++);analogWrite(LED_G, 255);analogWrite(LED_B, 255);delay(10);}// 绿色逐渐变亮PWMValue = 255;for(i = 0;i<255;i++){analogWrite(LED_R, 255);analogWrite(LED_G, PWMValue--);analogWrite(LED_B, 255);delay(10);}// 绿色逐渐变暗PWMValue = 0;for(i = 0;i<255;i++){analogWrite(LED_R, 255);analogWrite(LED_G, PWMValue++);analogWrite(LED_B, 255);delay(10);}
}

ArduinoUNO实战-第十八章-三基色LED实现七彩色渐变相关推荐

  1. R语言实战-第十八章 R处理缺失数据的高级方法

    第18章 处理缺失数据的高级方法 # 目的:识别缺失数据:检查导致数据缺失的原因:删除包含的缺失值的实例或用合理的数值代替(插补)缺失值 #主要包: mice包 #主要数据集:VIM包中的sleep数 ...

  2. 17.三基色LED七彩跳变

    实验现象: 本实验使用UNO 驱动一颗RGB三基色LED产生七色光的变化.(引脚最长的为共阳的正极,剩下3个分别为红色.绿色.蓝色.) 理论学习: 三基色组合七色光原理: 红+绿=黄     绿+蓝= ...

  3. 数字图像处理:第十八章 彩色图象处理

    第十八章 彩色图象处理 目录 1.    引言 2.    彩色空间 3.    不同彩色空间之间的转换 4.    彩色图象的分割 作业 1.  引言 彩色图象是多光谱图象的一种特殊情况,对应于人类 ...

  4. dev c++怎么调试_「正点原子NANO STM32开发板资料连载」第十八章 USMART 调试组件...

    1)实验平台:ALIENTEK NANO STM32F411 V1开发板2)摘自<正点原子STM32F4 开发指南(HAL 库版>关注官方微信号公众号,获取更多资料:正点原子 第十八章 U ...

  5. 三个子系统_「正点原子Linux连载」第五十八章Linux INPUT子系统实验(一)

    1)实验平台:正点原子Linux开发板 2)摘自<正点原子I.MX6U嵌入式Linux驱动开发指南> 关注官方微信号公众号,获取更多资料:正点原子 第五十八章Linux INPUT子系统实 ...

  6. 嵌入式实时操作系统ucos-ii_「正点原子NANO STM32开发板资料连载」第三十八章 UCOSII 实验 3...

    1)实验平台:alientek NANO STM32F411 V1开发板2)摘自<正点原子STM32F4 开发指南(HAL 库版>关注官方微信号公众号,获取更多资料:正点原子 第三十八章 ...

  7. 【正点原子FPGA连载】 第二十八章OV5640 DP显示实验 摘自【正点原子】DFZU2EG_4EV MPSoC之嵌入式Vitis开发指南

    1)实验平台:正点原子MPSoC开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=692450874670 3)全套实验源码+手册+视频下载地址: h ...

  8. 【ALIENTEK 战舰STM32开发板例程系列连载+教学】第五十八章 UCOSII实验1-任务调度

    第五十八章 UCOSII实验1-任务调度 前面我们所有的例程都是跑的裸机程序(裸奔),从本章开始,我们将分3个章节向大家介绍UCOSII(实时多任务操作系统内核)的使用.本章,我们将向大家介绍UCOS ...

  9. 【正点原子STM32连载】第五十八章 USB虚拟串口(Slave)实验 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1

    1)实验平台:正点原子MiniPro H750开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=677017430560 3)全套实验源码+手册+视频 ...

  10. 【正点原子STM32连载】 第三十八章 红外遥控实验 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1

    1)实验平台:正点原子MiniPro H750开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=677017430560 3)全套实验源码+手册+视频 ...

最新文章

  1. vprintf() 函数的用法。
  2. Vuejs——组件——slot内容分发
  3. CentOS7 编译安装golang和rpm安装golang
  4. 带你自学Python系列(六):列表解析和列表切片
  5. 动手学深度学习(PyTorch实现)(七)--LeNet模型
  6. 游戏开发需要掌握的法则有哪些?
  7. 7-19 输出全排列 (20 分)
  8. Python实现股票数据下载工具
  9. 51单片机(二)—— 如何烧写51单片机程序
  10. x86 x64 x86_64 AMD64 区别
  11. 程序猿面试八股文分享~
  12. 邓俊辉数据结构学习心得系列——如何正确衡量一个算法的好坏
  13. RAC环境备份归档日志和恢复数据库方法
  14. 基于PL/SQL的数据库备份方法
  15. 严重: The web application [] appears to have started a thread named [Thread-
  16. 52数学能力测评历年真题及答案(五年级)
  17. 便利店的选址有什么诀窍吗?需要掌握哪些选址技巧?
  18. 最新可用版PanDownload网页端PHP系统源码
  19. 两栈共享空间 C语言实现
  20. 共享文件夹w7和服务器系统区别,w7服务器怎样共享文件夹共享文件夹

热门文章

  1. hdu 5145 NPY and girls 莫队
  2. js控制页面只刷新一次
  3. cron每小时执行一次_crontab每小时运行一次
  4. 使用nvim来代替VSCode,神操作
  5. android 积分墙广告平台有哪些,积分墙平台有哪些(全面解读积分墙)
  6. Java中.setvalue(-1)_Java State.setValue方法代碼示例
  7. 【日语】日语中各种句形的简体和敬体
  8. windows无法格式化u盘_U盘被写保护无法格式化怎么办?优盘无法格式化的解决办法...
  9. 揭秘淘宝用户增长全链路项目管理
  10. 调起百度地图客户端之导航功能