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

【STM32】STM32的中断系统寄存器NVIC、EXTI

文章目录

  • 中断概述
    • 中断的概念
    • 为什么需要中断
    • STM32的中断
  • STM32的中断体系架构
  • NVIC
    • NVIC的介绍
    • 中断优先级
      • 优先级寄存器
      • 优先级组
  • EXTI


中断概述

中断的概念

在主程序运行过程中,出现了特定事件,使得CPU暂停当前正在运行的程序,转而去处理这个事件,等这个事件处理完成之后,CPU再回到刚才被打断的位置继续处理,这就是中断。
那个打断CPU执行的特定事件,我们一般称之为中断源。被中断源打断的位置我们称为断点。处理特定事件的过程,我们称为执行中断处理程序

在这里插入图片描述

正在执行中断程序的时候,这个时候有可能被另外一个中断源给中断,CPU转而去执行另外一个中断源的中断处理程序,这叫中断嵌套
中断B能否打断中断A,要看他们的优先级,优先级高的可以打断优先级低的,优先级低的无法打断优先级高的。

在这里插入图片描述

中断源可以是外部的,也可以是内部的。外部的叫外部中断源,内部的叫内部中断源内部的中断有时候也叫异常)。

为什么需要中断

对单片机系统来说,中断至关重要。
比如我们要检测按键是否按下,如果没有中断,则需要循环的方式不断的去检测按键对应的IO口的电平,(轮询)这是比较耗费CPU的时间的。如果要检测的更多的话,CPU有可能会导致阻塞。
有了中断事情就变的简单了,主程序不需要循环不断的去检测按键,当有按键按下的时候,CPU执行被打断,去执行按键处理程序就行了。当没有按键按下的时候,CPU完全可以正常执行代码,丝毫不受任何的影响。

STM32的中断

Cortex-M3内核支持256个中断,其中包含了16个内核中断和240个外部中断,并且具有256级的可编程中断设置。
但是一般情况下我们并不需要如此多中断,所以芯片厂商会对Cortex-M3的中断进行裁剪。
STM32有84个中断,包括16个内核中断和68个可屏蔽中断,具有16级可编程的中断优先级。
STM32F103系列70个中断(小编介绍的芯片)有10个内核中断和60个可编程的外部中断。
下面的列表中,灰色背景的是内部中断(或者异常),其他的为外部中断。

在这里插入图片描述

该表中的每一个地址就代表我们要进入该中断的中断服务程序的入口地址。
在这张表中,优先级数字越小代表它优先级越高。

STM32的中断体系架构

在中断服务中,内核是核心,因为所有中断请求都要发给内核,打断内核当前处理的程序,转而去执行中断服务程序。
我们可以把内核想象成皇上,所以它需要丞相来协助它,每一个中断请求都要先经它手,它会把每一个要见内核的中断按优先级排序,接下来我们介绍的NVIC就可以形象理解成丞相。
按照中断的来源不同,NVIC要处理的中断又分为三类。
来源1:内核其他控件
它们是离内核最近的,可以理解成是朝廷的官员,如系统滴答定时器,复位等。
来源2:片上外设
它们可以理解成是地方上的官员,还是在这个国家内,比如串口,定时器,I2C等。
来源3:外部中断
它们可以理解成是外国使臣,它们要进入单片机内部要经过输入输出引脚,也就是GPIOA~G,但是我们知道每一个GPIO都有16个引脚,一共7个GPIO就是112个引脚,但是并不是在同一时间所以外国使臣都要来进贡,所以我们可以在芯片内部将连线精简。
所有进入芯片的GPIO都要经过AFIO引脚复用选择器,就是只会选择7个GPIO中其中一个来进行传输(7合1),中断服务程序)会传输给EXTI(外部中断控制器),它可以理解成外交官,它会见整理所有外部请求,然后再传给NVIC。

在这里插入图片描述

NVIC

因为NVIC贴近内核,所以我们配置寄存器优先级不用手动设置,直接调标准库就行了。

NVIC的介绍

NVIC(Nested vectored interruptcontroller嵌套向量中断控制器)和处理器核的接口紧密相连,可以实现低延迟的中断处理和高效地处理中断。嵌套向量中断控制器管理着包括内核异常,外部中断等所有中断。由NVIC决定哪个中断的处理程序交给CPU来执行。
每一个外部中断都可以被使能或者禁止,并且可以被设置为挂起状态或者清除状态。处理器的中断可以是电平形式的,也可以是脉冲形式的,这样中断控制器就可以处理任何中断源。
16个IO的中断与PVD(电源电压检测),RTC(实时时钟),USB,以太网检测这20个外部中断会通过EXTI来控制,然后交给NVIC。其他中断都是直接交给NVIC来处理。

中断优先级

NVIC为了方便管理中断,可以通过软件给每个中断设置优先级。NVIC用4个位来控制优先级,值小的优先级高。把优先级分为两种:抢占优先级响应优先级
规则:

  • 优先级值越小,优先级越高。
  • 如果不设置优先级,则默认优先级为0。
  • 先比较抢占优先级。抢占优先级高的可以打断抢占优先级低的。
  • 若抢占优先级一样,再比较响应优先级。但是响应优先级不会导致中断嵌套。
  • 若抢占优先级一样的同时挂起,则优先处理响应抢占优先级高的。
  • 若挂起的优先级(抢占和响应)都一样,则查找中断向量表,值小的先响应。

优先级寄存器

我们再来看看系统手册里对优先级寄存器的说明:

在这里插入图片描述

我们可以看到一共又21个寄存器,每个寄存器可以配置4个优先级级值,一共可以配置84个,正好对应了前面我们介绍的STM32有84个中断。
但是我们还说了一共只有16个可编程的中断优先级,但是每一个可配置的地方却有8位,也就是可以配256个中断优先级,所以系统也有如下规定,优先级配置只有高四位有效:

在这里插入图片描述

优先级组

优先级组就是前面介绍的抢占优先级的底层划分,对每一个优先级组再次划分就是响应优先级。
NVIC对优先级分了5组,在程序中先对中断进行分组,而且分组只能分一次,若多次分,只有最后一次生效。

我们来看看寄存器是如何配置寄存器组的:
在这里插入图片描述

其实理解也很简单,优先级组一共划分为5组,每一组的区别就是对原本配置优先级的高4位进行划分,图中的x就代表抢占优先级,y就代表相应优先级,以第三组0b101为例,有四种抢占优先级,也就是这四种不同的抢占优先级中优先级高的可以打断优先级低的,每一种抢占优先级又分为4种响应优先级,也就是同一抢占优先级的四位不能互相打断,但是有都在挂起时的相应先后顺序。

在这里插入图片描述

EXTI

这个模块的很多寄存器都需要我们手动配置,所以我们需要关注它的原理图。

在这里插入图片描述
以上就是小编分享的全部内容了,如果觉得不错还请留下免费的关注和收藏
如果有建议欢迎通过评论区或私信留言,感谢您的大力支持。
一键三连好运连连哦~~

在这里插入图片描述

相关文章:

【STM32】STM32的中断系统寄存器NVIC、EXTI

文章目录 中断概述中断的概念为什么需要中断STM32的中断 STM32的中断体系架构NVICNVIC的介绍中断优先级优先级寄存器优先级组 EXTI 中断概述 中断的概念 在主程序运行过程中,出现了特定事件,使得CPU暂停当前正在运行的程序,转而去处理这个事…...

LLM-201: OpenHands与LLM交互链路分析

一、核心交互链路架构 #mermaid-svg-ZBqCSQk1PPDkIXNx {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-ZBqCSQk1PPDkIXNx .error-icon{fill:#552222;}#mermaid-svg-ZBqCSQk1PPDkIXNx .error-text{fill:#552222;strok…...

税务 VR 虚拟体验,带来全新办税感受

在过去,企业办税难题诸多。申报纳税高峰期,办税服务厅人满为患,财务人员需早起取号排队,耗费大量时间。传统办税流程复杂,涉及多环节和部门,资料繁多,若准备不全或有误就得重新准备,…...

【Linux 驱动中断】

Linux 驱动中断 一、GIC 控制器:硬件中断的枢纽二、GPIO 中断:设备交互的常见入口三、Tasklet 与软中断:高效的异步处理机制3.1 Tasklet3.2 软中断 四、工作队列:灵活的任务处理框架4.1 共享工作队列4.2 自定义工作队列4.3 延迟工…...

ali 轻量服务器安装nginx

# Ubuntu sudo apt install nginx-light # 精简版 # CentOS sudo yum install nginx #启动并设置开机自启 sudo systemctl daemon-reload sudo systemctl start nginx sudo systemctl enable nginx #验证安装 nginx -v curl -I 127.0.0.1 #常用命令: # 重新加载配…...

2025年- H83-Lc191--139.单词拆分(动态规划)--Java版

1.题目描述 2.思路 字符串s是一个容器(一个背包),wordDict词典是物品,这里面的每个物品我们可以使用多次。 动归五部曲 (1)字符串的长度为i,dp[i]true。 dp[s.size] dp[0]代表空字符串 &#x…...

【好用但慎用】Windows 系统中将所有 WSL 发行版从 C 盘迁移到 非系统 盘的完整笔记(附 异常处理)

🚀 将所有 WSL 发行版从 C 盘迁移到 I 盘的完整教程(含 Podman / NVIDIA Workbench / Ubuntu 等) 【无标题】使用 Chocolatey 安装 WSL 管理工具 LxRunOffline-CSDN博客 免责声明 重要提示 在执行 WSL 迁移操作前,请务必仔细阅读…...

贪心算法思路详解

文章目录 一、贪心算法是什么?二、贪心算法原理三、再谈背包问题四、活动选择问题五、拟阵理论总结 一、贪心算法是什么? 贪心算法与动态规划算法一样是用于求解最优化类问题的算法,其本质上是基于动态规划算法的改进算法,其所求…...

Keil 安装 CMSIS-FreeRTOS 失败解决方案

一、问题现象 在 Keil 中安装 CMSIS-FreeRTOS 时出现以下错误: (1) 通过内置工具安装: (2)通过官网安装: 二、核心原因 Keil 版本过低,与 CMSIS-FreeRTOS 包不兼容: …...

Python打卡DAY33

DAY33:MLP神经网络的训练 恩师浙大疏锦行 知识点: PyTorch和cuda的安装查看显卡信息的命令行命令(cmd中使用)cuda的检查简单神经网络的流程 数据预处理(归一化、转换成张量)模型的定义 继承nn.Module类定义…...

RJ45 网口实现千兆传输速率(1Gbps)的原理,涉及物理层传输技术、线缆标准、信号调制及网络协议等多方面的协同设计。以下从技术维度展开详细解析:

