0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STM32操作 I/O 口的步骤

电子设计 来源:电子设计 作者:电子设计 2022-02-16 14:43 次阅读

先来总结一下 STM32 操作 I/O 口的步骤(以精英板为例):
① 使能 I/O 口时钟,调用函数为RCC_APB2PeriphClockCmd();
② 初始化 I/O 参数,调用GPIO_Init();
③ 操作 I/O 口

看了STM32操作 I/O 口的步骤,是不是一头雾水,因为我们以前学习51单片机的时候,根本没有这么麻烦,I/O 想输入就直接读,想输出就直接赋值,串口、AD转化、外部中断等等也都是想用就用,不需要单独配置时钟。

51单片机的这种做法确实很方便,不需要有乱七八糟的设置就能让芯片跑起来,但是随之带来的就是所谓的功耗问题。换句话来说就是一些资源根本用不上,但是芯片却还给它分配资源,即增加了芯片的负担,又浪费了资源。

随着电子产品集成度越来越高,如果还用51单片机的那套,功耗和发热越来越严重,芯片厂商非常无奈也在开始想办法避免这个问题,而最直接的思路当然就是用多少功能就使能多少功能,对每个外设的时钟都设置了开关,让用户可以精确地控制,关闭不需要的设备,达到节省供电的目的。我们学51单片机就知道,单片机之所以能够单独工作,就是因为他又独立的时钟(晶振),那如果想关闭某些功能,就直接关闭它的时钟就好了,所以就出现了这么多的时钟和IO配置。

最后总结就是,默认情况下这些时钟都是disable的。你要使用它,当然需要enable了。

寄存器是由D触发器组成的,只有送来了时钟,触发器才能被改写值,这样寄存器才能工作。只不过,在51单片机一个时钟系统把一切都包了,在STM32中,我们很明确地做好了分工,让大家各司其职,其实这样还有一个好处就是,不是每个外设都需要系统时钟那么高的频率,就像是高射炮打蚊子一个道理。

来源:https://blog.csdn.net/weixin_44174528/article/details/107355795
转载此文目的在于传递更多信息,版权归原作者所有。

审核编辑:何安

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • STM32
    +关注

    关注

    2270

    文章

    10923

    浏览量

    357076
收藏 人收藏

    评论

    相关推荐

    请问TXB0108PWR在上电瞬间I/O会处于什么状态?

    请问TXB0108PWR在上电瞬间I/O会处于什么状态?实测在TXB0108PWR I/O与外界断开链接的时候正常启动,I/
    发表于 12-30 07:50

    直接I/O

    电子发烧友网站提供《直接I/O库.pdf》资料免费下载
    发表于 10-14 10:55 0次下载
    直接<b class='flag-5'>I</b>/<b class='flag-5'>O</b>库

    物联网中常见的I/O扩展电路设计方案_IIC I/O扩展芯片

    物联网系统中为什么要使用 IIC I/O扩展芯片   在物联网系统中使用IIC(也称为I2C)I/O扩展芯片的原因主要可以归结为以下几点:
    的头像 发表于 09-24 11:29 631次阅读
    物联网中常见的<b class='flag-5'>I</b>/<b class='flag-5'>O</b>扩展电路设计方案_IIC <b class='flag-5'>I</b>/<b class='flag-5'>O</b>扩展芯片

    保护I/O模块免受浪涌事件的影响

    电子发烧友网站提供《保护I/O模块免受浪涌事件的影响.pdf》资料免费下载
    发表于 09-21 10:14 0次下载
    保护<b class='flag-5'>I</b>/<b class='flag-5'>O</b>模块免受浪涌事件的影响

    单片机io的四种工作状态

    单片机的I/O工作状态是单片机编程和硬件操作中非常重要的一部分,它决定了单片机如何与外部设备进行通信。 1. 单片机I/
    的头像 发表于 09-14 14:24 1973次阅读

    区域架构和 MCU I/O 扩展

    电子发烧友网站提供《区域架构和 MCU I/O 扩展.pdf》资料免费下载
    发表于 09-09 10:51 0次下载
    区域架构和 MCU <b class='flag-5'>I</b>/<b class='flag-5'>O</b> 扩展

    MSP430 I/O驱动段式LCD设计说明

    电子发烧友网站提供《MSP430 I/O驱动段式LCD设计说明.pdf》资料免费下载
    发表于 08-30 10:39 1次下载
    MSP430 <b class='flag-5'>I</b>/<b class='flag-5'>O</b><b class='flag-5'>口</b>驱动段式LCD设计说明

    PLC的I/O点数是什么意思

    在工业自动化领域中,可编程逻辑控制器(PLC)扮演着至关重要的角色。PLC以其高可靠性、易编程性和强大的控制功能,广泛应用于各种自动化系统中。而在PLC的性能参数中,I/O点数是一个不可忽视的重要指标。本文将对PLC的I/
    的头像 发表于 06-27 11:15 4907次阅读

    OPA365-EP轨到轨I/O单电源操作放大器数据表

    电子发烧友网站提供《OPA365-EP轨到轨I/O单电源操作放大器数据表.pdf》资料免费下载
    发表于 06-14 11:08 0次下载
    OPA365-EP轨到轨<b class='flag-5'>I</b>/<b class='flag-5'>O</b>单电源<b class='flag-5'>操作</b>放大器数据表

    stm32f407是否可以采用别的I/O,与TFT液晶实现连接啊?

    SDRAM与TFT液晶接口都共用FSMC,不知道是否可以采用别的I/O(非FSMC),与TFT液晶实现连接啊?谢谢
    发表于 05-17 07:39

    在用STM32的SPI和I2C时,是用I/O模拟还是片内外设?

    大家一起来聊一聊在用STM32的SPI和I2C时,用I/O模拟多些还是片内外设,用查询方式还是中断方式。
    发表于 05-16 08:29

    嵌入式32位高性能微处理器MCU双网I/O

    M120E以太网远程I/O无线数据采集模块是一款工业级、隔离设计、高可靠性、高稳定性和高精度数据采集模块,嵌入式32位高性能微处理器MCU,集成2路工业10/100M自适应以太网模块里面。提供多种I
    的头像 发表于 05-08 16:47 790次阅读
    嵌入式32位高性能微处理器MCU双网<b class='flag-5'>口</b><b class='flag-5'>I</b>/<b class='flag-5'>O</b>

    STM32F407ZET6操作I/O端口和串口均无反应,为什么?

    本来是想实现串口通过485发送和接收数据,后来发现单片机USART2发送数据,端口无响应,然后换了一个I/O,也发现没反应,不晓得是不是哪里配置的不对?程序调试,打断点走不到断点的地方,单步可以运行。请高手们帮看看是啥问题,在
    发表于 04-08 07:24

    鸿蒙OS开发实例:【ArkTS类库多线程I/O密集型任务开发】

    的处理能力,而在于I/O操作的速度和效率。这种任务通常需要频繁地进行磁盘读写、网络通信等操作。此处以频繁读写系统文件来模拟I/
    的头像 发表于 04-01 16:32 558次阅读
    鸿蒙OS开发实例:【ArkTS类库多线程<b class='flag-5'>I</b>/<b class='flag-5'>O</b>密集型任务开发】

    FANUC外部I/O点数不够用了怎么办?可以扩展I/O点数吗?

    连接起来,以便进行输入和输出操作。每个I/O模块都有一定数量的输入和输出点数,这取决于具体的模块型号。但是,当您的应用需要更多的I/O点数时
    的头像 发表于 02-18 15:21 2061次阅读