当前位置:网站首页>以STM32F103C6TA为例通过配置CubeMX实现GPIO输出完成点灯实例
以STM32F103C6TA为例通过配置CubeMX实现GPIO输出完成点灯实例
2022-08-10 05:35:00 【Gerrard yue】
1:打开CubeMX,点击File新建一个工程

2:搜索单片机型号:在弹出的型号中选择以STM32F103C6,双击

3:此时会弹出一个新建的工程,先点击file保存工程

4:选择要保存的路径,注意路径要全英文不能有中文

5:接下来配置单片机外部的晶振作为时钟源 System Core-RCC-High Speed Clock 将默认的Disable选项改为Crystal/Ceramic Resonator

6:选完之后可以发现晶振的输入输出脚已经占用了端口

7:接下来选择Clock Configuration时钟树,将默认的HSI改为HSE选项,意思是选择外部的时钟源

8:将主时钟源改为最大,点击回车确定,系统将自动配置相关外设参数
9:回到配置界面,点击System Core-SYS-Debug,将默认的no debug改为Serial Wire(串行调试)

10:选择之后可以发现,仿真器SWD的两个引脚已经被配置,一个是数据引脚,一个是时钟引脚

11:选择project manager工程管理,选择生成代码打开的软件,这边选择IAR,再选择生成代码


12:生成代码后选择打开代码所在路径就可以看到刚刚生成的工程


13:基础的模板就已经生成好了,接下来添加我们需要的功能。打开原理图,找到点灯的部分。可以看到阳极连接DCC 3.3V,阴极接到LED2

14:可以看到LED2连接的是STM32F103C6T6核心板中的PB8端口

15:打开工程回到配置界面,将PB8管脚配置为GPIO_output模式,设置用户标签,命名为LED2


16:随后点击system view中的GPIO配置界面

17:GPIO output level选择low(根据电路图低电平可以点亮)GPIO mode选择推挽式输出(驱动能力更强)上拉下拉输入输入模式暂时不用管 保存工程后再次生成代码

18:在生成的文件夹里用IAR打开工程

19:展开工程目录,找到main.c文件,点击make检查所生成的代码有没有错误

20:将库函数输入指定GPIO代码开始的部分
HAL_GPIO_WritePin(LED2_GPIO_Port, LED2_Pin, GPIO_PIN_RESET); //输出低电平
HAL_GPIO_WritePin(LED2_GPIO_Port, LED2_Pin, GPIO_PIN_SET); //输出高电平

21:右击跳转函数可以看到函数的宏定义


22:使用STlink连接核心板,选择仿真器类型stlink,如果看到IAR选项中显示板子的型号说明连接成功


23:接下来编译一下程序如果没有问题点击下载将程序下载到板子中,下载完成之后调整窗口,将光标放在刚刚复制的GPIO代码处,点击运行到光标(为了快速执行所需要的代码)

24:随后点击单步执行

25:当代码运行到输出低电平时,板子上的LED灯点亮,再执行一步到输出高电平后LED灯熄灭


以上就是利用GPIO输出高低电压控制LED灯亮灭的过程。
边栏推荐
- Radon 变换原理和应用
- String common methods
- Test of the opposite sex what you look like?
- pytorch-11. Convolutional Neural Network (Advanced)
- STM32单片机RGB红蓝调光植物补光系统红光蓝光PWM调色调节亮度
- 微信小程序-小程序的宿主环境
- .NET操作Excel高效低内存的开源框架 - MiniExcel
- Privatisation build personal network backup NextCloud
- Collection工具类
- pytorch-10. Convolutional Neural Networks
猜你喜欢

Convolutional Neural Network (CNN) for Clothing Image Classification

pytorch-06.逻辑斯蒂回归

LeetCode 面试题17.14 最小k个数(中等)

STM32单片机OLED俄罗斯方块单片机小游戏

2022李宏毅机器学习hw1--COVID-19 Cases Prediction

LeetCode 1894.找到需要补充粉笔的学生编号

LeetCode 100. The same tree (simple)

菜谱小程序源码免费分享【推荐】

Deep learning TensorFlow entry environment configuration

Convolutional Neural Network (CNN) for mnist handwritten digit recognition
随机推荐
我不喜欢我的代码
51单片机营养液自动配置搅拌系统TDS浓度采集自动加水加营养液
LeetCode 292.Nim 游戏(简单)
LeetCode 面试题17.14 最小k个数(中等)
STM32单片机OLED经典2048游戏单片机小游戏
Convolutional Neural Network (CNN) for mnist handwritten digit recognition
Radon 变换原理和应用
Notes for RNN and Decision Tree
cesium rotate image
PyTorch的安装与基础知识
机器学习——聚类——商场客户聚类
Chain Reading Good Article: Jeff Garzik Launches Web3 Production Company
51单片机ST188手持人体温度脉搏心率测量仪锂电池充电
符号表
Exploratory Data Analysis EDA
VTK 初步 (1) ----- 可视化管线
[Notes] Collection Framework System Collection
21天挑战杯MySQL-Day05
Bifrost micro synchronous database implementation services across the library data synchronization
pytorch-10. Convolutional Neural Networks (homework)