[方案相关] 使用小华半导体MCU实现LED闪烁控制的简单应用

[复制链接]
3166|11
 楼主| Bblythe 发表于 2024-10-5 14:20 | 显示全部楼层 |阅读模式

最近在玩小华半导体的MCU,感觉非常适合一些简单的嵌入式项目。今天分享一个利用小华MCU实现LED闪烁控制的简单代码。这个例子非常适合初学者练手,特别是在了解基本GPIO控制时。

下面是完整代码,它会控制一颗LED以1秒的间隔闪烁:
  1. #include "xh32f0xx.h"  // 小华MCU的相关头文件

  2. void delay_ms(uint32_t delay)
  3. {
  4.     for(uint32_t i = 0; i < delay * 800; i++) // 简单延时函数
  5.     {
  6.         __NOP();
  7.     }
  8. }

  9. int main(void)
  10. {
  11.     // 初始化GPIO引脚
  12.     XH_GPIO_InitTypeDef GPIO_InitStructure;

  13.     // 启用GPIO时钟
  14.     RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);

  15.     // 设置GPIO为输出模式
  16.     GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5; // 假设LED连接在PA5
  17.     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
  18.     GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
  19.     GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
  20.     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  21.     XH_GPIO_Init(GPIOA, &GPIO_InitStructure);

  22.     while(1)
  23.     {
  24.         // 反转LED状态
  25.         GPIOA->ODR ^= GPIO_Pin_5;

  26.         // 延时1秒
  27.         delay_ms(1000);
  28.     }
  29. }

这个代码的工作原理非常简单,通过配置GPIO引脚为输出模式,并在主循环中反转LED状态,实现LED的闪烁效果。使用delay_ms函数做延时,控制LED每隔1秒翻转一次。

小华MCU有很多有趣的功能,非常适合做一些基础项目。如果你也是刚开始学习嵌入式开发,这个例子应该会帮助你快速上手。希望对大家有帮助!

公羊子丹 发表于 2024-10-5 14:21 | 显示全部楼层
这个代码真简单实用,刚好可以拿来测试我的开发板,感谢分享!
周半梅 发表于 2024-10-5 14:21 | 显示全部楼层
我之前一直在找这种入门级的例子,终于找到了,太及时了!
帛灿灿 发表于 2024-10-5 14:22 | 显示全部楼层
小华MCU看起来还不错啊,打算买几片试试,这个例子先收藏了!
童雨竹 发表于 2024-10-5 14:22 | 显示全部楼层
LED闪烁是经典的入门项目,但每次看到都觉得很有成就感哈哈。
万图 发表于 2024-10-5 14:22 | 显示全部楼层
这个延时函数感觉有点粗糙,时间长了会不准,有没有更精确的推荐?
Wordsworth 发表于 2024-10-5 14:23 | 显示全部楼层
没想到小华MCU这么好用,之前一直用ST的MCU,看来可以换个品牌试试了。
 楼主| Bblythe 发表于 2024-10-5 14:23 | 显示全部楼层
PA5引脚上搞LED闪烁确实是经典方案,直接上手一试没问题!
Pulitzer 发表于 2024-10-5 14:23 | 显示全部楼层
不错的代码,简洁明了,适合初学者入门!
Uriah 发表于 2024-10-5 14:23 | 显示全部楼层
有没有带PWM的版本?我想试试让LED逐渐变亮变暗!
Clyde011 发表于 2024-10-5 14:24 | 显示全部楼层
这片MCU的功耗表现怎么样?感觉小项目挺适合用的。
华芯3284494788 发表于 2024-10-6 16:44 | 显示全部楼层
帛灿灿 发表于 2024-10-5 14:22
小华MCU看起来还不错啊,打算买几片试试,这个例子先收藏了!

可以哈 QQ  3284494788 代理商免费申请 M0 M4都可以 还有技术支持 谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

162

主题

6081

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部