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

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

3天内不再提示

YouTube桌面通知器的制作

454398 来源:工程师吴畏 2019-08-26 17:04 次阅读

步骤1:硬件要求 - 1

YouTube桌面通知器的制作

对于这个项目,我们需要混合使用电子元件和木工工具。

电子元件包括:

A Perfboard

NodeMCU

220v AC至5v DC降压降压模块

蜂鸣器屏蔽或蜂鸣器和100Ω电阻器

SPDT开关

4 x TM1637 4位数字7段显示器

多个彩色LED和等量的220Ω电阻

连接电缆很少

用于上传代码的USB电缆

和常规焊接设备

步骤2:硬件要求 - 2

对于我们需要的工作位:

Palate Wood

铅笔

卷尺

手/剁锯

锤子

钉子

砂光工具

和个人用于木材切割的防护设备(PPE)

我正在用托盘木材制作外壳,因为我的其他DIY木工项目留下了一大堆托盘。您也可以用纸板或塑料容器制作盒子并涂上它以使其看起来很酷。

第3步:主题覆盖

第4步:计划

计划是制作一个24厘米x 10厘米的盒子来容纳电路。

设备开机后,它将首先使用代码中提供的SSID和密码对连接到指定的Wi-Fi网络。建立连接后,代码会使用“Google API密钥”组合(我将在后面的部分中向您展示如何生成密码)和“YouTube频道ID”以从YouTube服务器获取数据。然后,设备使用7段显示器显示视图和订户计数。

显示信息后,等待5分钟后再从YouTube服务器获取下一组信息。变量用于存储当前订户计数。如果新用户数大于旧计数,则蜂鸣器继续,蓝色和白色LED交替闪烁(发光)。

步骤5:接线

接线非常简单。我们将首先将7段显示器连接到微控制器。每个显示器都有4个引脚,2个用于电源,1个用于时钟,另一个用于数据。按照屏幕上提供的说明将数据和时钟引脚连接到NodeMCU。

然后我们将显示器的所有VCC引脚连接到NodeMCU的3.3V引脚。然后,将蜂鸣器屏蔽/蜂鸣器与100Ω电阻器连接到D8引脚。之后,将蓝色和白色LED分别连接到带有220Ω限流电阻的D9和D10引脚。

现在,继续将所有接地引脚连接到NodeMCU的GND引脚。连接所有引脚后,将开关连接到NodeMCU的VIN和GND到降压转换器的GND。

步骤6:使用的库

频道的用户和频道ID列在“帐户信息”下

登录您的YouTube帐户。

点击右上角的帐户图标》设置。

从左侧面板单击“高级设置”。

通过从名称中删除任何特殊字符和“master”来解压缩并重命名库。将文件夹放在Arduino的libraries文件夹中。如果这是您的第一个库,则可能需要创建Libraries文件夹。重新启动IDE,以便正确加载KEYWORD文件,示例,并将库添加到库菜单。

》唯一标识符:

除了库,您还需要很少的此项目的唯一标识符。

第一个是无线网络的SSID和密码。

然后,您需要拥有YouTube频道的唯一频道ID。为此:

登录您的YouTube帐户。

点击右上角的帐户图标》设置。

从左侧面板中单击“高级设置”。

频道的用户和频道ID列在“帐户信息”下

最后,您需要生成“Google API密钥” “为你的频道。要生成密钥

Google搜索“使用API密钥”或打开下面说明中提供的链接。

向下滚动并单击“API& Services→Credentials”

如果这是您第一次访问此页面,则必须通过单击“创建”按钮创建一个新项目。

接受条款并为项目命名,然后点击“创建”按钮创建项目

创建项目后,只需单击“创建凭据”下拉列表

系统将花时间生成密钥,然后从那里选择“API密钥”。生成后,它会在弹出对话框中显示密钥。 - 复制并将其保存在您的电子邮件中

现在点击左侧面板中的“图书馆”选项,然后

向下滚动并启用“YouTube Data API v3”和“YouTube报告” API“通过单击它们并点击”启用“按钮

等待5到10分钟,然后您就可以使用刚刚在代码中生成的API密钥。

第7步:木工

《让我们通过组装木箱开始我们的项目。如前所述,我将削减:

