中断中使用事件组

文章目录

    • 在中断里面使用事件组来改造程序
        • 配置MPU6050中断,PB5 INT![image.png](https://img-blog.csdnimg.cn/img_convert/14b1358946990cf8bd07a6e65c1fb7f0.png)
        • 配置mpu6050的中断引脚
        • 怎么使能mpu6050中断寄存的如下
    • 注意:如果使用了中断后没出现想要的效果
        • 写mpu6050的中断事件触发任务去接收I2C数据

中断是,在中断中传输完数据后的回调函数里面写入数据,就是触发中断才有后续操作;
I2C,是一直开着在等数据;MPU6050用的I2C,也就是不动这个陀螺仪,他也在工作,浪费cpu资源;

在中断里面使用事件组来改造程序

用中断设置事件组来唤醒任务读取I2C数据;
这个任务只用等中断写了事件后,它得到事件后,才会来读I2C;
而不像之前一样不断读取I2C,不管有无数据;

配置MPU6050中断,PB5 INTimage.png

image.png
触发中断产生高电平,所以配置为上升沿触发;
找中断函数GPIO_EXTI5,在异常向量表中;
image.png
image.png
找到后发现是弱函数,就是用户自己拿过来写的;
image.png
别忘了使能中断,使能中断后,会出现相关代码
image.png
image.png

配置mpu6050的中断引脚

MPU6050的运动中断应用_mpu6050中断-CSDN博客
image.png
仿照其他函数,调用函数来给寄存器里面写入数值
image.png

怎么使能mpu6050中断寄存的如下

寄存器的8为,哪个功能需要的,那一位就改为1;其他看对应功能描述来改;
image.png
image.png

注意:如果使用了中断后没出现想要的效果

从两个方面找问题:
1、NVIC中配置好的中断引脚,是否使能

2、硬件本身的代码中的EXIT是否是使能状态的,这个网上查一下使能要怎么配置它的寄存器;
GPIO外部中断如下图2、3步骤
2、EXIT配置中断方式,以及使能,3、配置优先级,以及使能

写mpu6050的中断事件触发任务去接收I2C数据

一套流程如下:
MPU6050陀螺仪,转动等动作,PB5这个中断引脚先触发中断,中断中的回调函数来设置事件,触发等待事件的任务,任务继续执行下面的函数来接收I2C的数据
无标题.png

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

移植江科大OLED显示汉字需要设置UTF-8格式

1.并且需要添加 --no-multibyte-chars //为了让软件能够识别到UTF-8的字符

zh echarts样式

记录一下: 一个图的配置 在echarts官网demo界面 option {title: {text: },legend: {data: [xxx前, xxx后]},radar: {// shape: circle,name: {// 雷达图各类别名称文本颜色textStyle: {color: #000,fontSize: 16}},indicator: [{ name: 完整性, max: 1 },{ name:…

二叉树_堆(下卷)

前言 接前面两篇的内容,接着往下讲二叉树_堆相关的内容。 正文 那么,回到冒泡排序与堆排序的比较。 我们知道冒泡排序的时间复杂度为 O ( N 2 ) O(N^2) O(N2),这个效率是不太好的。 那么,我们的堆排序的时间复杂度如何呢&…

《数据结构:链表递归实现二叉树》

文章目录 一、链式结构二叉树二、链式二叉树的遍历1、遍历方式2、前序遍历3、中序遍历4、后序遍历 三、链式二叉树结点个数和高度等1、二叉树结点的个数2、二叉树叶子结点的个数3、第K层结点的个数4、树的深度5、找值所在的结点6、二叉树销毁 四、借助队列完成二叉树的操作1、队…

react.16+

1、函数式组件 在vite脚手架中执行&#xff1a; app.jsx: import { useState } from react import reactLogo from ./assets/react.svg import viteLogo from /vite.svg import ./App.cssfunction App() {console.log(this)return <h2>我是函数式组件</h2> }exp…

leetcode-104. 二叉树的最大深度

题目描述 给定一个二叉树 root &#xff0c;返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;3示例 2&#xff1a; 输入&#xff1a;root [1,n…

全能数据分析工具:Tableau Desktop 2019 for Mac 中文激活版

Tableau Desktop 2019 一款专业的全能数据分析工具&#xff0c;可以让用户将海量数据导入并记性汇总&#xff0c;并且支持多种数据类型&#xff0c;比如像是编程常用的键值对、哈希MAP、JSON类型数据等&#xff0c;因此用户可以将很多常用数据库文件直接导入Tableau Desktop&am…

字符串的引入和注意事项

首先&#xff0c;他和整型一样————int data[ ]{1,2,3,4,5}; 和整型数组一个道理————char str[ ]{h,a,l,l,o}; 还可以直接表达成这样————char str[ ]"hallo";字符串变量&#xff0c;可以被修改 或者用另一种方式————char *p"hallo";字符…

C# 使用pythonnet 迁入 python 初始化错误解决办法

pythonnet 从 3.0 版本开始&#xff0c;必须设置Runtime.PythonDLL属性或环境变量 例如&#xff1a; string pathToVirtualEnv ".\\envs\\pythonnetTest"; Runtime.PythonDLL Path.Combine(pathToVirtualEnv, "python39.dll"); PythonEngine.PythonHom…

.Net 检验信息采集及管理系统LIS,成熟的医院实验室管理系统源码

检验管理系统LIS实现了检验信息电子化、检验信息管理自动化&#xff0c;具备与医嘱双向沟通、采用条码管理手段、财务自动计费、仪器双向控制等重要功能特点。其工作流程为通过门诊医生和住院工作站提出检验申请&#xff0c;生成相应患者的化验条码标签&#xff0c;在生成化验单…

计算机专业MEM工程管理硕士课程介绍

计算机专业MEM&#xff08;工程管理硕士&#xff09;的主要学习内容涵盖了工程技术、管理学和经济学等多个领域&#xff0c;特别是结合了计算机专业的特点&#xff0c;注重在项目管理、工程管理、信息系统管理等方面的培养。以下是对计算机专业MEM工程管理硕士主要学习课程的详…

leetcode105. 从前序与中序遍历序列构造二叉树,步骤详解附代码

leetcode105. 从前序与中序遍历序列构造二叉树 给定两个整数数组 preorder 和 inorder &#xff0c;其中 preorder 是二叉树的先序遍历&#xff0c; inorder 是同一棵树的中序遍历&#xff0c;请构造二叉树并返回其根节点。 示例 1: 输入: preorder [3,9,20,15,7], inorder…

ubuntu22.04单个网口两个IP

其中 4网段IP可用来上网&#xff0c;3 网段用来内网 界面显示: 配置文件&#xff1a; 01-network-manager-all.yaml 放在 /etc/netplan/ # Let NetworkManager manage all devices on this systemnetwork:version: 2renderer: networkdethernets:eth0:dhcp4: falsedhcp6: …

大学生暑期三下乡社会实践通讯稿怎样投稿?

在这个充满挑战与机遇的暑期,我有幸成为学院暑期三下乡社会实践活动的一员,并肩负起志愿服务团队向媒体投稿宣传报道的重任。起初,面对这项任务,我满怀激情与期待,以为只需凭借一腔热血和手中的笔,就能将实践的点点滴滴生动呈现给世人。然而,现实却给我上了一堂生动的课。 之初…

使用vscode连接开发机进行python debug

什么是debug&#xff1f; 当你刚开始学习Python编程时&#xff0c;可能会遇到代码不按预期运行的情况。这时&#xff0c;你就需要用到“debug”了。简单来说&#xff0c;“debug”就是能再程序中设置中断点并支持一行一行地运行代码&#xff0c;观测程序中变量的变化&#xff…

在线心里咨询系统的设计与实现2024(代码+论文+开题报告+ppt)

下载在最后 技术栈: vuemysqlspringboot 展示: 下载地址: https://download.csdn.net/download/hhtt19820919/89583101 备注: 运行有问题请私信我,私信按钮在文章左边)

鱼哥好书分享活动第28期:看完这篇《终端安全运营》终端安全企业基石,为你的终端安全保驾护航!

鱼哥好书分享活动第28期&#xff1a;看完这篇《终端安全运营》终端安全企业基石&#xff0c;为你的终端安全保驾护航&#xff01; 读者对象&#xff1a;主要内容&#xff1a;本书目录&#xff1a;了解更多&#xff1a;赠书抽奖规则: 在当前网络威胁日益复杂化的背景下&#xff…

nginx转发netty长链接(nginx负载tcp长链接配置)

首先要清楚一点&#xff0c;netty是长链接是tcp连接不同于http中负载在http中配置server监听。长连接需要开启nginx的stream模块(和http是并列关系) 安装nginx时注意开启stream&#xff0c;编译时加上参数 --with-stream &#xff08;其他参数根据自己所需来加&#xff09; …

基于Pytorch框架的深度学习densenet121神经网络鸟类行为识别分类系统源码

第一步&#xff1a;准备数据 5种鸟类行为数据&#xff1a;self.class_indict ["bowing_status", "grooming", "headdown", "vigilance_status", "walking"] &#xff0c;总共有23790张图片&#xff0c;每个文件夹单独放一…

Github个人网站搭建详细教程【Github+Jekyll模板】

文章目录 前言一、介绍1 Github Pages是什么2 静态网站生成工具3 Jekyll简介Jekyll 和 GitHub 的关系 4 Mac系统Jekyll的安装及使用安装Jekyll的简单使用 二、快速搭建第一个Github Pages网站三、静态网站模板——Chirpy1 个人定制 四、WordPress迁移到Github参考资料 前言 23…