一、千兆以太网的标准与物理层基础 1. 标准规范 千兆以太网遵循 IEEE 802.3ab(针对双绞线)和 IEEE 802.3z(针对光纤)标准,其中 RJ45 接口对应双绞线场景,核心是通过四对双绞线(CAT5e/CAT6 线缆…...

leetcode hot 100之:二叉树的层序遍历

层序遍历和前中后序遍历不一样,大家可以想象的是:前中后序遍历可以用递归,因为他是以子树为标准来选择的;那层序怎么办呢?怎么才能一层层地遍历呢? void First(TreeNode* root) {printf("%d",ro…...

深入解析BERT:语言分类任务的革命性引擎

“BERT的出现,如同在自然语言处理领域投下了一颗认知炸弹——它让机器真正学会了’联系上下文’。” ——自然语言处理研究者普遍共识 在自然语言处理(NLP)领域,2018年诞生的BERT(Bidirectional Encoder Representatio…...

Pycharm中Jupyter Notebook 插件常用快捷键

bg:Jupyter跟LINQPad很像,都是方便写的时候看数据用 快捷键功能Shift Enter执行当前单元格,并跳转到下一个单元格Ctrl Enter执行当前单元格,不跳转(留在当前单元格)Alt Enter执行当前单元格&#xff0c…...

【Python】Excel表格操作:ISBN转条形码

一、效果 原始文件: 输出文件: 二、代码 import os import logging from openpyxl import load_workbook from openpyxl.drawing.image import Image as ExcelImage from barcode import EAN13 from barcode.writer import ImageWriterlogging.basicCo…...

大数据Hadoop集群搭建

文章目录 大数据Hadoop集群搭建一、VMware准备Linux虚拟机二、VMware虚拟机系统设置1、主机名、IP、SSH免密登录2、JDK环境部署3、防火墙、SELinux、时间同步 三、VMware虚拟机集群上部署HDFS集群1、集群规划2、上传&解压3、Hadoop安装包目录结构4、修改配置文件&#xff0…...

饼图:数据可视化的“切蛋糕”艺术

饼图,作为数据可视化家族中最经典、最易识别的成员之一,其核心功能如同其名——像切分蛋糕一样,直观展示一个整体(100%)被划分为若干组成部分的比例关系。 往期文章推荐: 20.用Mermaid代码画ER图:AI时代的…...

mysql server层做了什么

服务器处理客户端请求 服务器程序在处理来自客户端的查询请求时,大致需要分为3部分:连接管理、解析与优化、存储引擎。 连接管理 每当有一个客户端进程连接到服务器进程时,服务器进程都会创建一个线程专门处理与这个客户端的交互&#xff…...

3.5.1_1 信道划分介质访问控制(上)

在这个视频中我们要介绍信道划分、介质访问控制,这是两个词,我们先介绍一下什么叫做介质访问控制。 通过之前的学习,我们知道在计算机网络当中,有的信道它在逻辑上属于总线型,我们也可以把这种信道称为广播信道&#x…...

RPC常见问题回答

项目流程和架构设计 1.服务端的功能: 1.提供rpc调用对应的函数 2.完成服务注册 服务发现 上线/下线通知 3.提供主题的操作 (创建/删除/订阅/取消订阅) 消息的发布 2.服务的模块划分 1.网络通信模块 net 底层套用的moude库 2.应用层通信协议模块 1.序列化 反序列化数…...

数据分析和可视化:Py爬虫-XPath解析章节要点总结

重要知识点 XPath 概述:XPath 是一门可以在 XML 文件中查找信息的语言,也可用于 HTML 文件。它功能强大,提供简洁明了的路径表达式和多个函数,用于字符串、数值、时间比较等。1999 年成为 W3C 标准,常用于爬虫中抓取网…...

WIFI原因造成ESP8266不断重启的解决办法

一、报错 报错信息如下: 21:37:21.799 -> ets Jan 8 2013,rst cause:2, boot mode:(3,7) 21:37:21.799 -> 21:37:21.799 -> load 0x4010f000, len 3424, room 16 21:37:21.799 -> tail 0 21:37:21.799 -> chksum 0x2e 21:37:21.799 -> loa…...

OSI网络通信模型详解

OSI 模型就是把这整个过程拆解成了 7 个明确分工的步骤,每一层只负责自己那一摊事儿,这样整个系统才能顺畅运转,出了问题也容易找到“锅”在谁那。 核心比喻:寄快递 📦 想象你要把一份重要的礼物(你的数据…...

第五章 中央处理器

5.1 CPU的功能和基本构造 5.1.1 CPU的基本功能 5.1.2 CPU的基本结构 1.运算器 算术逻辑单元ALU 累加寄存器ACC 程序字状态寄存器PSW 计数器CT 暂存寄存器 通用寄存器组 移位器 通用寄存器供用户自由编程,可以存放数据和地址。而指令寄存器是专门用于存放指令的专用寄存器,…...

大模型学习入门——Day3:注意力机制

本系列笔记的教材:快乐学习大模型-DataWhale团队 注意力机制 注意力机制最先源于计算机视觉领域,其核心思想为当我们关注一张图片,我们往往无需看清楚全部内容而仅将注意力集中在重点部分即可。而在自然语言处理领域,我们往往也…...

C++ 学习笔记精要(二)

第一节 特殊类的设计 1. 一个类: 只能在堆上创建对象 关键点:自己控制析构 1.1 方法一: 使用delete禁掉默认析构函数 #include <iostream> using namespace std;class HeapOnly { public:HeapOnly(){_str new char[10];}~HeapOnly() delete;void Destroy(){delete[…...

博士,超28岁,出局!

近日&#xff0c;长沙市望城区《2025年事业引才博士公开引进公告》引发轩然大波——博士岗位年龄要求28周岁及以下&#xff0c;特别优秀者也仅放宽至30周岁。 图源&#xff1a;网络 这份规定让众多"高龄"博士生直呼不合理&#xff0c;并在社交平台掀起激烈讨论。 图源…...

macOS - 根据序列号查看机型、保障信息

文章目录 最近在看 MacBook 二手机&#xff0c;有个咸鱼卖家放个截图 说不清参数&#xff0c;于是想根据 序列号 查看机型。苹果提供了这样的网页&#xff1a; https://checkcoverage.apple.com/ &#xff08;无需登录&#xff09; 结果 2025-06-20&#xff08;五&#xff09;…...

C/C++ 高频八股文面试题1000题(一)

原作者&#xff1a;Linux教程&#xff0c;原文地址&#xff1a;C/C 高频八股文面试题1000题(一) 在准备技术岗位的求职过程中&#xff0c;C/C始终是绕不开的核心考察点。无论是互联网大厂的笔试面试&#xff0c;还是嵌入式、后台开发、系统编程等方向的岗位&#xff0c;C/C 都…...

C++ map 和 unordered_map 的区别和联系

C map 和 unordered_map 的区别和联系 map 和 unordered_map 都是 C 标准库中关联容器&#xff0c;用于存储键值对。它们的主要区别在于底层实现和性能特性&#xff0c;联系在于它们都提供了键值对的存储和访问功能。 区别&#xff1a; 特性mapunordered_map底层实现红黑树 …...

Sentinel实现原理

Sentinel 是阿里巴巴开源的分布式系统流量控制组件&#xff0c;主要用于服务保护&#xff0c;涵盖流量控制、熔断降级、系统负载保护等功能。 以下是 Sentinel 的实现原理&#xff0c;使用中文简要说明&#xff1a; 1. 总体架构 Sentinel 采用 轻量级 设计&#xff0c;分为 核…...

python打卡day37

疏锦行 知识点回顾&#xff1a; 1. 过拟合的判断&#xff1a;测试集和训练集同步打印指标 2. 模型的保存和加载 a. 仅保存权重 b. 保存权重和模型 c. 保存全部信息checkpoint&#xff0c;还包含训练状态 3. 早停策略 作业&#xff1a;对信贷数据集训练后保存权重&#xf…...

MySQL复杂查询优化实战:从多表关联到子查询的性能突破

文章目录 一、复杂查询性能瓶颈分析与优化框架二、多表关联查询的优化策略与实战1. JOIN顺序优化&#xff1a;基于成本估算的表关联策略2. 复合索引与JOIN条件优化3. 大表JOIN的分片处理 三、子查询优化&#xff1a;从嵌套到JOIN的转换艺术1. 标量子查询转换为JOIN2. EXISTS子查…...

LeetCode 680.验证回文串 II

目录 题目&#xff1a; 题目描述&#xff1a; 题目链接&#xff1a; 思路&#xff1a; 核心思路&#xff1a; 思路详解&#xff1a; 代码&#xff1a; C代码&#xff1a; Java代码&#xff1a; 题目&#xff1a; 题目描述&#xff1a; 题目链接&#xff1a; 680. 验证…...

window显示驱动开发—输出合并器阶段

逻辑管道中的最后一步是通过模具或深度确定可见性&#xff0c;以及写入或混合输出以呈现目标&#xff0c;这可以是多种资源类型之一。 这些操作以及输出资源 (呈现目标) 绑定在输出合并阶段定义。 1. 核心功能与管线定位 输出合并是渲染管线的最终固定功能阶段&#xff0c;负…...

单片机开发日志cv MDK-ARM工具链迁移到MAKE

核心经验&#xff1a; STM32H7 多 RAM 区域&#xff0c;外设相关数据段必须放在 AXI SRAM&#xff08;RAM&#xff09;区&#xff0c;不能放在 DTCMRAM&#xff0c;否则外设无法访问&#xff0c;程序表面正常但外设全失效。迁移工程时&#xff0c;务必检查链接脚本的内存分布&a…...

大模型与搜索引擎的技术博弈及未来智能范式演进

基于认知革命与技术替代的全景综述 一、大模型对搜索引擎的替代性分析&#xff1a;技术范式与市场重构 &#xff08;1&#xff09;技术原理的代际分野 传统搜索引擎遵循 "爬虫抓取 - 索引构建 - 关键词排序" 的三段式架构&#xff0c;其核心是基于 PageRank 算法的…...

Ajax-入门

Ajax: 全称Asynchronous JavaScript And XML&#xff0c;异步的JavaScript和XML。其作用有如下2点&#xff1a; 与服务器进行数据交换&#xff1a;通过Ajax可以给服务器发送请求&#xff0c;并获取服务器响应的数据。 异步交互&#xff1a;可以在不重新加载整个页面的情况下&a…...

FPGA基础 -- Verilog 共享任务(task)和函数(function)

Verilog 中共享任务&#xff08;task&#xff09;和函数&#xff08;function&#xff09; 的详细专业培训&#xff0c;适合具有一定 RTL 编程经验的工程师深入掌握。 一、任务&#xff08;task&#xff09;与函数&#xff08;function&#xff09;的基本区别 特性taskfunctio…...

c++set和pair的使用

set是C中的一种关联容器&#xff0c;具有以下特点&#xff1a; 存储唯一元素&#xff08;不允许重复&#xff09; 元素自动排序&#xff08;默认升序&#xff09; 基于红黑树实现&#xff08;平衡二叉搜索树&#xff09; 插入、删除和查找的时间复杂度为O(log n) 前言 在C…...

数据库中间件ShardingSphere5

一、高性能架构模式 数据库集群&#xff0c;第一种方式“读写分离”&#xff0c;第二种方式“数据库分片”。 1.1 读写分离架构 读写分离原理&#xff1a;将数据库读写操作分散到不同的节点上。 读写分离的基本实现&#xff1a; 主库负责处理事务性的增删改操作&#xff0c…...

window显示驱动开发—使用状态刷新回调函数

用户模式显示驱动程序可以使用 Direct3D 运行时版本 10 State-Refresh回调函数 来实现无状态驱动程序或构建命令缓冲区前导数据。 Direct3D 运行时在调用 CreateDevice (D3D10 ) 函数时&#xff0c;向D3D10DDIARG_CREATEDEVICE结构的 pUMCallbacks 成员指向的D3D10DDI_CORELAY…...

windows11右击恢复为windows10

文章目录 前言一、问题描述二、解决方案 前言 为了解决win11的右击更多选项的问题 一、问题描述 win11的右键更多选项过于繁琐 二、解决方案 在windows11的终端管理员中输入如下代码&#xff1a; reg add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c…...

基于物联网的智能衣柜系统设计

标题:基于物联网的智能衣柜系统设计 内容:1.摘要 随着物联网技术的飞速发展&#xff0c;智能家居领域迎来了新的变革机遇。本研究的目的在于设计一种基于物联网的智能衣柜系统&#xff0c;以提升用户的衣物管理和使用体验。方法上&#xff0c;通过搭建物联网硬件平台&#xff…...

GM DC Monitor v2.0 卸载教程

以下俩种方法任选一种均可 第一种方法&#xff1a;一键自动卸载 进入到软件安装目录 卸载app 进入到app目录&#xff0c;运行一键卸载脚本&#xff1a;sh uninstall.sh 卸载es 进入到es目录&#xff0c;运行一键卸载脚本&#xff1a;sh uninstall.sh 卸载db 进入到db目录&a…...

C#上位机实现报警语音播报

我们在开发C#上位机时&#xff0c;有时候会需要将报警信息通过语音进行播报&#xff0c;今天跟大家分享一下具体的实现过程。 一、组件安装 首先我们创建好一个Windows窗体项目&#xff0c;然后添加System.Speech库引用。 点击引用&#xff0c;右击添加引用&#xff0c;在程…...

python自助棋牌室管理系统

目录 技术栈介绍具体实现截图系统设计研究方法&#xff1a;设计步骤设计流程核心代码部分展示研究方法详细视频演示试验方案论文大纲源码获取/详细视频演示 技术栈介绍 Django-SpringBoot-php-Node.js-flask 本课题的研究方法和研究步骤基本合理&#xff0c;难度适中&#xf…...

榕壹云婚恋相亲系统:ThinkPHP+UniApp打造高效婚配平台

引言 在数字化浪潮下,婚恋相亲行业正加速向线上迁移。榕壹云公司基于市场需求与技术积累,开发一款功能完备、技术开源的婚恋相亲小程序系统,为单身人士提供高效、安全的婚恋平台。本文将围绕系统背景、客户定位、核心技术、功能模块及优势场景展开详细解析,助力开发者与技…...

每日leetcode

2890. 重塑数据&#xff1a;融合 - 力扣&#xff08;LeetCode&#xff09; 题目 DataFrame report --------------------- | Column Name | Type | --------------------- | product | object | | quarter_1 | int | | quarter_2 | int | | quarter_3 | i…...

深入理解XGBoost(何龙 著)学习笔记(五)

深入理解XGBoost&#xff08;何龙 著&#xff09;学习笔记&#xff08;五&#xff09; 本文接上一篇&#xff0c;内容为线性回归&#xff0c;介绍三部分&#xff0c;首先介绍了"模型评估”&#xff0c;然后分别提供了线性回归的模型代码&#xff1a;scikit-learn的Linear…...