原创 【MG32F02A132评测】设置 SPI0 控制 RGB 输出彩灯效果

2020-10-20 16:18 4537 8 8 分类: MCU/ 嵌入式 文集: MG32F02A132评测

一、安装 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 );选择不同的彩灯模式

 

六、效果

作者: smallsystem, 来源:面包板社区

链接: https://mbb.eet-china.com/blog/uid-me-3929083.html

版权声明:本文为博主原创,未经本人允许,禁止转载!

文章评论0条评论)

登录后参与讨论
我要评论
0
8
关闭 站长推荐上一条 /2 下一条