这个 CyBalls 项目的动机是我们公司的年度活动,邀请员工的孩子到我们的办公室做一些适合年龄的手工艺品,而我总是为 10 岁以上的孩子提供焊接课程。过去,我们确实焊接了从电子商店购买的基本电子套件,例如闪烁的 LED,例如圣诞树 PCB 等。
随着我们的孩子明显变大,并且大多数人在过去几年已经积累了一些焊接经验,这次我喜欢做一些更令人兴奋的运动,更复杂的项目,最后但并非最不重要的事情,这让我们能够可能在未来的一些儿童活动中进入软件编程方向。
透明(首选蛋白石)塑料球一般在工艺品店都能买到。这个想法是将六个 LED 放入内部以进行 360° 照明。使用微控制器可以实现一些效果,例如褪色或颜色变化和旋转。
最关键的问题是找出如何在透明塑料球的中心实现 RGB 照明。最后,我决定 3D 打印一个与 WS2812B LED 条纹尺寸完全匹配的立方体 (60LEDs/m),即 1.67cm x 1.67cm x 1.67cm。由于该结构的重量仍然很轻,我在里面放了一个金属球 (d=15mm),这样末端的 LED 立方体或多或少居中。
请注意,两个 LED 灯条都需要进行电气连接。必须将一根隔离线从第一个条纹的 Dout 焊接到第二个条纹的 Din>。此外,GND 和两个 +5V 焊盘也必须通过电线连接。注意不要将 GND 和 +5V 短路!
最后把LED立方体放入透明的,首选蛋白石,塑料球。
正如已经提到的电子设备,尤其是当前的软件,最多可以驱动八个球。继续……现在做更多的球!
赛普拉斯的CY8CKIT-142 PSoC 4 BLE 模块是该项目的核心。PSoC 提供了很多片上外设,适合这个项目:
因此,该项目的框图看起来很简单
这也使完整的设置变得简单明了:
您可以轻松地将电源和 3 线连接手动连接到每个球。
由于该项目打算在儿童活动期间运行,因此我开发了一些简单的 PCB,但这对项目来说不是强制性的,但可以为孩子们提供更多的焊接体验。仅供参考,在这里找到 PCB:
不要混淆,项目不使用按钮(重置、用户),但可能 PCB 将用于其他项目。
与赛普拉斯 PSoC4 微控制器一样,该软件是使用 PSoC Creator 开发的。抱歉,我会/不能在这里提供完整的课程。因此,如果您有专门的问题,尤其是当您不熟悉 Cypress IDE 时,请随时与我联系。
附上完整的项目,详细信息在下面的“开发人员和专家”部分中提供
仅硬件
根据所选输出(P3.0 至 P3.7)对 CY8CKIT-142(例如使用 CY8CKIT-042-BLE 基板,或单独的赛普拉斯 KitProg 或 MiniProg 编程器)进行编程后,光立方将显示不同的颜色和/或效果。注意:在将灯球连接到另一个输出之前,请关闭电源(拔下 USB 数据线)!
智能手机应用程序
不幸的是,目前还没有专门的智能手机应用程序可用。您愿意开发一个吗?
在这两者之间,Cypress 的应用程序“CySmart”(Android、Apple)也可用于控制 CyBall。
启动时,从可见的 BLE 设备列表中选择 CyBalls,然后会显示可用的服务。RGB 服务允许静态更改所有连接的 CyBall 的颜色。亮度也可以改变。
CySmart 可以选择哪个输出在所有输出通道上可见,而不是将灯球连接到专用输出(如前所述):
选择“未知服务”,确认提示,然后再次选择“未知服务”。
使用 UUID [0003CBB8-0000-1000-8000-00805F9B0131] 输入从“1”到“8”的十六进制值,将向所有硬件输出输出专用配色方案。例如,通常在输出#3 可见的输出配色方案可以路由到所有八个输出。
输入“0”将禁用此功能,并且原始配色方案在每个专用硬件输出上可见。
享受具有给定颜色照明效果的 CyBalls。
如果您想编写自己的轻型程序,请继续阅读...(同样,您可能需要对赛普拉斯 PSoC4 和 PSoC Creator 有一些基本了解。如果您还不知道此类器件,请查看www.cypress 上的培训材料。 COM第一。)
希望您了解 PSoC4 和 PSoC Creator 的基础知识,这里将仅提及主要主题,引导您修改项目,主要着重于更改每个 CyBall 的照明程序。
启动 PSoC Creator 4.2 或更新版本并打开工作区 CyBalls.cywrk。
包括两个项目和一个库:
有关所用引导加载程序的详细信息,请参阅赛普拉斯的应用说明 BLE_OTA_FixedStack_Bootloadable.pdf 和AN97060 。
在 CyBalls#.ca 状态机中运行所需的照明,并且需要一些特殊的函数和变量来定义您自己的流程:
构建“BLE_OTA_FixedStack_Bootloadable”后,使用赛普拉斯 KitProg 或 MiniProg 编程器对 CY8CKIT-142 进行编程。或者,可以通过蓝牙 LE 更新固件(见下文)。
“BLE_OTA_FixedStack_Bootloadable”已经包含“BLE_OTA_FixedStack_Bootloader”(参见赛普拉斯的应用笔记 BLE_OTA_FixedStack_Bootloadable.pdf 和AN97060 )。这意味着 - 如果项目已由 KitProg/MiniProg 编程,则可以使用BLE 加密狗完成新更新。
为了启动引导加载程序,必须再次使用 CySmart 应用程序,但这次必须将值 0x99(而不是 0 到 8)写入上述特征 UUID [0003CBB8-0000-1000-8000-00805F9B0131]。
所有 LED 将变为蓝色,表明引导加载程序已启动。断开 BLE 并退出手机上的 CySmart 应用程序。
将 BLE 加密狗输入您的 PC,然后在您的 PC 上启动 CySmart 应用程序。
单击 [ 开始扫描 ] 搜索 CyBalls 设备。
[ 停止扫描 ] 并单击 CyBalls 设备以将其选中。
点击【更新固件】
选择新固件映像 (*.cyacd),它位于您的项目文件夹 BLE_OTA_FixedStack_Bootloadable.cydsn\CortexM0\ARM_GCC_541\Debug\BLE_OTA_FixedStack_Bootloadable 中。氰酸
然后单击 [ 更新 ] 按钮。
观察绿色进度条。
新的应用程序映像将自动启动。享受!
好吧,我知道这是对赛普拉斯 OTA 固件更新的非常粗略的介绍。通常这应该像这里描述的那样直接工作。如果您遇到麻烦或想了解详细信息,请查看上面提到的赛普拉斯网站上提到的应用说明。
好吧-就是这样!
当然,圣诞节已经过去了,但CyBalls灯饰肯定也可以用于您的下一次派对……只需修改不同场合的灯效程序即可。
自己复制并享受!
问候,霍尔格
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !