STM32程序编写基本流程(LED流水灯)

这篇博客详细介绍了STM32实现LED流水灯的程序编写步骤,包括寄存器方式的配置,以及如何利用sys.h库进行端口设置。通过实例代码,展示了如何用STM32控制LED实现流水灯效果。
摘要由CSDN通过智能技术生成

LED流水灯程序初始化流程

//1.定义结构体变量
  GPIO_InitTypeDef GPIO_InitStructure;
//2.开启GPIOC的外部时钟,不同的外设开启不同的时钟,IO口复用时两个时钟都要开启。stmf10x_rcc.h
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);
//3.设置要控制的GPIO管脚
  GPIO_InitStructure.GPIO_Pin=GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5;
//4.设置管脚模式,推挽输出 
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
//5.设置GPIOC的引脚速度为50MHz
  GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
//6.调用库函数初始化GPIOC,初始化IO口 
  GPIO_Init(GPIOC,&GPIO_InitStructure); 
//7.关闭所有LED等灯,GPIO_ResetBits(,);GPIO_SetBits(,);置位和清0函数
  GPIO_SetBits(GPIOC,GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5);

寄存器方式

  GPIO_TypeDef * GPIOx;  
  GPI0x=GPIOA;  
//开启GPIOA外设时钟
  GPIOx->APB2ENR|=1<<2; 
//配置GPIOA.3 4 5为推挽输出50MHZ 
  GPIOx->CRL|=0X03<<12|0X03<<16|0X03<<20;  
//GPIOA.3 4 5输出0xff。
  GPI
要使用Keil5编写STM32 LED流水灯全亮的程序,你需要进行以下步骤: 1. 首先,你需要创建一个新的Keil项目。在打开Keil5之后,选择"Project" -> "New µVision Project",并且为你的新项目命名。 2. 在项目创建后,你需要选择正确的芯片型号。在"Device"选项卡下面,你可以搜索到你正在使用的STM32芯片型号。 3. 然后,你需要配置引脚。在"Pinout"选项卡下面,你需要为LED引脚分配正确的引脚。这些引脚将被用来控制LED的状态。 4. 接下来,你需要编写程序来控制LED。在"Source Group"中,右键单击并选择"Add New Item"来添加一个新的源文件。然后编写如下代码: ``` #include "stm32f4xx.h" GPIO_InitTypeDef GPIO_InitStruct; int main(void) { RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD, ENABLE); GPIO_InitStruct.GPIO_Pin = GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14 | GPIO_Pin_15; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_OUT; GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStruct.GPIO_OType = GPIO_OType_PP; GPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_NOPULL; GPIO_Init(GPIOD, &GPIO_InitStruct); while(1) { GPIO_SetBits(GPIOD, GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14 | GPIO_Pin_15); } } ``` 这段代码初始化了GPIOD口,使用了4个引脚作为LED控制引脚,并且通过循环设置这些引脚为高电平,从而使LED全亮。 5. 最后,编译和下载程序。在Keil5中,选择"Project" -> "Build Target" 来编译程序。然后连接STM32开发板并下载程序
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值