STM32点灯操作

STM32点灯操作

配置工程所需的必要文件

  • 1 创建一个单独的文件夹存放STM32的工程项目
  • 2 初始建立的Keil5工程项目虽然也有文件夹和部分文件,但是没有相关的头文件和库函数文件,所以我需要在该工程中引入这些文件,在项目中新建三个文件夹分别为User、Library和Start,之后再将相关的头文件和库函数文件引入进来.
    User文件夹下的文件:
    User文件夹下的文件
    Start文件夹下的文件:
    Start文件夹下的文件
    Library文件夹下的文件:
    Library文件夹下的文件
    工程文件夹下的目录结构:
    工程文件夹下的目录结构

点灯代码

  • 1在main.c(在User文件夹下)书写点灯代码(库函数方式)
#include "stm32f10x.h"                  // Device header

int main(void){
	//配置时钟控制
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);

	//配置端口模式
	GPIO_InitTypeDef GPIO_InitStructure;
	GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
	GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13  ;
	GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
	GPIO_Init(GPIOC,&GPIO_InitStructure);
	
	//配置端口的高低电平进行点灯操作
	//配置高电平
	GPIO_SetBits(GPIOC,GPIO_Pin_13);
	//配置低电平
	GPIO_ResetBits(GPIOC,GPIO_Pin_13);
	while(1)
		{
		
	}
		
}

  • 2配置点灯需要三个配置步骤:
  1. 引入头文件stm32f10x.h
  2. 配置时钟控制RCC_APB2PeriphClockCmd,在写完RCC_APB2PeriphClockCmd函数后可以在此函数上点击鼠标右键,跳转到函数定义里去,以便查看函数参数类型和选择函数参数名称.
    在这里插入图片描述

在跳转的函数定义中的函数上面可以看到一些声明,包括函数的参数介绍和可供选择的函数参数,第一个参数选择RCC_APB2Periph_GPIOC(至于为什么选择这个函数,我是新手也不太懂),第二个参数选择ENABLE
在这里插入图片描述
之后的配置端口模式(涉及结构体函数)、配置端口的高低电平进行点灯操作也是如此操作

  • 配置高电平可以让灯亮起来,配置低电平可以让灯熄灭

效果图

  • 高电平灯亮:
    在这里插入图片描述

- 低电平灯灭:
在这里插入图片描述

注意事项

  • 1在编译后确保程序0错误0警告(在控制台中可以看到)
  • 2我在编译后下载程序到STM32板中出现了两次No target connected的错误信息经排查第一次是因为STLink和STM32板子的线与线之间没有相互对应,第二次是因为STLink上的排线应该插在距离缺口远的的那一排.
  1. 排线没有相互对应导致的No target connected:
    在这里插入图片描述

  2. 排线在STLink插在错误一排导致的No target connected:
    在这里插入图片描述

  3. STM32相关问题解答: https://jiangxiekeji.com/problem.html

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

必胜的思想钢印

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值