历史上的今天

今天是:2024年08月26日(星期一)

正在发生

2018年08月26日 | STM32中控制I/O口的寄存器们

发布者:daits摸鱼的 来源: eefocus关键字:STM32  控制I  O口  寄存器 手机看文章 扫描二维码
随时随地手机看文章

 引言  

 STM32的I/O口由软件配置,有八种模式:输入悬浮、输入上拉、输入下拉、模拟输入、开漏输出、推挽输出、推挽式复用功能及开漏复用功能。


每个I/O口由7个寄存器控制,分别是:




模式配置的端口寄存器 32位  CRL、CRH


数据寄存器  32位 IDR、ODR


置位/复位寄存器  32位 BSRR


复位寄存器  16位 BRR


锁存寄存器  32位 LCKR




主要介绍一下CRL、CRH、IDR、ODR


一 CRL、CRH


CRL控制低8位I/O口,CRH控制高8位I/O口,下图是《STM32参考手册》和《原子教你玩STM32》中关于CRL的介绍。CRL共32位,每四位控制一个I/O口,所以控制8个I/O口。CRH与CRL类似,就不做介绍了。


GPIOx->CRL&=0xfffffff0;//x:A~E;用哪一位I/O口先置零

GPIOx->CRL|=0x00000003;//设置I/O口的功能





二 IDR、ODR

IDR为端口输入寄存器,只用了低16位,且为只读寄存器。ODR为端口输出寄存器,也只用了低16位,可读可写,该寄存器读出的数据可以判断I/O口的输出状态,向该寄存器写数据可以控制I/O口的输出电平。下图为《STM32参考手册》中关于IDR和ODR的介绍。

GPIOx->ORD|=1<<5;//第五位输出高电平






关键字:STM32  控制I  O口  寄存器 引用地址:STM32中控制I/O口的寄存器们

上一篇:寄存器名称和地址的映射分析
下一篇:关于STM32寄存器的理解

推荐阅读

一般的寄存器访问需要通过读-改-写三步曲 和 位运算的清0置1来实现,但在stm32的编程中,通过利用它的一些优秀的特性如端口位设置/复位寄存BSRR、位绑定等,我们可以大大提升寄存器的访问速度和简化寄存器的操作。//一般寄存器操作:GPIOx->ODR |= 0x10; //Pin4置1GPIOx->ODR &= ~0x10; //Pin4清0BSRR/BRR寄存器 GPIOx->BSRR //对BSRR的低16位写...
两家企业联合展示用于智能建筑和未来物联网的无电池能源采集解决方案 全球电子元器件分销商儒卓力(Rutronik Elektronische Bauelemente GmbH) 作为EnOcean GmbH的全球授权分销商,双方将在2019上海国际智能建筑展览会(SIBT 2019)上联合展示EnOcean的能量采集无线产品。该展会将于9月3日至5日在上海新国际博览中心 (SNIEC) 举办。在W2 展馆H23展台...
日前,统计机构TrendForce给出了iPhone 12系列全系四款的配置价格信息表,虽然是预测口吻,但分析机构仍具备相当的严谨性,不妨做一下参考。  具体来说,iPhone 12系列将有iPhone 12、iPhone 12 Max、iPhone 12 Pro和iPhone 12 Pro Max四款,它们均为柔性AMOLED面板,尺寸分别是5.4寸、6.1英寸、6.1英寸和6.7英寸,均有支持Face ID人...
由于显示制造技术的不断突破,折叠屏也成为了手机终端的新的卖点。华为、三星、OPPO、小米、荣耀等各大手机厂商也纷纷推出了自己的折叠屏手机或卷轴屏手机等设计方案。为了便于折叠屏的折叠,覆盖在折叠屏的可折叠触控面板的出光面上的保护膜刚性很低,现有的触控笔的金属笔芯直接与所述可折叠触控面板接触容易划伤所述可折叠触控面板。而如果在触控笔外面...

史海拾趣

问答坊 | AI 解惑

S7-200编程中的单按钮控制启动/停止

单按钮控制启动/停止 通常情况下,PLC控制的外部设备至少要有一个启动和一个停止按钮作为输入信号来控制程序的运行和停止,因此至少需要两个输入点,在点数紧张的情况下可采用单按钮控制进行优化,将节省下的点留作扩展功能。 1)采用V变量的方 ...…

查看全部问答∨

VGA显示器Verilog实现驱动代码

本帖最后由 paulhyde 于 2014-9-15 03:18 编辑 VGA显示器Verilog实现驱动代码    …

查看全部问答∨

电机分类和区别详解

电机定义:是指依据电磁感应定律实现电能的转换或传递的一种电磁装置。 电动机也称电机(俗称马达),在电路中用字母“M”(旧标准用“D”)表示。它的主要作用是产生驱动转矩,作为用电器或各种机械的动力源。 电动机的种类 1.按工作电源分 ...…

查看全部问答∨

编程器与仿真器的区别

本人初学单片机,对于编程器的仿真器实在不能很好的理解 我想知道仿真器在仿真的时候是不是把程序下载到单片机了, 和编程器的烧录有什么区别吗? 仿真的时候单片机工作吗?还是电脑模拟而已? 仿真结束后单片机上保存程序吗?…

查看全部问答∨

关于BuildGates综合的问题

请问各位高手,我的设计中通过PIN输入时钟clk,经分频输出clk_div,综合时用set_generated_clock对clk_div进行约束,设计还有一些输入输出端口属于clk_div的时钟域,如果我希望对这些端口设置set_input_delay和set_external_delay,该怎么加呢,我 ...…

查看全部问答∨

WINCE 5.0 GUI系统显存布局

系统为WINCE 5.0 + S3C2451 液晶的配置参数为RGB565格式.从芯片手册上可知,显存有两种格式: (BSWP = 0, HWSWP = 0)         D[31:16] D[15:0] 000H        P1     ...…

查看全部问答∨

cs8900 问题,在控制面板 网络连接中出现了两个 cs89001 的图标

在控制面板 网络连接中出现了两个 cs89001 的图标。 不知道那位兄弟遇到过,帮忙看下。 …

查看全部问答∨

c# DDE(动态数据交换) 客户端程序,如何设置Server与Topic

如题。 由于DDE是一个很老的技术了,已经被OPC代替。但是有些事情还是得用到DDE。 .net 已经不支持DDE,还好,我找到了封装好的API , 下面是我写的一个测试DDE客户端,要与DDE服务器,或者说是DDE服务(service) 连接。 对于输入的service 与t ...…

查看全部问答∨

有了解“广东亿迅,普信科技有限公司”的朋友请进

想了解一下“广东亿迅,普信科技有限公司”     1、该公司的总体情况如何;     2、与“广东电信研究院”的关系     谢谢  …

查看全部问答∨

EE_FPGA【预备知识 二】----Verilog 介绍

我不打算推荐具体的什么书籍,google一下,很多很多,有兴趣的可以看看   我想说的是,你只有真正的去使用才会领悟的更多,有些所谓的高级功能,你可能一辈子都不会用到,学来又有何用?   我想大概知道以下几点,应该就可以开始深入 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

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

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

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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