stm32之GPIO

  stm32有5组GPIO口,GPIOA  GPIOB  GPIOC  GPIOD  GPIOE

每个GPIO端口有:

    2个配置寄存器GPIOx_CRL, GPIOx_CRH(32位);

    2个数据寄存器GPIOx_IDR, GPIOx_ODR(32位);

    1个置位/复位寄存器GPIOx_BSRR(32位);

    1个复位寄存器GPIOx_BRR(16位);

    1个锁定寄存器GPIOx_LCKR(32位);

输入模式:

  —输入浮空
  ─ 输入上拉
  ─ 输入下拉
  ─ 模拟输入

输出模式:

  ─ 开漏输出
  ─ 推挽式输出
  ─ 推挽式复用功能
  ─ 开漏复用功能

 1 #include "stm32f10x_gpio.h"
 2
 3 int main()
 4 {
 5
 6     //设置GPIOA的工作模式,何种输入方式、何种输出方式, 以及工作速率的设定;
 7 //      GPIOA->CRL = 0x33;
 8 //     //在相应引脚上设置相应电平
 9 //     GPIOA->ODR = 0x00; //输出低电平
10 //     GPIOA->ODR = 0x03; //设置为11,输出高电平,而不同于51中的1;
11
12     //设置GPIOA工作模式;
13     //PA0 设置为输出模式,50hz, PA8 设置为输入;
14     GPIOA->CRL = 0x03;
15     GPIOA->CRH = 0X04;
16
17     while(1)
18     {
19         if((GPIOA->ODR & 0x0100) ==0x0100)
20         {
21             GPIOA->ODR = 0x01;
22         }
23         else
24         {
25             GPIOA->ODR = 0x00;
26         }
27     }
28
29     return 0;
30 }

stm32之GPIO,布布扣,bubuko.com

时间: 2024-08-05 23:49:46

stm32之GPIO的相关文章

STM32 F4 GPIO Modes

STM32 F4 GPIO Modes Goal: creating a visual summary of GPIO configuration modes. The summary at the bottom shows the major configuration choices. Basic electrical info: GPIOs can sink or source up to ±8 mA, and sink or source up to ±20 mA (with a rel

STM32的GPIO使用的函数剖析

转载http://blog.csdn.net/wuwuhuizheyisheng/article/details/8239599 STM32的GPIO总结 作者:JCY 该文是自己学习了一段STM32后所写,是对STM32使用固件库编程最简单的一段程序,是对固件库函数的一部分进行解析.如有错误之处请指正,不胜感激. 一. GPIO_Init函数解析 1 1.参数GPIO_TypeDef 1 2.参数GPIO_InitStruct 2 3.函数代码详解 4 4.备注 6 一.GPIO_Init函数

stm32之GPIO库函数开发

关于GPIO库函数的重点函数:P122 GPIO_Init() :根据GPIO_InitStruct中指定的参数初始化外设GPIOx寄存器: GPIO_ReadInputDataBit():读取指定端口管脚的输入: GPIO_SetBits():设置指定的数据端口位: GPIO_ResetBits(): 清除指定的数据端口位: GPIO_PinRemapConfig(): 改变指定管脚的映射:----------端口映射是很有特色的功能:也是重点知识 GPIO_EXTILineConfig():

【转载】stm32的GPIO八种工作模式

一.推挽输出:可以输出高.低电平,连接数字器件:推挽结构一般是指两个三极管分别受两个互补信号的控制,总是在一个三极管导通的时候另一个截止.高低电平由IC的电源决定.         推挽电路是两个参数相同的三极管或MOSFET,以推挽方式存在于电路中,各负责正负半周的波形放大任务,电路工作时,两只对称的功率开关管每次只有一个导通,所以导通损耗小.效率高.输出既可以向负载灌电流,也可以从负载抽取电流.推拉式输出级既提高电路的负载能力,又提高开关速度. 二.开漏输出:输出端相当于三极管的集电极,要得

STM32 常用GPIO操作函数记录

STM32读具体GPIOx的某一位是1还是0 1 /** 2 * @brief Reads the specified input port pin. 3 * @param GPIOx: where x can be (A..G) to select the GPIO peripheral. 4 * @param GPIO_Pin: specifies the port bit to read. 5 * This parameter can be GPIO_Pin_x where x can b

关于STM32中GPIO的8种工作模式

1 综述 I/O口是单片机中非常常用的外设,STM32的I/O口有8种状态,虽然一直在使用过程中没有遇到什么问题,但是一直都不是很清楚,因此这里做一个总结(实际上这里的概念也是和STM8等其他单片机,理解了这8中状态,也就基本上理解了大部分I/O口). 2 庐山真面目 我们在库文件中的"stm32f10x_gpio.h"中可以看到如下代码: typedef enum { GPIO_Mode_AIN = 0x0, ??GPIO_Mode_IN_FLOATING = 0x04, ??GPI

3. STM32的GPIO的深入学习

STM32的学习是一个循序渐进的过程,逐渐熟悉一个个外设,了解寄存器相关配置,然后在这基础上实现功能,路要一步步走,掌握知识多一些自然知道路得方向.GPIO是STM32最重要的外设,几乎所有外设的实现都是依托GPIO产生的,所以深入的理解,是必须的. GPIO模块回顾 在嵌入式软件应用中,这个模块可以说是运用广泛,几乎外设功能的实现在最初都要配置对应的GPIO口.GPIO模块时钟使能,初始化(模式,最大传输率)这些基础的东西上一章已经讲过,我这里就不在细说,我这里主要讲大部分外设没用到的几个库函

stm32之GPIO(二)

STM32的输入输出管脚有下面8种可能的配置:(4输入.2输出.2复用输出) 1.浮空输入_IN_FLOATING 2.带上拉输入_IPU 3.带下拉输入_IPD 4.模拟输入_AIN 5.开漏输出_OUT_OD 6.推挽输出_OUT_PP 7.复用功能的推挽输出_AF_PP 8.复用功能的开漏输出_AF_OD 上拉:输入高电平,然后接一个上拉电阻(起保护作用),上拉就表示该端口在默认情况下输入为高电平: 浮空:就相当于此端口在默认情况下什么都不接,呈高阻态: 开漏输出:就是不输出电压,低电平时

STM32单片机GPIO口配置问题

在学习STM32F单片机时,我们常常困惑什么时候才能叫入门,采用什么样的教材入门,或者采用什么的编程软件.在学习类的教材中,以神州,原点教材布局很多,但是相信很多人看到这类教材也是一头雾水,需要你花费巨大的精力从寄存器的最底层去学习和了解,学习时间还是相对漫长.在采用的编程软件中,KEIL和IAR各有优势吧,在这里我选用的是KEIL. 在开始学习编程时,我采用的是库函数开发指南.在安装完成KEIL软件和添加项目工程时,就开始学习库函数编程. 在编写一个GPIO口控制时,首先我们要知道我们要实现的