b站江科大stm32笔记(持续更新)

b站江科大stm32笔记(持续更新)

  • 片上资源/外设
  • 引脚定义表
  • 启动配置
  • 推挽开漏
    • oc/od 门漏极/集电极
  • 电阻的上拉下拉
  • 输入捕获
  • 输入捕获通道
  • 主从触发模式
  • 输入捕获基本结构
  • PWMI基本结构
  • PWM
  • PSC ARR CRR
  • 输入捕获模式测频率
    • TIM_PrescalerConfig()
    • 初始化输入捕获
    • 测频法测周法
  • PWMI模式测频率占空比
  • 定时中断基本结构
    • 预分频器PCR
  • TIM编码器接口

  • 系列:主流系列STM32F1
  • 内核:ARM Cortex-M3
  • 主频:72MHz RAM:20K(SRAM) ROM:64K(Flash)
  • 供电:2.0~3.6V(标准3.3V)
  • 封装:LQFP48

片上资源/外设

NVIC和SysTick是位于Cortex内核内部的外设
剩下的位于内核外部
在这里插入图片描述
在这里插入图片描述
ICode Dcode主要用来连接Flash闪存,Flash中存储写的程序
AHB先进高性能总线
APB先进外设总线
APB2性能一般高一些72AHB1一般32
所以APB2一般连接重要的外设
DMA替CPU完成一些简单的例如数据搬运的工作
在这里插入图片描述

引脚定义表

红色电源(S)相关,蓝色最小系统(I、O)相关,绿色IO口,功能口相关
推荐使用加粗的IO口
这5个没加粗的端口如果全部被配置成普通端口则无法下载程序,需要用串口方式下载程序了(正常是用STLink或者JLink)
在这里插入图片描述

在这里插入图片描述

启动配置

主闪存存储器:最常用模式
系统存储器:存储BootLoader,接收串口数据,然后刷新到主闪存中
在这里插入图片描述
四个供电
VBAT备用电源
STM32晶振一般8MHZ经过锁相环倍频,得到72MHZ晶振连接到5、6号引脚
OSC32意思是32.768KHz晶振
32768是2^15内部RTC电路经过2的15次方分频,可以生成1秒的时间信号

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
模拟输入接受模拟量,复用功能输入接收数字量所以在施密特触发器前面

推挽开漏

oc/od 门漏极/集电极

od open drain(漏极开路)
oc open collecter(集电极开路)
漏极——mos管(场效应管)有三个极,漏极、源极和栅极。
集电极——三极管 基极 集电极 发射极
所以od针对mos管 oc针对三极管
在这里插入图片描述
在这里插入图片描述

电阻的上拉下拉

右边相当于左边
在这里插入图片描述
中间接一根线链接信号域,下方电阻变为开关,开关闭合能在信号域中产生不同电压,闭合为0,打开为1
在这里插入图片描述

在这里插入图片描述
电阻越小,拉的力度越大
在这里插入图片描述
在这里插入图片描述
上拉下拉电阻,使用方式不同名字不同 上拉电阻接在固定高电平vcc,使其电压空闲状态保持高电平 下拉与gnd相接,空闲状态保持低电平
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
推挽高低电平都是驱动能力 开漏模式低电平才有驱动能力,浮空不行

在这里插入图片描述
为了避免引脚悬空(io口引脚什么都不接)导致的输入数据不确定要加上上拉电阻和下拉电阻 上拉电阻和下拉电阻阻值比较大是弱拉,为了尽量不影响正常输入操作

在这里插入图片描述

输入捕获

IC(Input Capture) 输入捕获

  • 输入捕获模式下,当引脚车险指定电平跳变时,当前CNT的值被锁存到CCR中,可用于测量PWM波形的频率,占空比等。
  • 每个高级定时器和通用定时器都拥有四个输入捕获通道基本定时器没有输入捕获功能
  • 可配置为PWMI模式,同时测量频率和占空比
  • 可配合主从触发模式,实现硬件全自动测量
    四个输入捕获和四个输出比较通道,公用4个CCR寄存器
    共同占用CH1和ch4,所以对于同一个定时器输入捕获和输出比较只能用一个

在这里插入图片描述

输入捕获通道

在这里插入图片描述

主从触发模式

从模式自动清空
在这里插入图片描述

输入捕获基本结构

在这里插入图片描述

PWMI基本结构

可以同时测量频率和占空比
下方通道CCR1是整个周期的计数值,CCR2是高电平期间计数值

在这里插入图片描述

PWM

PWM(Pulse Width Modulation)简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在测量、通信、工控等方面。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

PSC ARR CRR

PSC预分频系数
ARR计数
CRR比较值
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如果要产生一个频率1KHz,占空比50%,分辨率为1%的PWM波形
PWM频率:72M/(PSC+1)/(ARR+1)=1000
PWM占空比:Duty=CCR/(ARR+1)=50%
PWM分辨率:Reso= 1/(ARR+1)=1%
解得ARR+1=100、CCR=50、PSC+1=720
PSC预分频器
ARR计数

在这里插入图片描述人耳听到频率在20KHz以上的不会有蜂鸣声,由公式可得

在这里插入图片描述

比较,与设定的值比较从而确定PWM

输入捕获模式测频率

调节频率通过PSC(预分频系数),调节ARR(计数值)会影响占空比

TIM_PrescalerConfig()

影子寄存器(又名缓冲寄存器)
立刻生效切断波形开启新周期,会出现不完整周期或者下个周期在生效
在这里插入图片描述

初始化输入捕获

步骤如上图输入捕获基本结构

  • 开启时钟
  • 配置GPIO
  • 配置时基单元

在这里插入图片描述
选择定时器3对应的引脚PA6

测频法测周法

在这里插入图片描述

  • 测频法闸门内计次 一秒内有多少个上升沿频率就是多少 闸门时间结束时可能卡在中间,所以正负一误差
  • 测周法,只测一个周期就能出一次结果,所以结果更新快,但是会受噪声影响,波动比较大
    高频适合测频法, 低频适合测周法
    (注意右边测周法待测频率要尽量低,取极端亲口光黑色小缺口甚至比蓝色缺口大了,一此都记不到)
    在这里插入图片描述

PWMI模式测频率占空比

两个通道同时捕获同一个引脚
在这里插入图片描述
目前能测最低频率为PSC=72MHz/72=1MHz ARR=65535 f=PSC/ARR~=15Hz;
要测更低频率只能修改PSC(预分频系数)改小点,提高标准频率。
在这里插入图片描述

定时中断基本结构

预分频器PCR

在这里插入图片描述
分频系数增大后定时器始终周期变大,计数值也变大
在这里插入图片描述

TIM编码器接口

  • Encoder Interface 编码器接口 编码器接口可接收增量(正交)编码器的信号,根据编码器旋转产生的正交信号脉冲,自动控制CNT自增或自减,从而指示编码器的位置、旋转方向和旋转速度
  • 每个高级定时器和通用定时器都拥有1个编码器接口(c8t6只有四个定时器,每个可接一个编码器,也可以用终端来接编码器,但是消耗软件资源(硬件不够软=软件来凑))
  • 两个输入引脚借用了输入捕获的通道1和通道2每个定时器的CH1和CH2(3、4不能接编码器)
    1:TIM1是一个完整的电机控制用定时器外设,TIM1_CH1和TIM1_CH1N,用于驱动上下两个功率管。如果Deadtime为0,则 TIM1_CH1N是TIM1_CH1的反相,如果Deadtime不为0,则在TIM1_CH1N上插入了Deadtime,防止上下功率管同时导通。
    2:TIM1_CH1N是TIM1_CH1的互补输出 ,用于TIM1的同步PWM模式。

在这里插入图片描述
在使用定时器的时候,在引脚复用功能中看到了TIM2_CH1_ETR,这个ETR是什么意思呢?

答:TIM2_CH1_ETR表示两个功能选一个,分别是TIM2_CH1和TIM2_ETR,TIM2_CH1表示让这个引脚作为TIM2的第一通道对应引脚;TIM2_ETR表示让这个引脚作为TIM2外部时钟提供引脚,这种功能有两种模式,如下图:

