3.时钟与GPIO【七天物联网智能家居训练营】

2023-05-16

本文是百问网七天物联网智能家居训练营学习笔记,官网链接。

1 时钟系统

首先我们要知道时钟的主要作用是用来同步,现代的计算机系统是必然有时钟的。并且,对于高级的单片机系统,还会存在着不同频率的时钟,主要是为了达到最优配置。

下面我们来看下STM32时钟树:
在这里插入图片描述
我们需要重点理解分频器、选择器、倍频器,其中倍频器(也被称为PLL)是单片机时钟系统非常重要的组成部分,有了PLL我们才能获得更高的时钟频率,从而提升单片机的性能。

其中HSE是高速外部时钟,一般我们外接8MHz的晶振。当我们使用8Mhz的外部晶振时,单片机时钟最高可以配置为72MHz。

APB2最高72MHz,APB1最高36Mhz。

2 GPIO

GPIO:通用输入输出。

对于STM32F103C8T6来说:

  • STM32F103C8T6一共有48个引脚
    • 按A、B、c分组,每组16个引脚,编号为0~15
    • STM32F103C8T6有2组GPIO,每组16个引脚,即32个GPIO引脚
  • GPIO支持8种工作模式
    • 输出模式四种:推挽输出、开漏输出、复用推挽输出、复用开漏输出
    • 输入模式四种:上拉输入、下拉输入、浮空输入、模拟输入

在这里插入图片描述

3 按键输入

为了检测按键我们需要将GPIO配置为输入模式。
在这里插入图片描述
这里的按键其实已经添加了电容进行硬件消抖,不过我们在软件处理时还是习惯性的使用软件消抖。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

