0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

带PWM的RGB LED色彩效果的制作

454398 来源:网络整理 作者:佚名 2019-11-11 11:11 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:获取组件

您需要什么:

Raspberry Pi 3(如果型号不同,也没什么不同)

RGB LED阴极或阳极

1 x 100 ohm和2 x 150 ohm电阻

Micro USB电缆2.5 A,5 V USB电源(对于RPi 3,它最多需要2.5 A,但是对于较旧的版本2 A就足够了)

SD

面包板

电缆或跳线-》在这种情况下,我建议使用雌雄跳线

步骤2:让我们从硬件开始

首先,让我们从硬件开始。对于硬件,必须确保使用的是RGB LED:阴极还是阳极?为此,您可以从根本上自己进行测试或咨询您的提供者。为了进行测试,只需将电缆连接到接地和3.3V引脚,然后将接地连接到RGB LED的长脚,再将3.3 V连接到任何其他脚。如果它点亮,则您的RGB LED为阴极RGB LED,如果不工作,则为阳极RGB LED。

最后,这两种类型的LED都是一样的,只是略有不同。使用共阴极LED,您必须将长脚接地(RPi 3的第6、9、14、20、25、30、34和39针),而将阳极LED则必须将其连接至5 V( RPi 3的第二或第四引脚)。如果您使用的是其他版本,唯一要做的就是打开RPi模型的“引脚列表”并检查RPi的5 V引脚。

对于红色,绿色和蓝色支脚,我选择了RPi 3的第20、21和22引脚。

您应该将rgb led的绿色引脚连接到GPIO 20,将红色引脚连接到GPIO 21,蓝色引脚连接到GPIO 22,但不直接连接到GPIO,从原理图上还可以看到,还必须连接电阻-红色100欧姆,绿色和蓝色150欧姆-然后,将RPi的GND直接连接到长脚如果使用共阴极,则为RGB LED的数量。否则,连接5 V而不是GND。您也可以使用不同的引脚,但是我为软件选择了它们。

为RPi 3接通电源后,您的硬件部分就完成了:)

在您的图片中可以看到,我没有使用任何电阻,这是因为我当前正在使用共阳极RGB LED,并且已将长脚直接连接到3.3V。

步骤3:继续使用软件

在我的RPi 3中,我使用Raspbian作为操作系统。我认为,这是查找来源的最简单的操作系统,也是最容易学习的操作系统。如果尚未上传,则可以从上面的链接中找到最新版本以及如何将其上传到RPi的指南。

https://www.raspberrypi.org/downloads/raspbian/

在此指导中,我更喜欢使用Python对RPi进行编程。它是一种易于读写的语言,非常适合包括我在内的初学者:)

对于使用Python进行编码,我更喜欢使用终端进行编程。您还可以使用Python 3或Python 2程序。但是从终端,我发现它更实用。如果您有其他意见,我想在评论中进行讨论:)

要开始编程,您应该打开终端屏幕并输入

nano rgbled.py

此命令将为您的RGB LED创建一个新的python文件。您也可以随意命名,我选择了此名称以使其与其他程序区分开。

您将看到空白页,用于编码。现在,这是您开始编写Python的部分。

这里是代码,此代码用于阴极RGB LED,因为它更常见且更易于使用,但我将为阳极做一些说明。 RGB LED,如果您无法使用代码启动程序,我也添加了Python文件,您也可以使用该文件:

#将RPi的引脚定义为Input/Output

import RPi.GPIO作为GPIO

#导入库以延迟命令。

导入时间

#用于GPIO编号

GPIO.setmode(GPIO.BCM)

#在您关闭时关闭警告编译代码GPIO.setwarnings(False)

RUNNING = True

#定义引脚

绿色= 20

红色= 21

blue = 22

#将引脚定义为输出

GPIO.setup(red,GPIO.OUT)

GPIO.setup (绿色,GPIO.OUT)