2 x 24x10cm,2 x 10x6cm侧板和一个24x10cm背板。切割完所有的木块后,我将加入并打磨它们,使盒子看起来漂亮顺滑。在单元的后面,我要钻2个孔,其中一个用于电源线,另一个用于开关。

步骤8:焊接

一旦盒子准备就绪,我将焊接所有电子元件并安装他们在盒子里。

我将从焊接NodeMCU开始。然后,我将100Ω电阻焊接到NodeMCU的D8引脚。之后,我将蜂鸣器焊接到穿孔板,并将其连接到NodeMCU。接下来,我将焊接开关并将其安装在盒子的背面。根据原理图,开关的一个引脚将连接到NodeMCU的VIN,另一个引脚连接到降压转换器的+ ve端子。转换器的-ve端将连接到NodeMCU的GND引脚。现在,我将根据原理图焊接7段。

接下来,我将蓝色和白色LED焊接到NodeMCU的D9和D10引脚。所以,这就是我的面板的样子。在安装面板之前,让我做一个快速测试。看起来一切都按照他们应该的方式运作。好的,让我安装面板,然后我会向你们解释代码。

第9步:代码

这些是我们为此项目所需的库列表。

现在,如果您使用的是与我相同的原理图,则除了这几行之外,您不必修改此代码中的任何内容。您只需在此处添加WiFI网络的SSID和密码以及Google API密钥和渠道ID。您可以保持原样并将代码加载到NodeMCU。

“api_mtbs”是微处理器发出的API请求之间的平均时间。

然后,我正在初始化通过设置时钟和数据引脚来显示。之后我设置了蜂鸣器和2个LED。

在设置()部分,我正在设置LED引脚模式并在启动时打开蓝色LED。然后我清除所有7段并在显示器1和3上显示0.然后设备将使用提供的凭证连接到WiFI网络。

在loop()部分中的值为计数器超出了api_mtbs或简单来说,当需要向YouTube服务器发出下一个请求时,会进行带有通道ID的API调用,结果将显示在串行监视器和7段显示器上。您需要计算接收计数的MOD以显示最后4位数,然后从原始值中减去MOD值以获得前4位数。我注意到的一件事是,如果MOD是24,那么显示器只显示24而不是0024.所以我们必须将缺少的零添加到显示器。这段代码是添加缺失的0。

最后,当新订户数量大于旧订户数时,此位代码将打开蜂鸣器和LED。

注意:引脚D9和D10是RX和NodeMCU的TX引脚。因此,如果将LED连接到这些引脚,您将无法在串行监视器上获得任何信息。因此,在测试过程中,不要将任何东西连接到D9和D10引脚,并注释设置这些引脚的引脚模式的位。

您可以从以下描述中提供的链接下载代码。

第10步:未来增强

我将在本项目的即将发布的版本中包含的几件事情是:

将每日计数保存到网络服务器的数据库

将每月计数保存到网络服务器的数据库

生成Web界面以显示每日/每月分析条形图/折线图

添加NeoPixels而不是闪烁的LED

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

    关注

    0

    文章

    3

    浏览量

    6286
  • Youtube
    +关注

    关注

    0

    文章

    142

    浏览量

    15359
