之前用过STM32Cube L4,但是感觉HAL库不是很熟悉,LL库感觉不错,收到STM32F469I-DISCO后还是准备用标准库点个灯(PS:最开始使用的STM32f103系列的板子)。
先看STM32F469i_Disco板子原理图的LED部分。
确定要用到的管脚后建立标准库工程。在建立工程的时候要注意在C/C++选项卡里的Define中要定义USE_STDPERIPH_DRIVER,STM32F469_479xx和选择适当的文件路径,如下图
建立好工程,就开始配置IO,
//
// /*!< At this stage the microcontroller clock setting is already configured,
// this is done through SystemInit() function which is called from startup
// files before to branch to application main.
// To reconfigure the default setting of SystemInit() function,
// refer to system_stm32f4xx.c file */
/* SysTick end of count event each 10ms */
RCC_GetClocksFreq(&RCC_Clocks);
SysTick_Config(RCC_Clocks.HCLK_Frequency / 100);
/* Add your application code here */
/* Insert 50 ms delay */
Delay(5);
GPIO_InitTypeDef GPIO_InitStructure;
/* Enable the GPIOG/D/K peripheral */
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOG|RCC_AHB1Periph_GPIOD|RCC_AHB1Periph_GPIOK, ENABLE); //开启时钟
/* Configure LED pin(PG6) in out function */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
GPIO_Init(GPIOG, &GPIO_InitStructure);
这里只配置了PG6(LED1);
然后进入while(1)循环里面点灯以及灭灯。
下面是效果图。拍照水平有限啊。
下面是建立的工程文件。
LED.zip
(53.76 KB)
|