STM32F1的8种GPIO输入输出模式

发布者:才富五车330最新更新时间:2022-05-19 来源: eefocus关键字:STM32F1  GPIO  输入输出模式 手机看文章 扫描二维码
随时随地手机看文章

输入模式

    -输入浮空(GPIO_Mode_IN_FLOATING)

    -输入上拉(GPIO_Mode_IPU)

    -输入下拉(GPIO_Mode_IPD)

    -模拟输入(GPIO_Mode_AIN)

输出模式

    -开漏输出(GPIO_Mode_Out_OD)

    -开漏复用功能(GPIO_Mode_AF_OD)

    -推挽式输出(GPIO_Mode_Out_PP)

    -推挽式复用功能(GPIO_Mode_AF_PP)

 

在STM32中选用IO模式
(1) 浮空输入_IN_FLOATING --浮空输入,可以做KEY识别,RX1
(2)带上拉输入_IPU--IO内部上拉电阻输入
(3)带下拉输入_IPD-- IO内部下拉电阻输入
(4) 模拟输入_AIN --应用ADC模拟输入,或者低功耗下省电
(5)开漏输出_OUT_OD --IO输出0接GND,IO输出1,悬空,需要外接上拉电阻,才能实现输出高电平。当输出为1时,IO口的状态由上拉电阻拉高电平,但由于是开漏输出模式,这样IO口也就可以由外部电路改变为低电平或不变。可以读IO输入电平变化,实现C51的IO双向功能
(6)推挽输出_OUT_PP --IO输出0-接GND, IO输出1 -接VCC,读输入 是未知的
(7)复用功能的推挽输出_AF_PP --片内外设功能(I2C的SCL,SDA)
(8)复用功能的开漏输出_AF_OD--片内外设功能(TX1,MOSI,MISO.SCK.SS)


关键字:STM32F1  GPIO  输入输出模式 引用地址:STM32F1的8种GPIO输入输出模式

上一篇:STM32H7 DMA USART空闲中断接收不定长数据
下一篇:STM32PWM频率计算

推荐阅读最新更新时间:2024-11-02 17:26

