这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 国产MCU » 【Mini-F5375-OB】macOS下面点亮LED灯

共5条 1/1 1 跳转至

【Mini-F5375-OB】macOS下面点亮LED灯

助工
2025-01-26 14:25:30     打赏

【前言】

我在前面发表了MM32F5375的开发环境的创建:https://forum.eepw.com.cn/thread/389901/1

接下来我将逐一介绍如何使用他的外设,并制作一些有意思的小作品。

【原理图】

在点灯之前,我们首先找到原理图,来查看我们开发板上的原理图接在哪一个GPIO上面,是高电平点亮还是低电平来点亮。

原理图的链接:https://www.mindmotion.com.cn/download/support/Mini-F5375-OB_SCH.pdf

在原理图中,我们找到LED:

image.png

看到两个LED灯是接到了PB15与PB14上面,低电平点亮。

【代码编写】

1、编写初始两个IO的配置函数:

void GPIO_Configure(void)
{
    GPIO_InitTypeDef GPIO_InitStruct;

    RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE);     //开启GPIOB时钟

    GPIO_StructInit(&GPIO_InitStruct);
    GPIO_InitStruct.GPIO_Pin   = GPIO_Pin_15 | GPIO_Pin_14;  //指定初始化引脚
    GPIO_InitStruct.GPIO_Speed = GPIO_Speed_High;            //指定引脚速度
    GPIO_InitStruct.GPIO_Mode  = GPIO_Mode_Out_PP;           //指定引脚模式为推挽输出
    GPIO_Init(GPIOB, &GPIO_InitStruct);                      //初始化引脚

    GPIO_WriteBit(GPIOB, GPIO_Pin_14 | GPIO_Pin_15, Bit_SET);   //设置引脚电平为高电平 即关断LED
}

代码释义见注释。

2、编写翻转函数

void GPIO_IO_Toggle(GPIO_TypeDef *GPIOn, uint16_t PINn)
{
    if (Bit_RESET == GPIO_ReadOutputDataBit(GPIOn, PINn))
    {
        GPIO_SetBits(GPIOn, PINn);  //设置引脚电平为高电平 即关断LED
    }
    else
    {
        GPIO_ResetBits(GPIOn, PINn);  //设置引脚电平为低电平 即打开LED
    }
}

代码释义见注释。

3、编写测试函数:

void GPIO_LED_Toggle_Sample(void)
{

    GPIO_Configure();  //配置IO

    while (1)
    {
    //翻转LED
        GPIO_IO_Toggle(GPIOB, GPIO_Pin_14);
        GPIO_IO_Toggle(GPIOB, GPIO_Pin_15);
    //延时
        PLATFORM_DelayMS(100);
    }
}

4、将文件加入makefile,参与编译:

# 向 C_SOURCES 中添加需要编译的源文件C_SOURCES += $(wildcard $(Core_DIR)/app/*.c)

# 向 C_INCLUDES 中添加头文件路径C_INCLUDES += -I$(Core_DIR)/app

【下载】

执行make run可以直接将代码编译并下载到开发板上,效果就是可以看两个LED周期翻转。





关键词: Mini-F5375-OB     灵动MM32     LED    

专家
2025-01-26 19:06:49     打赏
2楼

感谢分享


专家
2025-01-26 19:07:53     打赏
3楼

感谢分享


专家
2025-01-26 19:12:46     打赏
4楼

感谢分享


专家
2025-01-27 10:39:20     打赏
5楼

谢谢楼主分享


共5条 1/1 1 跳转至

回复

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