3.时钟与GPIO【七天物联网智能家居训练营】 的相关文章

  • APM32F103CBT6调试接口复用为GPIO配置问题

    APM32F103CBT6调试接口复用为GPIO配置问题 xff1a 可以通过调整复用配置 xff0c 改为GPIO口 xff0c xff08 注意 xff1a 改为上电默认为GPIO口后 xff0c 将无法再用调试功能 xff0c 慎重选
  • 4.中断与串口【七天物联网智能家居训练营】

    本文是百问网七天物联网智能家居训练营学习笔记 xff0c 官网链接 1 中断 我们先来看一下什么是中断 xff1a 其实这种就是前后台的程序设计模式 我们来看下CM3内核都有哪些中断 xff0c 如下表 xff1a 对于CM3内核的单片来说
  • 5.AT指令【七天物联网智能家居训练营】

    本文是百问网七天物联网智能家居训练营学习笔记 xff0c 官网链接 1 ESP8266 本文要使用的wifi模块为ESP8266 xff0c 我们直接使用官方提供的固件即可 xff0c 无须单独开发 直接通过串口和wifi模块进行通信 xf
  • NVIDIA Jetson Xavier NX 控制GPIO

    NVIDIA Jetson Xavier NX 控制GPIO 文章目录 NVIDIA Jetson Xavier NX 控制GPIO前言一 简介二 代码实例1 gpio h2 gpio cpp 三 拓展 前言 在linux系统中以文件io的
  • GPIO

    一 什么是GPIO xff1f 首先应该理解什么是GPIO GPIO xff0c 英文全称为General Purpose IO ports xff0c 也就是通用IO口 在嵌入式系统中常常有数量众多 xff0c 但是结构却比较简单的外部设
  • 28335之GPIO输入

    include 34 DSP2833x Device h 34 include 34 DSP2833x Examples h 34 define LED GpioDataRegs GPADAT bit GPIO0 GPIO配置函数 void
  • 树莓派GPIO

    命令行执行下行 xff0c 即可得树莓派管脚编码表 gpio readall 也可看下图 xff1a BOARD 编号参考 Raspberry Pi 主板上 P1 接线柱的针脚编号 使用该方式的优点是无需考虑主板的修订版本 xff0c 无需
  • Arduino通过继电器控制电机(5V小马达)ESP8266-12F同理(小白初学)

    用Arduino ESP8266 12F控制电机 一 实验环境 IDE Arduino 材料 Arduino UNO ESP82266 12F 4 5V电池盒子 继电器 6脚 5V电机一个 5V小马达 面包板 杜邦线若干 二 接法 参照37
  • RT-Thread记录(十三、I/O 设备模型之PIN设备)

    讲完UART设备之后 我们已经熟悉RT Thread I O 设备模型了 回头看看基本的 PIN 设备 目录 前言 一 PIN 设备模型解析 1 1 初识 GPIO 操作函数 1 2 PIN 设备框架 1 3 PIN 设备驱动框架层 实现的
  • 新唐NUC980使用记录(5.10.y内核):在用户应用中使用GPIO

    文章目录 目的 使用参考与演示 使用参考 存在的问题 问题定位 修改设备树 使用测试 总结 设备树文件内容 目的 GPIO是最基础的外设 使用频率也非常高 这篇文章将简单体验在NUC980 Liunx用户应用中使用GPIO功能 这篇文章中内
  • MC9S12XEP100引脚的复用方式

    嵌入式码农小明最近在研发一个嵌入式产品 用的MC9S12XEP100芯片 其中三个需求需要通过几个使用SPI通讯的芯片实现 硬件开发人员小红照着芯片原理图布好了线 不知是否是没考虑到SPI通讯可以通过CS line来控制要通讯的从机从而实现
  • 品味树莓派:GPIO Zero库使用入门

    文章目录 目的 基础说明 入门使用 LED PWMLED Button 更多入门例程 类基础说明 注意事项 总结 目的 树莓派有很多GPIO口可供用户使用 官方同时也提供了一些方式来操作这些IO口 其中目前主要推荐的是基于Python的GP
  • 使用HAL库开发STM32:GPIO口基础使用与外部中断

    文章目录 目的 GPIO口基础使用 基础说明 初始化设置 输出与控制 读取端口值 GPIO口与外部中断 总结 目的 对于MCU来说GPIO口的使用是最基础的内容 仅使用GPIO口和延时等 就可以完成很多功能了 GPIO口基础使用 基础说明
  • 在 ARM 上的 Linux 中写入和读取内存映射设备寄存器

    我正在尝试按照以下步骤读取和写入 ARM9 SAM9X25 上的寄存器 http infocenter arm com help index jsp topic com arm doc faqs ka3750 html我以以下代码结束 in
  • 使用 Node.js 通过 Raspberry Pi 3 model B 进行 GPIO

    我正在尝试使用树莓派 3 B 型让 LED 闪烁 我的机器上安装了所有必需的模块 即 npm nodejs pi gpio 修复了检测 gpio 的微小更改 代码是 var gpio require pi gpio gpio open 16
  • android.os.ServiceSpecificException:GPIO2_IO02 已在使用中(代码 16)

    我正在研究 android 的东西 Pico i MX7D I O 我得到了android os ServiceSpecificException GPIO2 IO02 已在使用中 代码 16 异常 这是什么意思 请帮我 我的示例程序是从克
  • Raspberry Pi RuntimeError:已为此 GPIO 通道启用冲突边缘检测

    我正在遵循此处找到的教程 https www linkedin com pulse prepare your raspberry pi work aws iot kay lerch I have not even begun the int
  • GPIO-Hog声明的目的和用途

    问题 其目的和用例是什么gpio hog宣言 可以从用户空间连接 占用 的 GPIO 引脚吗 如果 占用 GPIO 引脚无法与用户空间交互 那么是否有任何机制可以在 dts 文件中配置 GPIO 引脚以进行用户空间交互 背景 我正在尝试配置
  • 如何在嵌入式Linux中检测GPIO线上的中断?

    GPIO 39 上每 10ms 产生一个中断熊猫板 OMAP4 http www ti com product OMAP4460 我已在 Linux 驱动程序代码中为此注册了一个处理程序 但由于未检测到中断 因此未调用该处理程序 我在硬件级
  • Linux、ARM:为什么仅当启动时存在 I2C GPIO 扩展器时才创建 gpiochip

    在 imx6sx 硬件平台 NXP 嵌入式 ARM 上使用 Linux 3 14 52 问题是设备树中指定的 PCF8575 I2C GPIO 扩展器不会实例化为 sys class gpio 结构中的设备 除非它们在内核启动期间存在 这些

