目录一. GPIO内部结构图1. 核心器件分析2. GPIO八种工作模式二. GPIO寄存器分析1. GPIOx_CRL和GPIOx_CRH寄存器2. GPIOx_IDR和GPIOx_ODR寄存器3. GPIOx_BSRR, GPIOx_BRR和GPIOx_LCKR寄存器三. GPIO外设驱动1. 操作寄存器方式2. 调用固件库(标准库)方式3. GPIO_Init()函数分析.4. GPIO外设
一、GIPIO介绍General Purpose Input Output (通用输入/输出)简称为GPIO,或总线扩展器,人们利用工业标准I2C、SMBus或SPI接口简化了I/O口的扩展。当微控制器或芯片组没有足够的I/O端口,或当系统需要采用远端串行通信或控制时,GPIO产品能够提供额外的控制和监视功能。1.GPIO的优点低功耗:GPIO具有更低的功率损耗(大约1μA,μC的工作电流则为10
转载
2023-11-15 21:44:23
144阅读
1 GPIO详解1.1 gpio框图与GPIO相关的寄存器,不涉及复用,简单理解就是电灯、蜂鸣器控制等,与之相关的寄存器一共有7个GPIOx_CRL(x = A..E)端口配置低寄存器GPIOx_CRH(x = A..E)端口配置高寄存器GPIOx_IDR(x = A..E)端口输入数据寄存器GPIOx_ODR(x = A..E)端口输出数据寄存器GPIOx_BRR(x = A..E)端口位清除寄
转载
2023-08-16 17:19:20
314阅读
1. GPIO编程基础介绍GPIO(General-Purpose IO Ports),即通用IO接口。GPIO的使用较为简单,主要分为输入和输出两种功能。GPIO主要用于实现一些简单设备的控制。在作为输入型GPIO的情况下,我们可以将该IO连接外部按键或者传感器,用于检测外部状态。当作为输出时,我们可以通过输出高低电平来控制外部设备的运转。由于GPIO的功能多种多样,我们需要首先将引脚设置为GP
转载
2023-09-06 12:22:39
140阅读
GPIO,通用可编程输入输出接口(General Programmed I/O)的简称,功能类似8051的P0—P3,其接脚可以供使用者由程控自由使用,PIN脚依现实考量可作为通用输入(GPI)或通用输出(GPO)或通用输入与输出(GPIO),如当clk generator, chip select等。 既然一个引脚可以用于输入、输出或其他特殊功能,那么一定有寄存器用来选择这些功能。对于
转载
2023-10-25 11:40:01
102阅读
STM32 GPIO入门知识GPIO是什么?通用输入输出端口,可以做输入,也可以做输出。GPIO端口可通过程序配置成输入或输出。 引脚和GPIO的区别和联系STM32的引脚中,有部分是做GPIO使用,部分是电源引脚/复位引脚/启动模式引脚/晶振引脚/调试下载引脚
转载
2023-07-26 21:09:00
177阅读
# GPIO核架构实现指南
## 一、流程概述
在实现GPIO核架构之前,首先要了解整体的流程。以下是实现GPIO核架构的一系列步骤:
| 步骤 | 描述 |
|------|----------------------------|
| 1 | 环境搭建 |
| 2 | GPIO核的基本定义和初始化
原创
2024-09-04 06:27:32
68阅读
参考文章 (参考芯片stm32f407zgt6) 有7组io口每组io口有16个io,一共16*7 = 112个io 从GPIOA到GPIOG 引脚还可以复用为外设GPIO介绍GPIO(general porpose intput output):通用输入输出端口的简称。可以通过软件控制其输出和输入。stm32芯片的GPIO引脚与外部设备连接起来,从而实现与外部通信,控制以及数据采集的功能。上拉和
转载
2023-08-16 17:18:38
470阅读
现在很多公司用的开源框架很多都是ssm框架的一个结构,这里我自己试着自己搭一个简单的框架,大家共同学习。下面一起跟着我搭建吧,本人菜鸟,有任何不对的地方有望指出。框架结构:spring(4.3.9.RELEASE)+springmvc(4.3.9.RELEASE)+mybatis(3.4.4)+marven(4.0.0)需要注意的是,自己搭的时候注意mybatis的版本和spring的版本要兼容,
转载
2024-10-09 10:18:43
48阅读
static void MX_GPIO_Init(void)
{
GPIO_InitTypeDef GPIO_InitStruct = {0};
GPIO_InitStruct.Pin = GPIO_PIN_13;//³õʼ»¯LED0
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Speed = G
转载
2023-06-30 17:33:29
88阅读
初始化结构体:typedef struct
{
uint16_t GPIO_Pin;
uint16_t GPIO_Speed;
uint16_t GPIO_Mode;
}GPIO_InitTypeDef;里面有端口、模式和输出模式时的最大速度再通过两个枚举类型的结构体来选择Mode和Speed 定义一个 GPIO_InitTypeDef的分支GPIO_Ini
转载
2024-06-28 10:58:14
64阅读
看过很多资料,都说GPIO是最简单的外设,也做了蛮多的实验,不过都是基于别人的程序的,今天便想自己动手写一个GPIO的程序,刚开始功能不要多,只要能通过GPIO引脚控制片上的小灯闪烁就行。配置,写c文件,写CMD文件,ASM文件,然后编译,却提示出错:"thefirstmain.c", line 23: error: identifier "GPIO_Handle" is undefined,
原创
2010-04-23 17:02:45
909阅读
一.GPIO输入输出配置想要配置GPIO为简单的高低电平输出有2种方法方式一:基本方式1:将GPIO设置成普通IO口gpio_pad_select_gpio(需要设置的IO口)2:设置GPIO模式 gpio_set_direction(需要设置的IO口,IO模式)3:设置默认电平(输入模式不需要)gpio_set_level(需要设置的IO口,0/1)代码如下:void LED_GPIO
转载
2024-01-04 15:46:26
283阅读
详细的学习一下GPIO_Init()函数,比如下面的一段程序:GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOE, ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;
GPIO_InitS
转载
2024-06-09 00:34:12
118阅读
GPIO操作 1 #include <stdbool.h>
2 #include <stdint.h>
3 #include "nrf_delay.h"
4 #include "nrf_gpio.h" //这里面有关于gpio的操作,似乎只有.h文件,没有.c文件
5 #include "boards.h" //关于板子是如何设计的,例如小灯
转载
2024-06-26 15:39:38
49阅读
//GPIO端口模式
typedef enum
{
//浮空输入
GPIO_MODE_IN_NOPULL = 0x00,
//上拉输入
GPIO_MODE_IN_PULLUP,
//下拉输入
GPIO_MODE_IN_PULLDOWN,
//推挽输出
GPIO_MODE_OUT_PP,
//开漏输出,不上拉
GPIO_MODE_OUT_OD,
//开漏输出,内部弱上拉
转载
2024-04-09 12:15:28
46阅读
一、什么是GPIO? 我们应该先了解什么是GPIO。GPIO。英文全称General-Purpose IO ports,是常见IO口。在嵌入式系统中经常有数量众多,可是结构却比較简单的外部设备/电路,对这些设备/电路有的须要CPU为之提供控制手段。有的则须要被CPU用作输入。并且,很多这种设备/...
转载
2015-06-18 20:22:00
220阅读
GPIO
转载
2014-11-12 19:37:00
260阅读
2评论
一、什么是GPIO? 首先应该理解什么是GPIO。GPIO,英文全称为General-Purpose IO ports,也就是通用IO口。在嵌入式系统中经常有数量众多,可是结构却比較简单的外部设备/电路,对这些设备/电路有的须要CPU为之提供控制手段,有的则须要被CPU用作输入信号。并且,很多这种设...
转载
2015-02-23 11:41:00
132阅读
一、什么是GPIO? 首先应该理解什么是GPIO。GPIO,英文全称为General-Purpose IO ports,也就是通用IO口。在嵌入式系统中经常有数量众多,可是结构却比較简单的外部设备/电路,对这些设备/电路有的须要CPU为之提供控制手段,有的则须要被CPU用作输入信号。并且,很多这种设...
转载
2015-02-09 17:15:00
111阅读