STM32F103RCT6学习笔记1:GPIO认识—点灯

news2024/11/24 5:44:55

今日开始快速掌握这款STM32F103RCT6芯片的环境与编程开发,有关基础知识的部分不会多唠,直接实践与运用!文章贴出代码测试工程与测试效果图:

目录

STM32F103RCT6参数解读:

GPIO的基础认识与分类:

串口相关:

定时器相关:

IIC相关:

ADC相关:

 DAC相关:

 SPI相关:

 其余引脚:

GPIO基本输出的配置:

实验设计:

代码:

实验效果:

 测试工程下载:

参考文章:


STM32F103RCT6参数解读:

根据STM32命名规则可知,通用类型,增强型,64脚

256k字节闪存,LQFP封装,工业级温度范围-40~85度。

GPIO的基础认识与分类:

拿到一块新的芯片,首先认识与分类它的GPIO是十分重要的,现在尝试认识分类一下:

                                   表格中红色的引脚表示有且只有这一个复用功能

串口相关:

TXDRXDCTSRTSCK
USART1PA9PA10PA11PA12
USART2PA2PA3PA0-WKUPPA4
USART3PB10PB11PB13PB14PB12
USART4PC10PC11
USART5PC12PD2

定时器相关:

CH1CH2CH3CH4ETRBKIN
TIM1

PB13(CH1N)

PA8

PB14(CH2N)

PA9

PB15(CH3N)

PA10

PA11PA12PB12
TIM2

PA0-WKUP

(CH1_ETR)

PA1PA2PA3
TIM3PA6PA7PB0PB1PD2
TIM4PB6

PB7

PB8PB9
TIM5PA0-WKUPPA1PA2PA3
TIM8

PA7(CH1N)

PC6

PB0(CH2N)

PC7

PB1(CH3N)

PC8

PC9PA0-WKUPPA6

IIC相关:

SCLSDASMBA
IIC1

PB6

PB7

PB5
IIC2

PB10

PB11PB12

ADC相关:

IN0IN1IN2IN3IN4IN5
ADC123PA0-WKUPPA1PA2PA3PA4PA5
IN6IN7IN8IN9IN10IN11
ADC123PA6PA7PB0PB1PC0PC1
IN12IN13IN14IN15
ADC123PC2PC3PC4PC5

 DAC相关:

OUT1OUT2OUT3OUT4OUT5
DACPA4PA5

 

 SPI相关:

NSSSCKMISOMOSI
SPI1PA4PA5PA6PA7
SPI2PB12PB13PB14PB15
SPI3PB3PB5

 

 其余引脚:

VBAT:

备用电池供电的引脚(可接一个3V的电池,当系统断电时,备用电池可以给内部的RTC时钟和备份寄存器提供电源)

PC13-TAMPER-RTC:

IO口(可以根据程序输出或读取高低电平)或者侵入检测(做安全保障功能)或者RTC(输出RTC校准时钟、RTC闹钟脉冲或者秒脉冲)

PC14-OSC32_IN 和 PC15-OSC32_OUT:

IO口或者接32.768KHz的RTC晶振

OSC_IN、OSC_OUT:

接系统的主晶振,一般是8Hz的(芯片内部有锁相环电路,可以对这个8Hz的频率进行倍频,最终产生72MHz的频率,作为系统的主时钟)

NRST:

系统复位引脚(N代表低电平复位的)

VSSA、VDDA:

内部模拟部分的电源(比如ADC、RC震荡器等),VSS是负极接GND,VCC是正极接3.3V

PB2:

IO口或者BOOT1引脚(BOOT引脚是用来配置启动模式的)

JTCK/SWCLK:

PA14,IO口或者调试端口,调试程序或者下载程序

JTDI:

PA15,IO口或者调试端口,调试程序或者下载程序

JTDO:

PB3,IO口或者调试端口,调试程序或者下载程序

NJTRST:

PB4,可以复用为普通IO使用

BOOT0:

用来做启动配置的

最后剩下10个引脚都是VSS\VDD相关的供电引脚

GPIO基本输出的配置:

这里先配置一下基本的输出---我们在查阅上述分类的表格可以发现,大部分搭载有各种模块功能的引脚都是PA、PB系列的,而PC0~PC5大多功能都只有ADC采样相关这一个复用功能,因此比较适合用来作为普通输入输出口使用:

实验设计:

使用PC2周期性点亮熄灭一个灯

代码:

Tip: 引脚的初始化与置位方面,可以通过 “|” (或)操作来一次性初始化同一系列的多个引脚