随机推荐

  • C++从入门到进阶的系列书籍推荐

    目录 1 C 43 43 入门书籍 1 1 C语言程序设计 xff08 谭浩强 xff09 1 2 C 43 43 Primer中文版 xff08 第5版 xff09 2 VC 43 43 MFC书籍 2 1 VC 43 43 深入详解 x
  • 无人机姿态解算_扩展卡尔曼滤波(2)

    一 扩展卡尔曼滤波 KF和EKF的公式对比 xff08 基本没差别 xff09 二 扩展卡尔曼五个公式 利用扩展卡尔曼滤波估计四元数 下图是论文中的截图 可以和前面的卡尔曼滤波估计高度文章的那五个公式对应一下 观测矩阵的确定 三 代码的实现
  • 无人机高度估计_卡尔曼滤波

    一 卡尔曼滤波公式 线性系统的离散状态空间表达式 xff1a 这是卡尔曼五个标准公式的基础 式叫做系统状态方程 xff1a xk k时刻系统状态变量值 Ak 状态转移矩阵 Bk 控制矩阵 uk 1 k 1时刻系统的输入 wk 1 k 1时刻
  • 日常记录4_pixhawk电流计的使用

    1 实物图以及连接 注意事项 接电流计的时候 xff0c 先别给电流计通电 xff0c 要先接负载 xff08 即接到飞机那一端 xff09 再给电流计供电 xff0c 不然空载的时候 xff0c 电池给电流计的电流会很大 xff0c 导致
  • Android中的ListView

    文章目录 1 ListView概述2 适配器2 1 ArrayAdapter2 2 SimpleAdapter2 3 BaseAdapter 1 ListView概述 下面看一下ListView的应用场景 xff1a 2 适配器 先看下适配
  • Android中的ViewPager2

    文章目录 1 ViewPager2简介1 1 ViewPager2应用场合1 2 ViewPager2应用背景 2 应用案例2 1 图片轮播2 2 导航 1 ViewPager2简介 1 1 ViewPager2应用场合 ViewPager
  • Qt界面语言国际化

    文章目录 1 Qt界面语言国际化1 1 操作步骤 1 Qt界面语言国际化 1 1 操作步骤 操作步骤如下 xff1a 生成TS文件 xff08 LUPDATE xff09 编辑TS文件 xff08 LINGUIST xff09 发布TS文件
  • Qt工程pro文件配置详解

    文章目录 1 pro文件常用配置1 1 注释1 2 CONFIG1 3 DEFINES1 4 FORMS1 5 HEADERS1 6 INCLUDEPATH1 7 LIBS1 8 QT1 9 SOURCES1 10 TRANSLATIONS
  • Qt配置GUI程序控制台输出

    文章目录 1 Qt配置GUI程序控制台输出 1 Qt配置GUI程序控制台输出 下面看一下如何控制GUI程序控制台输出 xff1a 在 在 pro 文件中添加 xff1a CONFIG 43 61 console 选择 xff1a 项目 gt
  • 列表框QListWidget 类

    文章目录 1 QListWidget 简介2 QListWidget 常用操作2 1 添加操作2 2 删除操作 1 QListWidget 简介 Qt 提供 QListWidget 类列表框控件用来加载并显示多个列表项 QListWidge
  • Qt中的QSpinBox

    文章目录 1 QSpinBox1 1 QSpinBox 简介1 2 QSpinBox的主要属性 1 QSpinBox 1 1 QSpinBox 简介 QSpinBox 类提供了一个微调框部件 QSpinBox 允许用户选择一个值 xff0c
  • C/C++面试题1

    目录 1 C 面向对象的三大特性是什么 谈谈你对这三大特性的认识 2 include 和 include filename
  • QCheckBox

    文章目录 1 QCheckBox1 1 QCheckBox简介 1 QCheckBox 1 1 QCheckBox简介 QCheckBox 继承自 QAbstractButton xff0c 它提供了一个带文本标签的复选框 QCheckBo
  • QSlider

    文章目录 1 QSlider1 1 QSlider 简介 1 QSlider 1 1 QSlider 简介 QSlider 部件提供了一个垂直或水平滑动条 滑块是一个用于控制有界值的典型部件 它允许用户沿水平或垂直方向移动滑块 xff0c
  • QComboBox

    文章目录 1 QComboBox1 1 QComBox简介 1 QComboBox 1 1 QComBox简介 QComboBox 是下拉列表框组件类 xff0c 它提供一个下拉列表供用户选择 xff0c 也可以直接当作一个 QLineEd
  • QTreeWidget

    文章目录 1 QTreeWidget1 1 QTreeWidget简介 1 QTreeWidget 1 1 QTreeWidget简介 在 Qt 中的树形控件称为 QTreeWidget xff0c 而控件里的树形节点称为 QTreeWid
  • QMouseEvent

    文章目录 1 QMouseEvent1 1 特别说明 2 通过QMouseEvent事件实现窗口移动 1 QMouseEvent 1 1 特别说明 QMouseEvent没啥要注意的 xff0c 就是对于mouseMoveEvent xff
  • 1.基础概念【七天物联网智能家居训练营】

    本文是百问网七天物联网智能家居训练营学习笔记 xff0c 官网链接 1 ARM 我们经常听所ARM xff0c 其实ARM有两种含义 xff1a ARM是一家公司 xff0c ARM也是一种处理器架构 RISC是精简指令集 xff0c 旨在
  • 2.单片机开发模式【七天物联网智能家居训练营】

    本文是百问网七天物联网智能家居训练营学习笔记 xff0c 官网链接 1 单片机上手思路 对于一款新单片机 xff0c 我们可以采取如下思路进行上手 xff1a 去芯片原厂官网 xff0c 下载资料 xff0c 主要是获取数据手册和参考手册
  • 3.时钟与GPIO【七天物联网智能家居训练营】

    本文是百问网七天物联网智能家居训练营学习笔记 xff0c 官网链接 1 时钟系统 首先我们要知道时钟的主要作用是用来同步 xff0c 现代的计算机系统是必然有时钟的 并且 xff0c 对于高级的单片机系统 xff0c 还会存在着不同频率的时