https://blog.csdn.net/GQ_Sonofgod/article/details/105427872
https://www.cnblogs.com/leo0621/p/8833197.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/315527.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【MySQL】SQL优化

SQL优化 插入数据 insert 一次插入数据和批量插入数据 insert into tb_test (id, name) values (1,Tom); insert into tb_test (id, name) values (1,Tom),(2,Jack),(3,Jerry);优化方案: 手动控制事务,且按主键顺序插入。start transaction; insert …

【04-提升模型性能:集成学习与超参数优化】

文章目录 前言集成学习BaggingBoosting超参数优化随机搜索贝叶斯优化总结前言 在前几篇博文中,我们已经介绍了一些机器学习的基础知识、Scikit-learn的核心工具与技巧,以及如何评估模型性能。本篇博文将重点讲解两个可以显著提升机器学习模型性能的高级策略:集成学习和超参数…

制糖工业智能工厂数字孪生可视化平台,推进制糖产业数字化转型

制糖工业智能工厂数字孪生可视化平台,推进制糖产业数字化转型。随着信息技术的快速发展,数字化转型已成为各行各业的重要趋势。在糖果加工制造领域,智能工厂数字孪生可视化平台的出现,为行业数字化转型注入了新的活力。 糖果加工制…

STM32之HAL开发——ADC入门介绍

ADC简介 模数转换,即Analog-to-Digital Converter,常称ADC,是指将连续变量的模拟信号转换为离散的数字信号的器件,比如将模温度感器产生的电信号转为控制芯片能处理的数字信号0101,这样ADC就建立了模拟世界的传感器和…

WPF —— lCommand命令实例

首先在标签页面设置一个Button按钮 <Button Width"100" Height"40" Content"测试" ></Button> 1 创建一个类 继承于ICommand这个接口&#xff0c; 这个接口一般包含三部分&#xff1a; 俩个方法&#xff1a;一个判断指令是不是…

Ghost Buster Pro for Mac:强大的系统优化工具

Ghost Buster Pro for Mac是一款功能强大的系统优化工具&#xff0c;专为Mac用户设计&#xff0c;旨在提供全方位的系统清理、优化和维护服务。 Ghost Buster Pro for Mac v3.2.5激活版下载 这款软件拥有出色的垃圾清理能力&#xff0c;能够深度扫描并清除Mac上的无效目录、文件…

网工内推 | 云计算运维,厂商云相关认证优先,股票期权,全勤奖

01 国科科技 招聘岗位&#xff1a;云计算运维 职责描述&#xff1a; 1、负责私有云平台的运维管理工作,包括云平台日常运维、故障处理、扩容、版本升级、优化和维护等。 2、根据业务需求,从技术角度支持及配合各业务系统上云工作。 3、为云上业务系统提供云产品、云服务方面的…

【C++】---STL容器适配器之底层deque浅析

【C】---STL容器适配器之底层deque浅析 一、deque的使用二、deque的原理1、deque的结构2、deque的底层结构&#xff08;1&#xff09;deque的底层空间&#xff08;2&#xff09;deque如何支持随机访问、deque迭代器 3、deque的优缺点&#xff08;1&#xff09;deque的优势&…

SpringMVC基础篇(一)

文章目录 1.基本介绍1.特点2.SpringMVC跟SpringBoot的关系 2.快速入门1.需求分析2.图解3.环境搭建1.创建普通java工程2.添加web框架支持3.配置lib文件夹1.导入jar包2.Add as Library3.以后自动添加 4.配置tomcat1.配置上下文路径2.配置热加载 5.src下创建Spring配置文件applica…

报错The chromedriver version cannot be discovered以及下载chromedriver.exe和查看其版本的命令

python3.8.10&#xff0c;win10。 谷歌浏览器版本&#xff08;我写代码的时候还是123.0.x.x&#xff0c;没几天就自动更新到124.0.x.x了&#xff09;&#xff1a; 在使用selenium的时候&#xff0c;出现报错&#xff0c;The chromedriver version cannot be discovered。 &am…

Fast-DetectGPT 无需训练的快速文本检测

