文件说明
bsp_led.c负责LED的初始化配置
bsp_led.h负责外设LED函数的声明,以及宏定义,提高移植性
main.c实现功能点亮LED
代码
1.mai.c
#include "stm32f4xx.h"
#include "bsp_led.h"
int main(void)
{
while(1)
{
LED_GPIO_Config();
}
}
2.bsp_led.c
#include "bsp_led.h"
void LED_GPIO_Config(void)
{
//定义一个结构体指针对象 GPIO_InitStruct来调用成员
GPIO_InitTypeDef GPIO_InitStruct;
//0-打开系统时钟(因为STM32F429默认时钟是关闭的,需要打开才能驱动外设)
RCC_AHB1PeriphClockLPModeCmd(LED_GPIO_CLK,ENABLE);
/*
*下面写好的的配置函数都存放在头文件里面,可利用ctrl+f查找
*/
//1-设置引脚
GPIO_InitStruct.GPIO_Pin = LED_GPIO_PIN;
//2-设置为输出模式
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_OUT;
//3-设置为推挽输出类型
GPIO_InitStruct.GPIO_OType = GPIO_OType_PP;
//4-设置为上拉
GPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_UP;
//5-设置速度50MHZ
GPIO_InitStruct.GPIO_Speed = GPIO_Fast_Speed;
//把引脚写进寄存器的函数,第二个参数传进去的是指针,需要加取址符
GPIO_Init(LED_GPIO_PORT,&GPIO_InitStruct);
}
3.bsp_led.h
#ifndef __LED_H //防止重定义
#define __LED_H
#include "stm32f4xx_gpio.h"
#include "stm32f4xx_rcc.h"
void LED_GPIO_Config(void); //进行函数声明
//对端口,引脚和时钟进行宏定义,方便移植,仅需要修改此处即可
#define LED_GPIO_PIN GPIO_Pin_10
#define LED_GPIO_PORT GPIOH
#define LED_GPIO_CLK RCC_AHB1Periph_GPIOH
#endif /*__LED_H*/
上一篇:STM32F429--按键检测
下一篇:GPIO功能框图--以STM32F429为例
推荐阅读最新更新时间:2024-11-17 00:50
推荐帖子
- ST工业峰会2019邀您相聚深圳!
- 作为一次行业盛会,意法半导体工业峰会将为来自工业市场的各个领导者提供一个互相交流探索、推动创新发展的平台。本次工业峰会主要议程包括:主题演讲–ST及合作伙伴公司高层将与您分享产品部署及发展战略,并带来最新的产品和解决方案技术研讨会–超过40个技术研讨会,与您深度探讨行业技术技术展台–ST及合作伙伴将展示最新的合作机器人、机械臂、照明系统、智能家居、工业自动化及预测性维护等超过100项产品及技术日期与地点2
- eric_wang ST传感器与低功耗无线技术论坛
- 【瑞萨RA6E2评估板】CAN FD功能和通讯兼容性测试
- CANFD通讯功能是比较高级的功能,RA6E2具有CANFD通讯功能,而且瑞萨公司还提供了CANFD的培训教材,本次测试除了使用开发板RA6E2以外还,还使用了米尔STM32MP135开发板,通过两块板的硬件进行连接,这里CANFD的引脚不能直接连接,需要PHYTJA1043芯片,这个芯片将TTL信号转换为差分信号。参考实验教程,首先建立项目CANFD_FSP_Project,项目模板使用FPB_RA6E2,项目类型为Keil项目增加按钮的IRQ模块,使用按钮来发送数据
- bigbat 瑞萨电子MCU
- IAR MSP430编译报错说明
- 无编号警告类型:1、SatJun23,201217:41:05:Thestackpointerforstack'Stack'(currentlyMemory:0xF5336)isIAR相关设置:Tools-Option-Stack-Warnwhenstackpointerisoutofbounds.2、无法查看结构体/共同体/联合体变量column1structdrpoint{ui
- fish001 微控制器 MCU
- WinCE6下如何关掉屏幕保护?
- 我在桌面上已经设置了当Battery和电源供电时的屏保时间,但是总是在1分钟无任何操作后,屏幕自动变黑,不知道为什么?谁知道是什么原因?WinCE6下如何关掉屏幕保护?
- ldw3 WindowsCE
- ADI官网上的样片申请常见问题
- 1.如何申请ADI样片?在线申请样片步骤:第一步:通过ADI公司网站搜索您需要的器件,确定产品型号后,点击产品信息页面上的“添加至样片车”按钮,您的浏览器会被重定向到样片车页面。第二步:在样片车页面点击“结算”按钮。第三步:如果您已经注册,网站会提示您进行登录。如果您尚未在ADI公司网站注册,请先注册,再完成申请过程。每份订单都会收到订单确认和发货通知电子邮件。2.我可以通过公共或者免费电子邮件帐户(如YAHOO或HOTMAIL)申请样片么?很抱歉,在线样片
- exiao ADI参考电路
- 【CN0180】用于工业级信号的精密单电源差分 ADC 驱动器 (CN0180)
- 电路功能与优势标准单端工业信号电平(±5V、±10V或0V至+10V)与现代高性能16位或18位单电源SAR型ADC的差分输入范围并不直接兼容,需要使用适当的接口驱动电路对工业信号进行衰减、电平转换和差分转换,使其具有与ADC输入要求相匹配的正确幅度和共模电压。虽然可以利用电阻网络和双通道运放来设计适当的接口电路,但电阻的比率匹配误差和放大器之间的误差会形成最终输出端的误差。特别是在低功耗水平上,实现所需的输出相位匹配和建立时间可能非常困难。【CN0
- EEWORLD社区 ADI参考电路
设计资源 培训 开发板 精华推荐
- mpu6050
- FRDM-KW40Z: 面向Kinetis® KW40Z/30Z/20Z MCU的Freedom开发平台
- LT3503 演示板、1.2A、2.2MHz 降压型开关稳压器,采用 2mm3mm DFN
- 3 基于 ST1S10 (Power SO-8) 的具有抑制功能的同步 900 kHz 降压 DC-DC 转换器
- 用于 LED 照明的通用 LED 驱动器
- 使用 Infineon Technologies AG 的 IRU3072 的参考设计
- ZVS电路DIY
- 萝丽3ver 6ch接收机(超mini)
- TS482 100mW 立体声耳机放大器典型应用
- 利用先进的热电偶和高分辨率Σ-Δ ADC实现高精度温度测量