GPIO.setup(蓝色,GPIO.OUT)

#选择pwm的频率

频率= 100

#定义将要与PWM一起使用的引脚

RED = GPIO.PWM(red,Freq)

GREEN = GPIO.PWM(green,Freq)

BLUE = GPIO.PWM(blue,Freq)

尝试:

#我们在运行时从循环开始

#点亮针脚。 100表示将100%分配给该引脚

RED.start(100)

GREEN.start(1)

BLUE.start(1)

#对于阳极RGB LED用户,如果您也想从RED开始,唯一要做的就是将RED定义为1,将GREEN和BLUE定义为100。

对于x在范围内(1,101) ):

#用于更改PWM的宽度,此命令用于

GREEN.ChangeDutyCycle(x)

#对于阳极LED用户,只需更改x使用101-x

#并延迟时间。使用sleep。您可以通过从以下时间更改时间来改变颜色的持续时间

time.sleep(0.05)

对于x在范围(1,101):

红色.ChangeDutyCycle(101-x)

time.sleep(0.025)

for x in range(1,101)

GREEN.ChangeDutyCycle(101-x)

BLUE.ChangeDutyCycle(x)

time.sleep(0.025)

for x in range(1,101):

RED.ChangeDutyCycle (x)

time.sleep(0.025)

除了KeyboardInterrupt:

#这部分的目的是,当您中断代码时,它将停止while循环并关闭引脚,这意味着您的LED不再发光

RUNNING = False

GPIO.cleanup()

步骤4:运行代码

编写代码已完成。现在按CTRL + X退出代码,然后按Y保存代码。

您现在拥有一个Python代码,需要运行它。

要运行python代码,您需要输入终端:

sudo python RGBLED.py //或输入文件名而不是RGBLED

恭喜,您可以在这里完成所有操作!

这仅适用于一个RGB LED,仅用于查看可获得的颜色。您可以随时改进代码,并用颜色制作更多不同的东西。

