这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 电子DIY » Let'sdo2025年第2期—智能手环:点亮RGB灯

共1条 1/1 1 跳转至

Let'sdo2025年第2期—智能手环:点亮RGB灯

菜鸟
2025-10-03 09:47:45     打赏
点亮RGB灯

首先我们先根据原理图来找到我们的RGB的位置:

https://www.analog.com/media/en/technical-documentation/eval-board-schematic/max78000-fthr-schematic.pdf

这里是原理图,我们可以发现原理图其中的位置。

image-20251002090424129

我们可以看到RGB是通过三个LED灯来控制的,通过GBR的三原色,就可以实现LED的颜色的显示,最后在显示的时候混合一下,就能实现RGB实现任意颜色。

image-20251002090605534

通过开发板对应的引脚来定义我们的设备的初始化引脚做准备。

image-20251002103658760

其中的引脚我们定义到P20,P21,P22

软件配置

首先根据箭头标注的地方

image-20251002114032169

我们可以发现其中板卡默认值是EvKit_V1,我们需要修改一下,符合我们板卡的配置。

在main循环中有初始化LED的操作,我们进去其中的led定义查看一下

image-20251002114140758

这里我们可以知道其中通过结构体对其中LED的赋值,我们就进去深入了解一下,其中LED的初始化是怎么样的结构体

image-20251002114237010

我们进入到其中结构体的参数,发现其中有首先一个led的结构体的数组

image-20251002114316274

将其中的端口修改我们的RGB数组。

    { MXC_GPIO2, MXC_GPIO_PIN_0, MXC_GPIO_FUNC_OUT, MXC_GPIO_PAD_NONE, MXC_GPIO_VSSEL_VDDIOH, MXC_GPIO_DRVSTR_0},
   { MXC_GPIO2, MXC_GPIO_PIN_1, MXC_GPIO_FUNC_OUT, MXC_GPIO_PAD_NONE, MXC_GPIO_VSSEL_VDDIOH, MXC_GPIO_DRVSTR_0},
   { MXC_GPIO2, MXC_GPIO_PIN_2, MXC_GPIO_FUNC_OUT, MXC_GPIO_PAD_NONE, MXC_GPIO_VSSEL_VDDIOH, MXC_GPIO_DRVSTR_0},

这里的LED的定义只有G和R,我们再添加一个B

image-20251002114623703

最后再将我们主程序修改一下

int main(void)
{
   int count = 0;

   printf("Hello World!\n");

   while (1) {
       LED_On(LED1);
       MXC_Delay(500000);
       LED_Off(LED1);
       MXC_Delay(500000);
       LED_On(LED2);
       MXC_Delay(500000);
       LED_Off(LED2);
       MXC_Delay(500000);
       LED_On(LED3);
       MXC_Delay(500000);
       LED_Off(LED3);
       MXC_Delay(500000);
       printf("count : %d\n", count++);
   }
}

其中的板卡的RGB就在三种颜色闪烁




共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]