当前位置: 首页 > news >正文

STM32学习2 GPIO学习

image

应该是先由MODE位决定是输入还是输出,再由CNF位来决定是哪种输入,输出方式。

复位期间和刚复位后,复用功能未开启,IO端口被配置成浮空输入模式。

 

所有的端口都有外部中断能力。为了使用外部中断线,端口必须配置成输入模式。

锁定机制允许冻结IO配置。当在一个端口位上执行了锁定程序,在下一次复位之前,将不能再更改端口位的配置。(复位了还是可以清除的,这里是指不能再软件操作了吗?)

 

复用功能IO口不明白是什么意思?

是指IO口在使用USART,SPI都功能时的IO口输出模式吗?

输出模式中的最大速度是什么用??三个不同的速度有什么区别?

 

STM32F103RTB6 64PIN,LQFP封状的芯片:

有PA0~PA15,PB0~PB15,PC0~PC15,PD0~PD2一共16*3+3=51个引脚

VSS1,VDD1~VSS4,VDD4一共有8个引脚

还有VBAT,NRST,VSSA,VSSD,BOOT0 共5个引脚

STM32的GPIO口一般是16个,每一个GPIO口都要4位配置位进行控制。就是要两个32位的寄存器。也就是CRH,CRL.

GPIOx_BSRR和GPIOx_BRR有什么区别?

BSRR不是也可以清0吗?

当执行正确的写序列设置了位16(LCKK)时,该寄存器用来锁定端口位的配置。位[15:0]用于锁定GPIO端口的配置。在规定的写入操作期间,不能改变LCKP[15:0]。当对相应的端口位执行了,LOCK序列后,在下次系统复位之前将不能再更改端口位的配置。

每一个锁定位锁定控制寄存器(CRL,CRH)中相应的4位。

 

为了优化64脚或100脚封装的外设数目,可以把一些复用功能重新映射到期他引脚上。设置复用重映和调试IO配置寄存器实现引脚的得新映射。这时,复用功能不再映射到它们的原始分配上。(这个功能,好像比较有趣?)

相关文章:

  • 最近新上的电子商务网站
  • Cocoa Touch揭秘
  • web项目 easyui-datagrid开发实践
  • 关于计算机学科的一些期刊和会议(转)
  • NDK开发入门终极教程
  • 深入剖析Tomcat(1)
  • Linq To Sql进阶系列 -目录导航
  • 美国少女模仿电影情节“蒙眼驾车” 或遭指控
  • LOJ #6485 LJJ 学二项式定理
  • python最赚钱的4个方向,你最心动的是哪个?
  • 互联网大裁员:Java程序员失工作,焉知不能进ali?
  • 组复制官方翻译九、Group Replication Technical Details
  • Kafka在windows下的配置使用
  • IntelliJ IDEA 18 周岁
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 【编码】-360实习笔试编程题(二)-2016.03.29
  • bearychat的java client
  • C语言笔记(第一章:C语言编程)
  • java第三方包学习之lombok
  • React中的“虫洞”——Context
  • Redis 懒删除(lazy free)简史
  • Vue.js源码(2):初探List Rendering
  • 二维平面内的碰撞检测【一】
  • 前端js -- this指向总结。
  • 强力优化Rancher k8s中国区的使用体验
  • 试着探索高并发下的系统架构面貌
  • 数组大概知多少
  • 算法-插入排序
  • 怎么将电脑中的声音录制成WAV格式
  • scrapy中间件源码分析及常用中间件大全
  • 说说我为什么看好Spring Cloud Alibaba
  • ​LeetCode解法汇总2696. 删除子串后的字符串最小长度
  • # C++之functional库用法整理
  • #NOIP 2014# day.2 T2 寻找道路
  • #微信小程序:微信小程序常见的配置传值
  • (NO.00004)iOS实现打砖块游戏(十二):伸缩自如,我是如意金箍棒(上)!
  • (编译到47%失败)to be deleted
  • (超详细)语音信号处理之特征提取
  • (附源码)springboot助农电商系统 毕业设计 081919
  • (附源码)ssm旅游企业财务管理系统 毕业设计 102100
  • (免费领源码)python#django#mysql公交线路查询系统85021- 计算机毕业设计项目选题推荐
  • (篇九)MySQL常用内置函数
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • (译) 理解 Elixir 中的宏 Macro, 第四部分:深入化
  • ./include/caffe/util/cudnn.hpp: In function ‘const char* cudnnGetErrorString(cudnnStatus_t)’: ./incl
  • .dat文件写入byte类型数组_用Python从Abaqus导出txt、dat数据
  • .net core控制台应用程序初识
  • .NET/C# 使用反射注册事件
  • .NET成年了,然后呢?
  • .NET简谈设计模式之(单件模式)
  • .net开发时的诡异问题,button的onclick事件无效
  • .net之微信企业号开发(一) 所使用的环境与工具以及准备工作
  • @value 静态变量_Python彻底搞懂:变量、对象、赋值、引用、拷贝
  • [ C++ ] 继承
  • [ACM] hdu 1201 18岁生日