STM32F103C8T6实现LED点亮


前言

记录第一次点亮LED灯!


一、使用工具

1.LED发光二极管
2.面包板
3.杜邦线
4.STM32F103C8T6单片机
5.USB转TTL USB转串口下载线CH340模块

二、安装

B站参考视频

设备安装(STM32F103C8T6点亮一个LED)

安装完后的样图:
在这里插入图片描述

三、Keil MDK创建项目

1.新建项目

2.新建文件夹

建一个文件夹(这里我取名为入门点亮LED灯)
在这里插入图片描述

新建工程名Project
在这里插入图片描述

3.配置

选择芯片STM32F103C8
在这里插入图片描述

点击ok,进入主界面,弹出的窗口叉掉
在这里插入图片描述

进入项目文件夹,新建三个文件夹StartLibraryUser
在这里插入图片描述

去官网找到固件库文件或者去csdn搜索一下,有教程,复制粘贴到文件夹下
Start
在这里插入图片描述

Library

在这里插入图片描述
User
在这里插入图片描述

回到keil,点击三个箱子的工程文件管理按钮
在这里插入图片描述

把默认的组叉掉
在这里插入图片描述

点按钮新建三个组,就是上面的文件夹名字
在这里插入图片描述
(1)Start
选中Start,在右边点击Add Files添加文件,打开Start文件夹,文件类型选中所有文件首先添加后缀为md的启动文件
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

然后按住Ctrl,将其他的.c.h文件都选中,添加进去
在这里插入图片描述

最后如图
在这里插入图片描述

(2)Library
同样选择Library,打开Library文件夹,文件类型选中所有文件,全选,添加
在这里插入图片描述

(2)User
Library一样,全选,添加
在这里插入图片描述

最后点击ok,这样工程里的组和文件都添加好了

点击魔术棒按钮,打开工程选项,选择C/C++
在这里插入图片描述
在这里插入图片描述

include Paths栏,点击后面的三个点,把我们自己创建的文件夹路径都添加进来,然后ok
在这里插入图片描述

Define栏上,写上USE_STDPERIPH_DRIVER
在这里插入图片描述

output中勾上Create HEX File,点击ok,这样,项目工程就配置好了
在这里插入图片描述

4.测试代码

在main.c中写代码,先进行编译调试
调试代码如下(示例):

#include "stm32f10x.h"                  // Device header
	
int main(void)
{

	while(1)
	{
		
	}
}

编译测试
在这里插入图片描述

没有错误,说明可以正常运行和写代码
在这里插入图片描述

5.点亮LED的代码

代码如下(示例):

#include "stm32f10x.h"                  // Device header

void LED_config(void)
{
	GPIO_InitTypeDef LED1;
	//定义一个名为:LED1的结构体
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);
	//使能GPIOB时钟
	
	//配置GPIOB的工作模式并初始化
	LED1.GPIO_Mode = GPIO_Mode_Out_PP;//推挽输出
	LED1.GPIO_Pin = GPIO_Pin_12;//引脚12
	LED1.GPIO_Speed = GPIO_Speed_50MHz;//速度50MHz
	GPIO_Init(GPIOB,&LED1);
}

int main(void)
{
	LED_config();
	GPIO_SetBits(GPIOB,GPIO_Pin_12);//置1
	GPIO_ResetBits(GPIOB,GPIO_Pin_12);//置0
	while(1);
}

编译一下,没有错误
在这里插入图片描述

四、使用mcuisp下载

先打开mcuisp,点击上方的搜索串口,有提示表明下载成功
在这里插入图片描述

选择编译生成的hex文件
在这里插入图片描述

选择DTR的低电平复位,RTS的高电平进BootLoader后,点击开始编程,写入成功!
在这里插入图片描述

LED灯成功点亮!
在这里插入图片描述


五、总结

第一次点亮LED灯的过程很不容易,中间不管是软件还是实践,均出现了一些细节方面的错误,让我意识到了,硬件这部分需要我们要有足够的耐心和细心,同时要善于查阅资料,有许多不懂的bug或者不懂的连线都可以在网上搜到别人大佬的细心解答。

参考资料

https://blog.csdn.net/ssj925319/article/details/108919862

STM32入门教程-2023持续更新中

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