收藏 人收藏

    评论

    相关推荐

    关于BLE通知值的通知长度问题求解

    在 LE GATT 服务吞吐量示例中,我发现每个通知阵列的大小为 244u。 我想知道通知数据的最大大小是否为 244 个数组。 因为我希望每次都通知 512 或 1024,以减轻
    发表于 05-27 08:32

    YouTube Premium新功能“精彩部分跳转”上线,用户喜好预测跳转功能亮相

    这项服务基于AI技术和用户数据分析,能够准确预测用户可能感兴趣的视频片段,并直接跳转至最精彩的部分。自今年3月起,YouTube已开始进行此功能的测试,最初仅向美国的部分高级用户开放,而如今所有YouTube高级会员均可在youtube
    的头像 发表于 05-06 16:25 518次阅读

    开发者发布自制非官方YouTube应用,Vision Pro头显可用

    据了解,该第三方应用可完整实现原生的 YouTube 功能,包括手势操控和保持原始视频宽高比等功能,同时支持浏览播放列表,甚至在观看过程中出现的 YouTube 广告。据开发者表示,此举旨在免受谷歌声讨。
    的头像 发表于 02-03 10:53 371次阅读

    YouTube与谷歌同时启动裁员

     据悉,此次重组简化了原先的部门架构,集中管理内容创作团队。每个国家及地区仅设一名管理者;音乐团队则在全球层面开展整合;体育、媒体、影视团队亦将纳入同一机构,涵盖YouTube TV与NFL Sundays Ticket等项目。
    的头像 发表于 01-18 10:33 245次阅读

    鸿蒙原生应用/元服务开发-通知添加行为意图

    Manager Service)申请WantAgent,然后随其他通知信息一起发送给桌面,当用户在桌面通知栏上点击通知时,触发WantAg
    发表于 01-05 15:07

    Python 制作按键触发Windows通知的脚本

    键切换就进行windows通知提示: https://github.com/skate1512/Toggle_Keys_Notification 今天我们来试试这个脚本,此外,我们还可以基于这个项目
    的头像 发表于 11-01 16:09 399次阅读
    Python <b class='flag-5'>制作</b>按键触发Windows<b class='flag-5'>通知</b>的脚本

    Python超简单制作Windows按键通知脚本

    键切换就进行windows通知提示: https://github.com/skate1512/Toggle_Keys_Notification 今天我们来试试这个脚本,此外,我们还可以基于这个项目
    的头像 发表于 11-01 09:24 309次阅读
    Python超简单<b class='flag-5'>制作</b>Windows按键<b class='flag-5'>通知</b>脚本

    Python简单制作Windows按键通知脚本

    键切换就进行windows通知提示: https://github.com/skate1512/Toggle_Keys_Notification 今天我们来试试这个脚本,此外,我们还可以基于这个项目
    的头像 发表于 10-17 11:10 393次阅读
    Python简单<b class='flag-5'>制作</b>Windows按键<b class='flag-5'>通知</b>脚本

    sdwan云桌面的意思是什么?sdwan云桌面的关键点

    SDWAN云桌面(SDWANCloudDesktop),从专业角度来看,是指通过软件定义广域网(SDWAN)技术 来优化和提供云端虚拟桌面服务的解决方案。云桌面是一种将操作系统、利用程序和数
    的头像 发表于 08-31 15:26 359次阅读

    【芒果派MangoPi MQ Pro】体验桌面系统

    按照前一篇ssh登录输入 armbian-config 该命令要访问git所以先要确认wifi配置ok 有时git访问不了可以换个时间再试。 按如下使能桌面 选择System 选择Desktop
    发表于 08-25 00:10

    FreeRTOS任务通知简介

    任务通知简介 任务通知在 FreeRTOS 中是一个可选的功能,要使用任务通知的话就需要将宏configUSE_TASK_NOTIFICATIONS 定义为 1。 FreeRTOS 的每个任务都有
    的头像 发表于 07-30 11:34 570次阅读

    labview通知的问题

    为什么这样写控制不了这三个循环同时结束,甚至结束不了循环 (这个时候发送通知以后布尔不应该已经发送给全部等待通知的循环了吗?)
    发表于 07-29 15:42

    桌面桌面云的区别和联系|PetaExpress

    随着云计算技术的快速发展,云桌面桌面云作为两个重要组成部分,也逐渐得到了广泛的关注和应用。 一、 概念 云桌面(Cloud Desktop)它是一种基于云计算技术的虚拟解决方案,它将用户的
    的头像 发表于 07-18 11:20 1097次阅读

    玩一玩linux内核的通知

    文本描述构成通知链的具体数据结构和API接口,同时描述四种通知链的具体应用场景,并对API接口进行简要分析。
    的头像 发表于 07-06 09:05 484次阅读
    玩一玩linux内核的<b class='flag-5'>通知</b>链

    Pi上的YouTube夜视录像机和上传器GUI

    电子发烧友网站提供《Pi上的YouTube夜视录像机和上传器GUI.zip》资料免费下载
    发表于 07-04 10:33 0次下载
    Pi上的<b class='flag-5'>YouTube</b>夜视录像机和上传器GUI