STM32F7学习笔记6:HAL点亮LED
1. LED硬件设计
野火的板子原理如下:
板子上有一个RGB彩灯和一个普通LED,RGB实际由R,G,B三个灯组成。
LED的阴极连接在STM32的GPIO上,具体为PH10,PH11,PH12上面。
2. 创建项目
2.1 安装STM32CubeMX
略
2.2 STM32CubeMX创建工程
1. 选择CPU型号,STM32F767IGT6
2. 设置时钟源
进入工程后打开RCC选项,选择Crystal/Ceramic Resonator,即使用外部晶振作为HSE的时钟源。
选择调试器
3. 配置IO
LED_R连接在引脚PH10,定位到PH10,配置PH10为GPIO Output。
4. 配置系统时钟
开发板外部晶振为25M,通道选择HSE
System Clock Mux选择PLLCLK,在HCLK中填入180,
然后单击回车,软件即可完成各分频和倍频系数的配置。
然后系统会计算出分频和倍频。
5. 配置IO具体属性
点击Configuration,进入系统详细配置,选则GPIO,配置PH10的默认电平,推挽输出,上拉模式,高速模式。引脚标签为LED_R。
6. 配置项目属性
点击Code Generator生成项目
3. KEIL5打开文件
生成文件后,选择打开项目,STM32CubeMX会自动打开KEIL5,如下图。
1. 添加主循环代码
添加主循环代码,让红色LED周期闪烁
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
HAL_GPIO_TogglePin(LED_R_GPIO_Port,LED_R_Pin);
HAL_Delay(1000);
/* USER CODE BEGIN 3 */
}
2. 配置调试工具
3. 编译项目
会报错:
*** Target 'LedHal' uses ARM-Compiler 'Default Compiler Version 5' which is not available.
解决方法:
设置编译器为V6.21
下载程序后,可以看到红色LED