#include "delay.h"
#include "sys.h"

//GPIO_SetBits(GPIOB,GPIO_Pin_13|GPIO_Pin_15|GPIO_Pin_11|GPIO_Pin_10|GPIO_Pin_12|GPIO_Pin_1);	

void LED_init(void)
{
	GPIO_InitTypeDef  GPIO_InitStructure;

	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);	 //使能端口时钟
	GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
//	GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13|GPIO_Pin_15|GPIO_Pin_11|GPIO_Pin_10|GPIO_Pin_12|GPIO_Pin_1;	 
 	GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 		   //推挽输出
	GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;      //速度50MHz
 	GPIO_Init(GPIOC, &GPIO_InitStructure);
}

int main(void)
{
	delay_init();
	NVIC_Configuration();
	LED_init();
	
	while(1)
	{
		delay_ms(500);
		GPIO_SetBits(GPIOC,GPIO_Pin_2);
		delay_ms(500);
		GPIO_ResetBits(GPIOC,GPIO_Pin_2);
	}
}

实验效果:

 测试工程下载:

https://download.csdn.net/download/qq_64257614/88357563?spm=1001.2014.3001.5503

 

参考文章:

对stm32F103RCT6原理图解析(详细)_ghujlhdrx的博客-CSDN博客

STM32F103RCT6-64PIN引脚功能表格_stm32f103rct6引脚功能_FLYMCUCN的博客-CSDN博客

 STM32系统结构介绍_stm32的pc13功能_藤椒鱼块的博客-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1022906.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

新老用户看过来~最实用的 Milvus 迁移手册来啦!

毫无疑问,Milvus 已经成为全球诸多用户构建生产环境时必不可少的向量数据库。 近期,Milvus 发布了全新升级的 Milvus 2.3 版本,内核引擎加速的同时也加入了诸如支持 GPU 这样实用且强大的特性。可以说,以 Milvus 2.3 为代表的 Mil…

如何第一时间把DLL插件注入到目标进程

在windows下,把DLL插件注入到一个进程的方法有很多,比较常用的比如用远程线程(CreateRemoteThread)注入,或者用windows的API:SetWindowsHookEx来注入,如下图,可以用RemoteDll这个注入工具进行注入操作&…

【双分支混合CNN-transforme:Pansharpening】

DBCT-Net:A dual branch hybrid CNN-transformer network for remote sensing image fusion (DBCT-Net:一种用于遥感图像融合的双分支混合CNN-transformer网络) 遥感图像融合是指将高空间分辨率的单波段全色图像与光谱信息丰富的多光谱图像进行融合,生成…

HTTPS 的加密流程的总结

什么是HTTPS 和HTTP一样也是应用层协议,但在HTTP协议的基础上引入了一个加密层(SSL/TLS). HTTP协议内容都是按照文本的方式明文传输的这导致在传输过程第三方者能够轻易获取传输的内容,而HTTPS在HTTP协议基础上引入一个加密以防止传输内容泄露或被篡改。 因此HTTPS…

项目经理不容错过的一个认证——《研发效能(DevOps)工程师国家职业技术认证》

一、引言 在当今的商业环境中,软件研发已成为企业保持竞争力的关键因素之一。项目经理在软件研发中扮演着重要角色,而随着企业对于研发效率的追求,考取《研发效能(DevOps)工程师国家职业技术认证》对于项目经理的职业发展具有重要意义。本文…

许战海战略文库|无增长则消亡:大型制造集团增长困境

竞争环境不是匀速变化,而是加速变化。企业的衰退与进化、兴衰更迭在不断发生,这成为一种不可避免的现实。在过去的100年里,全球经济周期的时间长度明显缩短,周期内的波动也更为剧烈。联合国教科文组织的研究表明,18世纪知识更新的周期约为80到…

什么国产工作流引擎好?

要想提升办公协作效率,获得高效发展,可以借助低代码技术平台的力量。它的轻量级、灵活、易维护、好操作等优势特点都是现代化办公环境里的得力助手,也可以帮助大家打破信息孤岛,连接内部数据资源,为企业未来发展提供强…

在编译源码的环境下,搭建起Discuz!社区论坛和WordPress博客的LNMP架构

目录 一.编译安装nginx 二.编译安装MySQL 三.编译安装PHP 四.安装论坛 五.安装wordpress博客 六.yum安装LNMP架构(简要过程参考) 一.编译安装nginx 1)关闭防火墙,将安装nginx所需软件包传到/opt目录下 systemctl stop fire…