11. GPIO原理与配置(跑马灯,蜂鸣器,按键)
一。STM32 GPIO固件库函数配置方法 1. 根据需要在项目中删掉一些不用的固件库文件,保留有用的固件库文件 2. 在stm32f10x_conf.h中注释掉这些不用的头文件 3. STM32的IO口可以由软件配置成如下8种模式(4种输入模式,4种输出模式) 分别在CRL寄存器和CRH寄存器中配置,配置每一个IO口需要4位来配置 2位MODE位----配置是输入模式还是输出模式 2位CNF位---根据MODE位的配置来确定是哪种输入模式或输出模式 a。输入浮空 b。输入上拉 c。输入下拉 d。模拟输入 e。开漏输出 f。推挽输出 g。推挽式复用功能 h。开漏复用功能 配置函数 void GPIO_Init(GPIO
[单片机]
11. <font color='red'>GPIO</font>原理与配置(跑马灯,蜂鸣器,按键)
STM32总结之GPIO编程过程
用寄存器点亮LED的过程 1:通过原理图找到要点亮的LED灯对应的GPIO口 2.通过stm32手册找到要操作的寄存器,找到这个GPIO的基地址, 基地址+地址偏移 = 目标寄存器的地址 3.编码 1.打开对应的GPIO的时钟。 2.通过操作CRL寄存器将对应的GPIO口设置为推挽输出模式,并设置一 个翻转速度 3.通过操作ODR寄存器,将电平置高或置低。 按键操作过程 1.通过原理图找到要操作的按键对应的GPIO 2.通过stm32手册找到要操作的寄存器,找到这个GPIO的基地址 基地址+地址偏移 = 目标寄存器的地址 3.编码 1.打开对应的GPIO的时钟。 2.通过操作CRL寄存器将对应的GP
[单片机]
STM32 GPIO——流水灯例程 学习总结
通过控制LED灯,熟悉STM32的存储器结构、地址映射、时钟树、库文件、利用库的方法及开发工程的步骤,建立STM32的开发思想。 这是我建立的第一个工程,由于涉及面较广,知识点分散,在此做一个总结。 1)为控制LED灯,知道要使用GPIO外设。 GPIO(General-Purpose I/O):I/O引脚可以被软件设置成各种不同的功能,如输入或输出。控制LED灯,即控制STM32芯片的I/O引脚电平的高低来实现。 2)了解GPIO外设有什么功能,要如何使用。 GPIO引脚又被分为GPIOA、GPIOB、...、GPIOG不同的组,每组端口分为0~15共16个不同的引脚,对于不同型号的芯片,端口的组和引脚的数量不同。 功能查看
[单片机]
WinCE内核动态加载GPIO端口驱动的设计方法
引言 WinCE下GPIO端口驱动大多采用流接口驱动的方式进行开发,在实现上主要依托Platform Builder编译环境将驱动程序编译成动态链接库,并整合到WinCE内核中。但在实际项目的开发中,Platform Builder在驱动程序的开发和涮试上不够便捷,且在整合动态链接库和WinCE内核时,需要进行繁琐的参数配置,整个过程较为复杂。笔者以飞凌S3C2440开发板为例,给出在VisualStudio编译环境中采用动态加载方式来设计GPIO端口驱动程序的思路,较好地改进了目前常用的GPIO端口驱动设计方法,提高了开发效率。 1 GPIO端口的流驱动设计 1.1 过程简述 关于GPIO端口流驱动的设计原理,大量论文
[单片机]
WinCE内核动态加载<font color='red'>GPIO</font>端口驱动的设计方法
(linux自学笔记)linux环境下GPIO字符驱动
linux环境下驱动包括三类:字符设备驱动,块设备驱动,网络设备驱动。 linux的驱动程序,可以编写成模块,加载到内核中。 linux的操作设备,是以文件的形式。 简单的IO口驱动,driver_led.c文件: #include linux/module.h #include linux/kernel.h #include linux/fs.h #include asm/uaccess.h /* copy_to_user,copy_from_user */ #include linux/miscdevice.h #include linux/pci.h #include mach/ma
[单片机]
STM32F10x芯片GPIO/AFIO端口配置总结
1、介绍 STM32F10x芯片的GPIO/AFIO配置主要包括以下几方面知识:在时钟控制模块中配置好相应总线时钟,并在总线上使能对应的GPIO口(AFIO口,需要的话)时钟后:根据需求配置相应GPIO端口为对应的输入/输出模式,按需求更改/读取端口的数据;端口功能重映射;若用外部中断,则将中断线与对应引脚链接起来。 STM32F10x芯片的每个GPIO端口都有7个相关的寄存器:2个32位配置寄存器(GPIOx_CRL,GPIOx_CRH),两个32位数据寄存器(GPIOx_IDR,GPIOx_ODR),一个32位置位/复位寄存器(GPIOx_BSRR),一个16位复位寄存器(GPIOx_BRR)和一个32位锁定寄存器(GPI
[单片机]
STM32F10x芯片<font color='red'>GPIO</font>/AFIO端口配置总结
MSP430F249GPIO控制入门
#include MSP430x24x.h void main(void) { // Stop watchdog timer to prevent time out reset WDTCTL = WDTPW + WDTHOLD; //关狗 P4DIR = BIT0|BIT1|BIT2|BIT3; //设置为输出 P4SEL = 0; while(1) { volatile unsigned int i; P4OUT ^= 0x0F; //电平翻转 i = 50000; // Dela
[单片机]
STM32使用BSRR和BRR寄存器快速操作GPIO端口
STM32的每个GPIO端口都有两个特别的寄存器,GPIOx_BSRR和GPIOx_BRR寄存器,通过这两个寄存器可以直接对对应的GPIOx端口置'1'或置'0'。 GPIOx_BSRR的高16位中每一位对应端口x的每个位,对高16位中的某位置'1'则端口x的对应位被清'0';寄存器中的位置'0',则对它对应的位不起作用。 GPIOx_BSRR的低16位中每一位也对应端口x的每个位,对低16位中的某位置'1'则它对应的端口位被置'1';寄存器中的位置'0',则对它对应的端口不起作用。
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved