编写置位/复位函数

#ifndef __STM32F4XX_GPIO_H
#define __STM32F4XX_GPIO_H#include "stm32f4xx.h"#define       GPIO_Pin_0          (1<<0)
#define     GPIO_Pin_1          (1<<1)
#define     GPIO_Pin_2          (1<<2)
#define     GPIO_Pin_3          (1<<3)
#define     GPIO_Pin_4          (1<<4)
#define     GPIO_Pin_5          (1<<5)
#define     GPIO_Pin_6          (1<<6)
#define     GPIO_Pin_7          (1<<7)
#define     GPIO_Pin_8          (1<<8)
#define     GPIO_Pin_9          (1<<9)
#define     GPIO_Pin_10         (1<<10)
#define     GPIO_Pin_11         (1<<11)
#define     GPIO_Pin_12         (1<<12)
#define     GPIO_Pin_13         (1<<13)
#define     GPIO_Pin_14         (1<<14)
#define     GPIO_Pin_15         (1<<15)void GPIO_SetBits( GPIO_TypeDef * GPIOx , uint16_t GPIO_Pin );
void GPIO_ResetBits( GPIO_TypeDef * GPIOx , uint16_t GPIO_Pin );#endif /* __STM32F4XX_GPIO_H */
#include "stm32f4xx_gpio.h"void GPIO_SetBits( GPIO_TypeDef * GPIOx , uint16_t GPIO_Pin ){GPIOx->BSRRL = GPIO_Pin;}void GPIO_ResetBits( GPIO_TypeDef * GPIOx , uint16_t GPIO_Pin ){GPIOx->BSRRH = GPIO_Pin;}
#include "stm32f4xx.h"
#include "stm32f4xx_gpio.h"int main(void){/* 打开GPIOE的时钟 */RCC_AHB1ENR |= (1<<4);               //写入1/* GPIOE配置为输出 */GPIOE->MODER &= ~(0X03<<(2*3));      //清0GPIOE->MODER |= (0X01<<(2*3));        //写入1/* PE3输出低电平 */GPIO_ResetBits(GPIOE, GPIO_Pin_3);
}void SystemInit(void){}

置位/复位函数实际上与操作ODR寄存器相似,置位写1,复位写0

野火STM32学习(6)相关推荐

  1. 野火STM32学习笔记

    开始进入固件库编程 学习原因即优缺点 固件库的出现让STM32的开发难度大大下降,它通过库文件的封装,把众多的内存元整合为一个整体,在我们想要操作某一位寄存器时只要调用它所在的固件库就可以.缺点是不同 ...

  2. 【学习记录】野火stm32学习记录(一)GPIO

    观看的视频:野火-视频链接  https://www.bilibili.com/video/BV18X4y1M763 什么是GPIO? GPIO是通用输入输出端口的简称,简单来说就是STM32可控制的 ...

  3. 野火STM32学习笔记一、固件库文件分析

    STM32固件库文件分析 汇编编写的启动文件 startup_stm32f10x_hd.s: 设置堆栈指针.设置PC指针.初始化中断向量表.配置系统时钟.调用C库函数main最终去到C的世界 时钟配置 ...

  4. 野火STM32学习(7)

    编写GPIO初始化结构体和初始化函数 stm32f4xx_gpio.h /* 端口模式 */ typedef enum{GPIO_Mode_IN = 0x00,GPIO_Mode_OUT = 0x01 ...

  5. STM32野火教程学习笔记

    欢迎使用STM32 虽然经历了疫情期间的价格起飞,但是STM32系列的单片机仍然是各个控制领域内主流的微控制器.它是控制人的必修课之一. STM32的编程方法 我们在学习51单片机的时候,通常是通过编 ...

  6. STM32学习之SPI协议(读写FLASH)

    关于STM32学习分享 第八章 SPI协议(读写FLASH) 文章目录 关于STM32学习分享 前言 二.代码 1.spi_flash.c 2.spi_flash.h 3.main.c 总结 前言 开 ...

  7. STM32学习之I2C协议(读写EEPROM)

    关于STM32学习分享 第七章 I2C协议(读写EEPROM) 文章目录 关于STM32学习分享 前言 二.代码 1.i2c.c 2.i2c.h 3.main.c 总结 前言 开始!开始!单片机的I2 ...

  8. 1、野火freertos学习笔记

    野火freertos学习笔记 1.任务 1.1 栈 1.2 任务的切换 taskYIELD(); 1.3 临界段 2.空闲任务 3.任务优先级 4.任务延时的表现 5.时间片 5.1抢占式.协做式 6 ...

  9. 前备 正点原子以及野火stm32资料获取

    stm32学习的两个论坛,正点原子和野火都为32提供了相应的教程例程,普中也有,需要的可以自行去官网下载. 正点原子 点此链接进入正点论坛下载资料 注册什么的我就不说了.. A盘是程序和手册,B盘是视 ...

最新文章

  1. ProgreassBar 60秒走完,
  2. JS引用类型(6)——基本包装类型1
  3. 第三方工具生成密钥对连接GCP服务器(putty生成密钥远程连接服务器)
  4. Oracle RESETLOGS 和 NORESETLOGS 区别说明
  5. linux用unzip解压.zip文件失败解决方案
  6. 机器学习之 weka学习(四)
  7. js解决客户端与服务器时间不一致的问题
  8. 你必须『收藏』的Github技巧
  9. Codeforces Round #572 (Div. 2)B
  10. Linux 能否拿下苹果 M1 阵地?
  11. hangfire 过期记录_黄浦回收豆沙月饼公司,过期饼干回收厂家
  12. LeetCode 496. 下一个更大元素 I(Next Greater Element I) 35
  13. 买东西被拒收现金?央行刚刚发话了:必须这样!
  14. k8s拉取harbor镜像_Kubernetes-连接Harbor仓库拉取镜像
  15. IIS网站发布详细流程
  16. performSelector延时调用导致的内存泄露
  17. 淘宝商城,亚洲最大网上购物网站
  18. Android音频通信--简单演示程序
  19. 深度学习和并行化实现
  20. VB操作EXCEL方法汇总

热门文章

  1. [转] 英语连接词~很全的版本!!!
  2. java编写k线_用Java绘制K线图
  3. Day37PHP创建简单的论坛cnfhBBS源码
  4. PS工具栏之【选择工具栏和编辑工具栏】矩形和椭圆的使用技巧
  5. uniapp点击时出现背景声音
  6. 1015 计算器的改良 (200行代码解决;巨捞;巨烦)
  7. 《自然语言处理(哈工大 关毅 64集视频)》学习笔记:第五章 n-gram语言模型
  8. 初学python爬虫,记录一下学习过程,requests库模拟登录01
  9. 有CISAW证书能拿到多少工资?
  10. phantomjs设置截图大小