今天通过这篇文章带大家简单地了解一下GPIO,让大家有一个简单的认识,能够尽快应用。
GPIO简介
每个通用I/O端口包括4个32位配置寄存器、2个32位数据寄存器、1个32位置位/复位寄存器、1个32位锁定寄存器和2个32位复用功能选择寄存器。
GPIO主要特性
GPIO功能描述
每个I/O端口位均可自由编程,但I/O端口寄存器必须按32位字、半字或字节进行访问。GPIOx_BSRR寄存器旨在实现对GPIO ODR寄存器进行原子读取/修改访问。这样便可确保在读取和修改访问之间发生中断请求也不会有问题。
5V容忍I/O端口位的基本结构
5V容忍I/O是说,从单片机过渡到arm的时候,因为单片机是5V芯片,arm是3.3V芯片,它们的I/O是有区别的,3.3V的芯片输出不了5V,只能输出3.3V,但是它能不能和5V芯片的I/O相接就取决于5V容忍能力,如果有5V容忍能力的话,就可以直接接到5V的芯片上,不会把它烧坏。
关键字:STM32 入门 精通 GPIO
引用地址:
STM32从入门到精通—GPIO简介
推荐阅读最新更新时间:2024-11-10 11:06
STM32睡眠模式低功耗(停止模式)
目前stm32已经非常流行了,那么本文讨论下stm32低功耗模式,不多说先上手册内容! 这是英文文档 不好看懂是吧,下面看中文文档! 我对比了 STM32F0 和 STM32F1 两者进入低功耗是一样的,STM32F4的类似目前没有研究。 低功耗模式有三种, 1.睡眠模式,( CM3 内核停止,外设仍然运行)此功耗是最高的。 2.停止模式,(所有时钟都停止)此功耗较低,典型大概在20uA左右。 3.待机模式,( 1.8V 内核电源关闭)此功耗最低,典型大概在2uA左右。 如果不行那就看手册,上图 一般我们做开发大多都是选择停机模式,因为停机模式功耗较低。而且任一中断或事件都能唤醒,待机模式虽然功耗最低,也就差10个微安,但
[单片机]
STM32入门学习笔记之文件系统FatFs的移植3
21.2.2 ffsystem.c文件的修改 (1)内存分配ff_memalloc void* ff_memalloc( UINT msize ) { return ( void* )mymalloc( SRAMIN, msize ) ; } (2)内存释放ff_memfree void ff_memfree( void* mblock ) { myfree( SRAMIN, mblock ) ; } 21.2.3 exfuns.c与exfuns.h文件的创建 (1)创建exfuns.h文件,并输入以下代码。 #ifndef _EXFUNS_H #define _EXFUNS_H #i
[单片机]
STM32小白入门(第九天)-------温湿度模块
型号:DHT11,测量范围在温度0-50度,湿度20-90%RH,4针单排直插式 注意事项: 1.如果想去跟踪温湿度代码跑到哪个位置,禁止使用串口打印输出,因为你们使用115200bps的时候,每打印一个字节都占用86us,会导致温湿度的检测超时。 开发板总共有4盏LED灯,代表16种状态,因为IO口速度是100MHz,所花的时间是10ns。
[单片机]
stm32 pc13~pc15 配置成IO口
在STM32的数据手册的管脚分配图中可以看到:PC14与OSC32_IN公用一个引脚,PC15与OSC32_OUT公用一个引脚,它们的使用方法如下: 当LSE(低速外部时钟信号)开启时,这两个公用管脚的功能是OSC32_IN和OSC32_OUT。 当LSE(低速外部时钟信号)关闭时这两个公用管脚的功能是PC14和PC15。 备用区域控制寄存器(RCC_BDCR)的LSEON用于控制LSE的开启或关闭。关于这个寄存器的用法请参看《STM3210x技术参考手册》。 文档下面有一段话: PC13,PC14和PC15引脚通过电源开关进行供电,因此这三个引脚作为输出引脚时
[单片机]
STM32关于外部时钟晶振为什么选用8MHz
芯片的主晶振频率范围一般来说在数据手册(Datasheet)和技术参考手册(Technical Reference Manual)中都有介绍。 你提到的时钟先分频再倍频,这个需要深入到STM32的内部去一探究竟了, 在其技术参考手册的第7.2节Clocks的一开始有一个表格,时钟树(Figure 8. Clock tree),它完全地列出来STM32这个芯片内部各个模块的时钟来源以及相关的从属关系。 在这个图的正中央,有一个核心时钟:SYSCLK,它最大频率是72MHz,它的时钟信号通过选择器SW可以由PLLCLK提供(也可由HIS、HSE提供)。 PLL,毫无疑问,它是用来倍频的,可以*2,*3,*4……*16,它
[单片机]
适合STM32的三大嵌入式操作系统
基于STM平台且满足实时控制要求操作系统,有以下5种可供移植选择。分别为μClinux、μC/OS-II、eCos、FreeRTOS和都江堰操作系统(djyos)。下面分别介绍这五种嵌入式操作系统的特点及不足。 1、μClinux μClinux是一种优秀的嵌入式Linux版本,其全称为micro-control Linux,从字面意思看是指微控制Linux。同标准的Linux相比,μClinux的内核非常小,但是它仍然继承了Linux操作系统的主要特性,包括良好的稳定性和移植性、强大的网络功能、出色的文件系统支持、标准丰富的API,以及TCP/IP网络协议等。因为没有MMU内存管理单元,所以其多任务的实现需要一定技巧。
[单片机]
基于STM32的超声波HC-SR04详解
HC-SR04基本工作原理: (1)采用IO口TRIG触发测距,给最少10us的高电平信呈。 (2)模块自动发送8个40khz的方波,自动检测是否有信号返回; (3)有信号返回, 通过IO口ECHO输出一个高电平, 高电平持续的时间就是超声波从发射到返回的时间。 测试距离=(高电平时间*声速(340M/S))/2。 程序编写思路是: 1、配置好使用到的GPIO以及定时器; 2、给模块TRIG端口发送大于10us的高电平信号,当收、收到ECHO回响信号是,打开定时器开始定时; 3、当回响信号消失,关闭定时器; 4、通过定时器定时时间来确定距离。 连线 1.这里,HC-SR04模块必须使用5V供电,不能是3.3V (若
[单片机]
三星Galaxy J4渲染图来了 定位入门主打低端市场
提起三星大家绝对不会陌生,这是当下手机界最强巨头之一,旗下的手机产品备受网友关注。前不久刚刚曝光完三星Galaxy S8 Lite版本之后,又一款名为Galaxy J4的新机渲染图到来。 网传三星Galaxy J4 根据曝光显示,三星Galaxy J4将采用16:9显示屏材质为自家的Super AMOLED面板,搭载主频为1.4GHz的八核Exynos 7570芯片组,2GB/3GB RAM,1300万像素后置和500万像素前置摄像头,内置16GB/32GB存储(可扩展),双SIM卡插槽,支持LTE连接,3000mAh电池。 从数据上来看,这款三星Galaxy J4将会定位低端手机市场,并没有采用全面屏设计、Type-
[手机便携]