STM32F407-点亮LED灯

LEDs

365人已加入

描述

初始化

点亮LED需要首先初始化。这块STM32F4开发板的LED共有4个,都是链接到GPIO上的。具体原理图如下:

寄存器

可以看到四个端口位置。再由芯片相关图纸可以查阅到LED0和LED1连接到了PF9和PF10

寄存器

2和3链接到了PE13和PE14。

接着初始化。

STM对于GPIO的初始化提供了一套可以直接使用的初始化结构体。

寄存器

使用前首先需要打开时钟:

RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF, ENABLE);//使能 GPIOF 时钟

其中RCC_AHB1Periph_GPIOF的意思是AHB1上的GPIOF时钟。如果一行代码使能E和F时钟则如下所示:

RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOE | RCC_AHB1Periph_GPIOF, ENABLE);//使能GPIOE,GPIOF时钟

定义结构体,然后对于结构体内的各个数据进行定义,最后调用初始化函数,使所有设置生效。这样初始化就完成了

寄存器

其中第一行中的_9和_10指的是后缀,也就是本组内所有以9和10结尾的IO口都会受影响。第7行中的GPIOF指的是第F组。也就是说,F组中的9,10口参数将被如上所示设置。至于怎么知道是第F或者第E组?我们可以查看pin口标号。PF9和PF10的意思就是GPIO第F组第9个pin和第10个pin。同理PE13和14也是类似的。

使用GPIO点亮LED

初始化完成后,想要点亮只需使用GPIO_SetBits函数和GPIO_ResetBits函数即可。前者将指定GPIO口设为低电平,后者设为高电平。使用如下:

GPIO_SetBits(GPIOF,GPIO_Pin_10);

GPIO_ResetBits(GPIOE,GPIO_Pin_14);

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分