仅供协会内部学习使用!!!请勿外部流传
到这里,你应该已经定制了PCB以及订购了相应的元器件
LED的选择请注意引脚是否与PCB上的吻合(我用的是2020版本的APA107以及APA102,最终视频里的是APA107,不过这个已经买不到了)
为了方便调试,建议有一块普通的ESP32开发板(价格约为10~20元)
还需要一个ESP32烧录夹具给最终使用的模组烧录固件(价格在40多元)
下面开始贴合上硬件
【一】贴上LED
有两种方式:
A.使用你定制PCB厂家的SMT贴片服务,不过这种LED太冷门,一般要自己寄料,又有贴错的风险(我就贴错了)
B.需要用到钢片,可以在淘宝上用PCB文件截取一部分LED的地方定制,15元就能买到,涂上【低温锡膏】,加热平台使用158°C或者热风枪200°C融化锡膏,千万不要太热、需等待冷却后再通电,否则容易烧坏LED
注:可以先贴一部分,将ESP32的硬件SPI引脚插入PCB上对应的孔,查看是否正常显示(PCB上左右两侧分别有对应的引脚号,如23、18为ESP32默认的硬件SPI)
可能会有的问题:
部分LED焊接不良,无法正常显示,像下面这种情况就是在出问题的那颗LED或者它前一颗的LED有引脚没有焊接好,可以从侧面用肉眼观察是否焊接良好,然后再重新焊接,直至问题解决
如果焊接不良可观察到LED的引脚没有上锡
最终样子如下:
两个贴片电容是因为有的无线供电模块供电不稳,会导致ESP32无法正常BOOT,所以分别贴在输入电源以及降压芯片的输出
【二】烧录ESP32模组固件
到这里,你应该已经将全部LED贴上,并且正常显示了,然后将ESP32模组插入到烧录夹具中。
因为我们的设计当中需要用到SD卡,所以GPIO12加上了上拉电阻,会导致ESP32误认为闪存芯片要在1.8V下工作,所以会导致无法正常使用。因此,我们在使用ArduinoIDE烧录固件之前,需要先做以下工作:
1、到https://github.com/espressif/esptool/releases下载source.zip,里面的espefuse.py我们需要用到。解压后,在文件夹内使用CMD输入引号内的“espefuse.py set_flash_voltage 3.3V” 之后输入确定即可
2、使用ArduinoIDE,打开bbPOV-P.ino,修改WIFI信息,上传固件 (初次使用需要配置Arduino附加开发板,可以搜索“Arduino ESP32”查看相关教程,非常简单;以及安装所需用到的库,除了NeoPixelBus需要用我修改过的版本,见Github,其它使用ArduinoIDE的库管理搜索安装)
【三】、PCB背部贴片
1.将烧录好固件的ESP32贴到PCB的背面
2.将霍尔开关(型号见第一篇文章,只要是带上拉电阻以及封装大小相同的都可以,不一定要相同的)贴到两个地方
恭喜你,到这里只要给PCB供电,它就在正常运行啦