WS2812硬件电路设计

小菜鸡的第一篇的CSDN文章,冲冲冲!!!

设计目标:

1.RGB可实现多种灯效,可通过按键切换
2.RGB灯珠亮度可调节
3.选用蓝牙或者wifi模块,通过手机远程设置RGB的灯效及亮度;

硬件设计:

原理图思路:

1.MCU选用STM32F103C8T6(用的时候嘉立创48一片,现在125一片,吃相难看),刚好之前项目有用剩的103C8T6,本着时间就是金钱的想法,就选了这款芯片;两个按键一个用于复位,一个用于切换模式;
2.WS2812使用5V供电,电流<20mA,选用15颗灯珠,电流<300mA(白灯全亮峰值电流会更大),因此供电可以使用Type-C来供电,控制信号选择PWM+DMA,每五个灯珠一组,选用TIM3的三路PWM驱动RGB;

3.选用电位器作为调节RGB亮度的器件,考虑到用户体验,选择了滑动变阻器类型的电位器。(一个五块钱,心疼死了)


4.选用普通的蓝牙串口模块和ESP8266,通过串口与MCU通信。

最终设计如下:
上面的是蓝牙版本版本,下面的是WIFI版本。(犯了一个致命的错误,串口的TX和RX搞反了,蓝牙模块和WIFI模块是对的,但是MCU端我凭着印象放置了网络标签,导致出现错误,所以一定一定要查阅MCU的手册确认

PCB绘制:

三维模型图如下:
实际打板是黑色的


设计缺陷

选型

1.MCU选择F1系列的芯片实在不太明智,价格太高;(做的东西不怎么样,花了不少钱,果然是个辣鸡);
2.滑动变阻器手感很好,但是价格太高了,根本不具备量产的可能;
3.8MHZ、3225封装的晶振也在涨价,也可以省了;

原理设计缺陷

1.多路PWM驱动多路RGB,原理上可以搭配出更多种灯效,但是实际上三路PWM+三个通道的DMA搭配,设计出比较好看的灯效还是比较难的(应该慢慢来,之后迭代试试);

2.不是所有的定时器的通道都有DMA的,我当时没有看手册确认,但是恰巧我选用的定时器的三个通道是有DMA的;

3.串口TX和RX用反了,第一个原因是没有查手册确认,第二个原因是用了F1的芯片,用F0不香吗?还有TX、RX交换的功能。

4.没有设计供电开关,应该设计一个MOS开关,关闭RGB更可靠,静态功耗也更低。可以通过三极管讲MOS关闭,远程关机也更加可靠。

PCB缺陷

1尺寸过小,40*90mm,找个懒人手机架子也根本夹不住灯板。

2.灯板的散热没有特殊考虑,在PCB白灯亮度最大时,可以明显感觉到灯板发烫;

3.没有留定位孔,直接扼死了自己做个壳子的想法。

希望在接下来迭代的版本中可以改掉这些缺陷

###之后会继续些软件调试的经历(包括ESP8266上云、RGB灯效及亮度调试)

先附上效果视频吧

WS2812灯板制作效果

WS2812硬件电路设计相关推荐

  1. TLE5012B ESP32驱动程序、硬件电路设计、4线SPI通信,驱动完美兼容4线SPI不用改MOSI开漏推挽输出

    一.TLE5012B 简介 TLE5012B 是一种款高分辨率旋转位置传感器,用于在整个 360 度范围内进行角度测量. 它通过使用单片集成 巨磁阻 (iGMR) 元件,来测量正弦和余弦角分量,这些原 ...

  2. 基于STM32-消防栓监测系统毕业设计---论文(附加最全面的从硬件电路设计->驱动程序设计->阿里云物联网搭建->安卓APP设计)

    设计展示视频连接:消防栓监测系统视频 驱动程序工程文件:消防栓监测系统驱动程序工程(全寄存器开发的) 消防栓监测系统所有设计资料:全栈设计,如下图所示 消防栓监测系统论文(图片看不清的可以下载文档看) ...

  3. 一套完整的硬件电路设计该怎么做?

    在学习电路设计的时候,不知道你是否有这样的困扰:明明自己学了很多硬件电路理论,也做过了一些基础操作实践,但还是无法设计出自己理想的电路.归根结底,我们缺少的是硬件电路设计的思路,以及项目实战经验. 设 ...

  4. 硬件电路设计原理图设计

    叶倾城-硬件原创的个人空间_哔哩哔哩_Bilibili 硬件电路设计原理图设计第二季-1-40课已更新完成啦!!! 第三季硬件电路设计原理图设计敬请期待!感谢大家的支持! 第01课------硬件实战 ...

  5. 一套完整的硬件电路设计该怎么做

    在学习电路设计的时候,不知道你是否有这样的困扰:明明自己学了很多硬件电路理论,也做过了一些基础操作实践,但还是无法设计出自己理想的电路.归根结底,我们缺少的是硬件电路设计的思路,以及项目实战经验. 设 ...

  6. 硬件电路设计入门奉献系列(一)

    硬件电路设计入门的一些必备知识和技巧 --献给那些刚开始或即将开始设计硬件电路的人 时光飞逝,离最初设计制作电路板已有2年多时间.刚刚开始接触电路板的时候,与你一样,充满了疑惑同时又带着些兴奋.在网上 ...

  7. 嵌入式硬件电路设计基本功

    我走的电子开发道路其实和大多数人说的一样,基本的路线为模拟电子(熟练)→数字电路设计(掌握)→单片机(项目开发)→ARM硬件设计(项目开发)→linux学习→linux驱动学习→ARM&lin ...

  8. 经验分享:一套完整的硬件电路设计该怎么做?

    在学习电路设计的时候,不知道你是否有这样的困扰:明明自己学了很多硬件电路理论,也做过了一些基础操作实践,但还是无法设计出自己理想的电路.归根结底,我们缺少的是硬件电路设计的思路,以及项目实战经验. 设 ...

  9. 如何学习硬件电路设计,给出详细方案

    学习硬件电路设计需要从以下几个方面入手: 基础知识:了解电学基础知识,如电学基础知识,电子学原理,电路分析等.推荐参考书籍:<电子学原理与电路分析>. 设备:了解电子元器件,如电阻,电容, ...

最新文章

  1. unity3d中画线有几种方式_【源码】Unity3D运行期间如何绘制直线-百度经验
  2. python concat函数 多张表_教你用python递归函数求n的阶乘,优缺点及递归次数设置方式
  3. Python中的HTTP协议
  4. 前端学习(1799):前端调试之清除浮动
  5. Windows与linux双系统安装
  6. 第 1-1 课:Java 程序是如何执行的?
  7. 未来社区及其趋势探索
  8. 【Python之旅】第二篇(七):集合
  9. mysql dump 二进制_mysqldump+二进制日志备份恢复
  10. H G W S哪一个不是状态函数_HAWE哈威BVH11H/M/S/2-X24换向阀
  11. 额度降为0剩下欠款怎么办?
  12. 数学教授曲安京2016年毕业致辞:永远珍重那些美好的内蕴品质
  13. 论文查重 降重复度?
  14. 利用lasso回归建立预测模型并绘制列线图 二分类结局资料的lasso回归与列线图绘制
  15. 百度网盘下载加速方法(免会员免破解官方正规)
  16. 普通文档怎么换成php,腾讯在线文档如何转化为普通文档
  17. 概率论-条件概率,全概率,概率乘法公式,贝叶斯公式
  18. html 圆圈项目符号,html5 项目符号
  19. java 跳跃表_你真的了解跳跃表吗
  20. Inventor制作动画

热门文章

  1. 1230k倍区间,关于cnt[0]赋值为1的解释
  2. linux刻录windows光盘启动,如何在 Windows / Ubuntu / macOS 上刻录 Ubuntu 启动光盘
  3. 已拦截跨源请求:同源策略禁止读取位于...的远程资源。(原因:CORS 请求未能成功)。
  4. xftp上传文件状态错误解决方法
  5. Python3.9的69个内置函数(内建函数)介绍,并附简单明了的示例代码
  6. 关于物料的计划页签的 固定提前期和变动提前期的问题
  7. VUE购物车小案例—vue指令的综合应用
  8. Qt之文件保存的技巧
  9. 基于Springboot框架的登录注册页面
  10. 未知参数休哈特matlab,休哈特控制图 日语 请教控制图上下控制界限的确定