Xcode15+iOS17适配以及遇到的问题

今天更新了 Xcode15,遇到了一些问题,做下记录希望大家少走点坑。 1.iOS17 SDK 安装失败 Xcode更新完成后,打开项目一直显示 no fund iOS17 sdk,根据项目不同提示可能有区别,根据提示下载后提示安装失败,…

【vue+elementUI】输入框样式、选择器样式、树形选择器和下拉框样式修改

输入框样式、选择器样式和下拉框样式修改 1、输入框和选择器的样式修改:2、下拉弹框样式A. 选择器的下拉弹框样式修改B. 时间选择器的下拉弹框样式修改C. vue-treeselect树形下拉框样式 1、输入框和选择器的样式修改: 写在style中不能加scoped&#xff0…

力扣:103. 二叉树的锯齿形层序遍历(Python3)

题目: 给你二叉树的根节点 root ,返回其节点值的 锯齿形层序遍历 。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。 来源:力扣(LeetCode&#…

远程监控电脑软件有哪些?远程桌面监控软件哪个好用

随着科技的发展,远程桌面监控软件已经成为企业和个人用户的重要工具。它们可以帮助用户在任何地方、任何时间监控和管理远程计算机。本文将详细介绍远程桌面监控软件是什么,有哪些常见的远程桌面监控软件。 首先,我们来了解一下什么是远程桌面…

win系统环境搭建(一)——Windows安装一些小工具

windows环境搭建专栏🔗点击跳转 win系统环境搭建(一)——Windows安装一些小工具 本系列windows环境搭建开始讲解如何给win系统搭建环境,本人所用系统是腾讯云服务器的Windows Server 2022,你可以理解成就是你用的wind…

gpu cuda 数组求和优化

欢迎关注更多精彩 关注我&#xff0c;学习常用算法与数据结构&#xff0c;一题多解&#xff0c;降维打击。 问题描述 给定1个数组&#xff0c;利用gpu求和并返回结果。 cpu 算法 #include <math.h> #include<vector> #include<time.h> #include <stdio…

了解:iperf网络性能测试工具

当进行网络性能测试时&#xff0c;可以使用iperf这个开源工具。iperf是一款网络测试工具&#xff0c;它能够测试TCP或UDP带宽质量&#xff0c;以及单向和双向吞吐量。使用iperf进行网络性能测试首先需要在被测试的两台计算机上安装iperf。 如何安装iperf&#xff1f; 在Debia…

HTTP请求行详解

目录 一、认识URL 二、认识方法 2.1 GET方法 2.2 POST方法 2.3 其他方法 请求行也就是HTTP请求的第一行&#xff0c;接下来将对第一行内容进行详细解释 一、认识URL 平时我们俗称的 "网址" 其实就是说的 URL (Uniform Resource Locator 统一资源定位符)。互联网上的…

利用哈希表封装unordered_map和unordered_set

目录 一、迭代器1.1 普通迭代器1.1.1 operator 1.2 const迭代器1.3 代码实现 二、封装unordered_set三、封装unordered_map 一、迭代器 1.1 普通迭代器 1.1.1 operator 对于哈希桶结构&#xff0c;它的迭代器应该如何设计呢&#xff1f;我们仅封装一个Node的指针就行了吗&am…

扬帆配资:首个国家层面电力现货市场 建设规则出炉

9月18日&#xff0c;国家发改委、国家动力局发布了已于近日印发的《电力现货商场底子规则&#xff08;试行&#xff09;》&#xff08;下称《规则》&#xff09;&#xff0c;作为国家层面的首个电力现货商场制作规则文件&#xff0c;推进构建全国一致电力商场系统。 扬帆配资&…

VB过程的递归调用,辗转相除法求最大公约数

VB过程的递归调用&#xff0c;辗转相除法求最大公约数 过程的递归调用&#xff0c;辗转相除法求最大公约数 Private Function gys(ByVal m%, ByVal n%) As IntegerDim r%r m Mod n m大或者n大都无所谓&#xff0c;这个不影响计算&#xff0c;由于辗转相除法的算法&#xff0c…

高阶数据结构——图

图 图的基本概念 图的基本概念 图是由顶点集合和边的集合组成的一种数据结构&#xff0c;记作 G ( V , E ) G(V, E)G(V,E) 。 有向图和无向图&#xff1a; 在有向图中&#xff0c;顶点对 < x , y >是有序的&#xff0c;顶点对 < x , y > 称为顶点 x 到顶点 y 的…