我希望您喜欢并喜欢我的指导。我希望写更多关于我将来学到的东西以及分享我的项目的信息。

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    243

    文章

    24449

    浏览量

    687634
  • PWM
    PWM
    +关注

    关注

    116

    文章

    5848

    浏览量

    223889
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    FZH16 固定花样 6 通道LED流星雨显示效果驱动IC

    是固定花样 6 通道LED流星雨显示效果驱动IC。本产品内部自带振荡器,PWM输出进行灰度 渐变。上电复位后,输出PWM波形,进行 6 通道的LE
    发表于 11-14 09:34

    【EASY EAI Nano-TB(RV1126B)开发板试用】+GPIO及RGB_LED控制

    使用方法见图5所示。 图5 导出及删除引脚资源 为便于掌握GPIO的使用,将这3个GPIO引脚连接到RGB_LED上,以控制其色彩的变换效果。 图6 引脚连接 以使用引脚GPIO5_C0为例,要用它来控制
    发表于 10-29 23:03

    ‌LP5861 18通道RGB LED驱动器技术解析与应用指南

    Texas Instruments LP5861 18通道RGB LED矩阵驱动器设计用于使用LED矩阵以小尺寸解决方案来改善具有动画效果和指示功能的善用户体验。LP5861集成了18
    的头像 发表于 09-19 10:36 573次阅读
    ‌LP5861 18通道<b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>驱动器技术解析与应用指南

    ‌LP5520 RGB背光LED驱动器技术文档总结

    LP5520 是一款用于小型彩色 LCD 的 RGB 背光 LED 驱动器。与白色 LED 背光相比,RGB 背光可在显示屏上实现更好的色彩
    的头像 发表于 09-05 15:16 746次阅读
    ‌LP5520 <b class='flag-5'>RGB</b>背光<b class='flag-5'>LED</b>驱动器技术文档总结

    如何制作RGB565标志?

    如何制作RGB565标志?
    发表于 09-04 06:35

    LP5024 24通道I2C恒流RGB LED驱动器技术手册

    在智能家居和其他使用人机交互的应用中,需要高性能的 RGB LED 驱动器。闪烁、呼吸、追逐等LED动画效果极大地改善了用户体验,最小的系统噪音至关重要。 LP50xx 器件是一
    的头像 发表于 08-25 14:34 890次阅读
    LP5024 24通道I2C恒流<b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>驱动器技术手册

    LP5018/LP5024 LED驱动器技术文档总结

    在智能家居和其他使用人机交互的应用中,需要高性能的 RGB LED 驱动器。闪烁、呼吸、追逐等LED动画效果极大地改善了用户体验,最小的系统噪音至关重要。 LP50xx 器件是一
    的头像 发表于 08-25 14:21 841次阅读
    LP5018/LP5024 <b class='flag-5'>LED</b>驱动器技术文档总结

    LP5012 12通道I2C恒流RGB LED驱动器技术手册

    在智能家居和其他使用人机交互的应用中,需要高性能的 RGB LED 驱动器。闪烁、呼吸和追逐等 LED 动画效果极大地改善了用户体验,并且将系统噪音降至最低,这是必不可少的。 L
    的头像 发表于 08-25 11:18 680次阅读
    LP5012 12通道I2C恒流<b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>驱动器技术手册

    ‌LP5009/LP5012 RGB LED驱动器技术文档总结

    在智能家居和其他使用人机交互的应用中,需要高性能的 RGB LED 驱动器。闪烁、呼吸和追逐等 LED 动画效果极大地改善了用户体验,并且将系统噪音降至最低,这是必不可少的。 L
    的头像 发表于 08-25 11:13 778次阅读
    ‌LP5009/LP5012 <b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>驱动器技术文档总结

    如何使用 MS51 PWM 通过 UART 控制 RGB LED

    使用 MS51 PWM 通过 UART 控制 RGB LED
    发表于 08-20 07:24

    RGB LED 时尚照明控制器 skyworksinc

    电子发烧友网为你提供()RGB LED 时尚照明控制器相关产品参数、数据手册,更有RGB LED 时尚照明控制器的引脚图、接线图、封装手册、中文资料、英文资料,
    发表于 07-28 18:34
    <b class='flag-5'>RGB</b> <b class='flag-5'>LED</b> 时尚照明控制器 skyworksinc

    RGB接口设计注意事项

    设计对最终显示效果的决定性作用。其核心在于精准匹配同步信号极性与时序参数,这是实现画面稳定流畅、色彩真实饱满的技术基石。
    的头像 发表于 07-23 16:50 1081次阅读
    <b class='flag-5'>RGB</b>接口设计注意事项

    【沁恒CH585开发板免费试用体验】+PWM调节与彩灯渐变效果

    /Ncyc=Fsys/R8_PWM_CLOCK_DIV/Ncyc 为了使用PWM的调节功能与RGB彩色相配合来制作色彩渐变的效果,是选取3路
    发表于 07-06 23:11

    DCDC降压恒流芯片H6118惠海30V36v40V降12V 9V LED景观灯舞台灯专用

    出现色彩偏差或闪烁,提升视觉效果稳定性。 双调光模式灵活适配:PWM调光(支持高频响应)与模拟调光结合,可满足舞台灯光对“瞬间色彩切换”(如演唱会快节奏调光)和“渐变氛围营造”(如剧院
    发表于 07-03 09:03

    Texas Instruments LP5817 3通道RGB LED驱动器数据手册

    Texas Instruments LP5817 3通道RGB LED驱动器具有超低工作电流,关断模式下为0.1µA(典型值),启动设备时为0.15mA(典型值),照明LED时为0.2mA(典型值
    的头像 发表于 07-02 15:37 579次阅读
    Texas Instruments LP5817 3通道<b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>驱动器数据手册