STM32 学习笔记之(一) 点亮一颗 LED 灯

STM32 学习笔记之(一)点亮一颗 LED 灯

一、初始化IO口

初始化IO口,就是使能时钟总线,设置好IO口的 具体的pin脚、输入输出、具体的模式、具体的速度等等

	GPIO_InitTypeDef  GPIO_InitStructure;

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

	//GPIOF9,F10 IO口配置
	GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_10;//具体pin脚
	GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;//输入输出
	GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//具体模式
	GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//频率
	GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//模式
	GPIO_Init(GPIOF, &GPIO_InitStructure);//导入参数
	GPIO_SetBits(GPIOF,GPIO_Pin_9|GPIO_Pin_10);
	//确定GPIOF9,F10初始状态 

二、编辑main函数

调用自己编写的LED灯的接口,先初始化,然后让两颗LED交替闪烁

int main(void)
{
delay_init(168);  //初始化延时函数
LED_Init();  //初始化 LED 端口

while(1)
{
	GPIO_ResetBits(GPIOA,GPIO_Pin_1); 
	GPIO_SetBits(GPIOA,GPIO_Pin_2);
	delay_ms(500); //延时 500ms
	
	GPIO_ResetBits(GPIOA,GPIO_Pin_1|GPIO_Pin_2);
	delay_ms(500); //延时 500ms
	
	GPIO_SetBits(GPIOA,GPIO_Pin_1);
	GPIO_ResetBits(GPIOA,GPIO_Pin_2);
	delay_ms(500); //延时 500ms
	
	GPIO_ResetBits(GPIOA,GPIO_Pin_1|GPIO_Pin_2);
	delay_ms(500); //延时 500ms
}
}

三、烧录程序

Jlink烧录,只要设置没问题就可以了。

请添加图片描述

感悟

这是我写的第一个程序,完全是仿照着例程写的,突然好迷茫!不懂得这么做的意义在哪里,不懂得为什么这么写,不懂得具体的格式规范,只是改例程的话,万一有一天没有例程了怎么办?

好吧,可能是我刚刚开始学习,道行太浅吧!且学且看吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值