打印
[应用方案]

设置 SPI0 控制 RGB 输出彩灯

[复制链接]
519|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
loutin|  楼主 | 2022-2-27 12:20 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
GB, pi
一、安装 Keil 的 Pack
注意按照 OCD32_MLink_v0.77.0.0\Setup_forKeil.pdf 文档说明来安装,我第一次直接双击安装 Pack 时候,Keil 会找不到 MLink。
二、1SC3535V RGB 灯带
采用 SPI 的 MOSI 直接输出相应的控制波形,可以达到各种彩灯输出效果
控制时序如下面三张图:
三、引脚配置
    PINX_InitStruct.PINX_Mode = PINX_Mode_PushPull_O;  // Pin 设置推挽输出
    PINX_InitStruct.PINX_PUResistant = PINX_PUResistant_Disable;  // 失能上拉电阻
    PINX_InitStruct.PINX_Speed = PINX_Speed_Low;        //低速模式
    PINX_InitStruct.PINX_OUTDrive = PINX_OUTDrive_Level0;   // Pin输出最大
PINX_InitStruct.PINX_Alternate_Function = 2;         //配置为 MOSI
GPIO_PinMode_Config(PINB(3),&PINX_InitStruct);     //配置 PB3
四、时钟配置
SPI的时钟配置就稍微复杂了一点,
通过CSC_IHRCO_Select(IHRCO_12MHz);选择系统时钟为12MHz,具体配置可以参考 SPI 中断的例程,配置 SPI 的时钟为6MHz,原因是根据1SC3535V的时序,需要配置6-8MHz 的 MOSI 频率
可以用示波器看一下是否配置正确:
五、移植
把WS2812的工程关于SPI控制的部分做移植,需要包含头文件:#include "MG32x02z_ARGB_WS2812.h"
通过Sample_URT_ARGB_UpdateTrigger( ARGB_DRAMA_STATIC );选择不同的彩灯模式
六、效果

链接: https://mbb.**blog/uid-me-3929083.html


使用特权

评论回复
沙发
caigang13| | 2022-3-1 08:32 | 只看该作者
不错啊

使用特权

评论回复
板凳
mutable| | 2022-3-1 15:14 | 只看该作者
厉害啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

49

主题

1180

帖子

0

粉丝