本文提出了一种新的文本检测方法 ——Fast-DetectGPT&#xff0c;无需训练&#xff0c;直接使用开源小语言模型检测各种大语言模型&#xff0c;如GPT等生成的文本内容。 Fast-DetectGPT 将检测速度提高了 340 倍&#xff0c;将检测准确率相对提升了 75%&#xff0c;超过商用系…

企业库存管理的数字化转型引擎

对于企业IT部门来说,库存管理一直是一项棘手且耗时的工作。从采购、入库到销售出库,整个库存管理流程都需要IT人员投入大量精力。但是,由于缺乏有效的信息化手段,企业往往难以实现对库存全生命周期的系统管控,导致了一系列难题: 传统库存管理面临的痛点 库存信息管理混乱 许多…

BUUCTF--web(2)

1、[HCTF 2018]admin1 打开题目后发现有注册和登录两个页面&#xff0c;因为题目提示admin&#xff0c;尝试用admin进行爆破 爆破得到密码为123 登录得到flag 2、[护网杯 2018]easy_tornado1 打开题目后有三个文件&#xff0c;分别打开查看 在url地址栏中发现包含两个参数&a…

分布式-知识体系

分布式系统 本质就是一堆机器的协同&#xff0c;要做的就是用各种手段来让机器的运行达到预期 分布式业务场景 分布式四纵四横说 基于 MSA&#xff08;微服务架构&#xff09;的分布式知识体系 相关概念 – 【摘自网络原文】 节点与网络 节点 传统的节点也就是一台单体的物…

go语言并发实战——日志收集系统(八) go语言操作etcd以及利用watch实现对键值的监控

有关包的安装 我们要实现go语言对第三方包的操作需要我们下载第三方包go.etcd.io&#xff0c;下载命令&#xff1a; go get go.etcd.io/etcd/client/v3 ectd的put与get操作 相关函数说明与示例 我们想实现对etcd进行简单的操作的步骤还是比较简单的&#xff0c;在我上一篇文…

【Hadoop3.3.6】数据块副本放置策略及解析EditLog和FsImage

目录 一、摘要二、正文2.1 环境说明2.2 网络拓扑2.3 Hadoop副本放置策略介绍2.4 解析EditLog和Fsimage镜像文件三、小结一、摘要 通过解析存储于NameNode节点上的日志文件EditLog和镜像文件(元数据)Fsimage来反向验证HDFS的数据块副本存放策略,其目的是希望加深对Hadoop的数…

Qt | 标准、复选、单选、工具、命令按钮大全

01、QPushButton QPushButton 类(标准按钮) 示例 3:默认按钮与自动默认按钮 02、QCheckBox QCheckBox 类(复选按钮) 1、复选按钮的第三状态(见右图 Qt5.10.1 的选中状态):是指除了选中 和未选中状态之外的第三种状态,这种状态用来指示“不变”,表 示用户既不选中也不取…

测试的分类(3)

目录 按照测试阶段测试 系统测试 冒烟测试和回归测试的区别 验收测试 单元测试, 集成测试, 系统测试, 回归测试之间的关系 是否按手工进行测试 手工测试 自动化测试 自动化测试和手工测试的优缺点 自动化测试优点 自动化测试缺点 手工测试优点 手工测试缺点 按照…

【树莓派Linux内核开发】入门实操篇(虚拟机Ubuntu环境搭建+内核源码获取与配置+内核交叉编译+内核镜像挂载)

【树莓派Linux内核开发】入门实操篇&#xff08;虚拟机Ubuntu环境搭建内核源码获取与配置内核交叉编译内核镜像挂载&#xff09; 文章目录 【树莓派Linux内核开发】入门实操篇&#xff08;虚拟机Ubuntu环境搭建内核源码获取与配置内核交叉编译内核镜像挂载&#xff09;一、搭建…

Linux学习之路 -- 进程篇 -- 自定义shell的编写

前面介绍了进程程序替换的相关知识&#xff0c;接下来&#xff0c;我将介绍如何基于前面的知识&#xff0c;编写一个简单的shell&#xff0c;另外本文的所展示的shell可能仅供参考。 目录 <1>获取用户的输入和打印命令行提示符 <2>切割字符串 <3>执行这个…