STM32F407 建立工程并点亮LED灯 |
您所在的位置:网站首页 › stm32f101c8t6点灯 › STM32F407 建立工程并点亮LED灯 |
基于keil5下建立工程模板 + GPIO点灯
keil 5 下建立stm32f4工程1.建立工程文件夹目录2.从官方固件库中导入文件到工程目录中3.打开keil5创建F4工程4.建立工程总结
点亮LED添加系统文件创建LED文件目录,并编写LED文件魔术棒配置参数总结
keil 5 下建立stm32f4工程
1.建立工程文件夹目录
在电脑某盘中创建一个文件夹,里面包含如下所示的文件目录: 直接去官网下载STM32F4的固件库,放置电脑某个位置。这里直接在正点原子官网下载的:stm32f4_dsp_stdperiph_lib.zip 解压之后有一个 STM32F4xx_DSP_StdPeriph_Lib_V1.4.0 的文件夹。 然后从该文件夹中搬运文件到自己建立的工程目录下去 ①.搬运外设文件到FWLIB中 进入路径: STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\STM32F4xx_StdPeriph_Driver 里面有inc 和 src的文件夹 分别存放.h和.c文件的外设库,直接将两个文件夹子复制粘贴到自己的工程目录FWLIB下 ②.搬运内核文件到CORE中 进入路径: STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\CMSIS\Include 里面有一些.h文件 直接可以全选复制粘贴到自己的工程目录CORE下, 进入路径: STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates\arm 如图所示,里面有.s启动文件,选择第一个复制粘贴到工程目录CORE下 点击任务栏 Project -> new uVision Project 然后系统会弹出提示框框,直接选择在刚刚建立的USER目录下建立工程 文件名自己取。 之后选择芯片包如图所示:(用的是ZET6最小系统板) 1.配置32库的过程可能有点麻烦,尤其是在官方固件库转移文件的时候,但是配置过程也是了解32项目构造的过程,尤其是几个内核外设文件库的配置,能够帮助理解32工程项目的构造以及后续头文件、函数的调用。 2.无论是F1还是F4的配置思路都是大同小异的,只需要改指定的外设库和内核即可 点亮LED 添加系统文件系统文件包括delay sys usart,直接用原子哥的导入即可 按照上述相同的方法在keil工程中建立SYSTEM的目录用来保存三个系统文件 创建LED文件目录,并编写LED文件Windows下进入工程文件目录,打开HARDWARE目录,新建LED文件目录,之后在LED目录下新建led.c和led.h文件 进入Keil5,在工程中的HARDWARE目录下导入led.c文件(led.h文件在下载的时候自动导入进去) led.c 初始化GPIO结构体,配置成输出模式 推挽输出 定义GPIO输出引脚 输出速度配置 #include "led.h" void LED_Init(void) { //初始化PE9 (开发板上与LED灯相连) GPIO_InitTypeDef GPIO_InitStruct; RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF, ENABLE); GPIO_InitStruct.GPIO_Mode = GPIO_Mode_OUT; GPIO_InitStruct.GPIO_OType = GPIO_OType_PP; GPIO_InitStruct.GPIO_Pin = GPIO_Pin_9; GPIO_InitStruct.GPIO_Speed = GPIO_Medium_Speed; GPIO_Init(GPIOF,&GPIO_InitStruct); }led.h #ifndef _LED_H_ #define _LED_H_ //系统头文件 #include "sys.h" #define LED0 PFout(9) //定义宏 直接可以用LED0来表示PE9端口电平 void LED_Init(void); //初始化函数 #endif 魔术棒配置参数main #include "stm32f4xx.h" #include "delay.h" #include "led.h" int main(void) { delay_init(168); LED_Init(); while(1) { LED0 = 0; delay_ms(1000); LED0 = 1; delay_ms(1000); } }把头文件全部添加路径后,直接下载程序,并将代码烧录到板子中去即可实现LED灯的循环亮灭! 总结LED灯的亮灭一般就是来检测程序编写是否有问题或者作为一个判断标志使用,在工程项目中,可以留着LED的目录作为检测代码是否正确使用! |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |