MSPM0G3507——GPIO例程讲解1——input_capture

函数: 

 参数:

返回值: 

主函数代码:


#include "ti_msp_dl_config.h"extern volatile uint32_t interruptVectors[];int main(void)
{SYSCFG_DL_init();                               //把所有的LED灯和按键初始化了一遍/** Turn OFF LED if SW is open, ON if SW is closed.* LED starts OFF by default.*/NVIC_EnableIRQ(GPIO_SWITCHES_INT_IRQN);                  //先允许外部中断while (1) {__WFI();                                            }
}void GROUP1_IRQHandler(void)                            
{switch (DL_Interrupt_getPendingGroup(DL_INTERRUPT_GROUP_1))             //判断是GROUP1中哪个中断挂起{case GPIO_SWITCHES_INT_IIDX:                                        //是按键的中断/* If SW is high, turn the LED off */if (DL_GPIO_readPins(GPIO_SWITCHES_PORT, GPIO_SWITCHES_USER_SWITCH_1_PIN)) {DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN);}/* Otherwise, turn the LED on */else{DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN);}break;}
}

 宏定义代码:


#ifndef ti_msp_dl_config_h
#define ti_msp_dl_config_h#define CONFIG_MSPM0G350X#if defined(__ti_version__) || defined(__TI_COMPILER_VERSION__)
#define SYSCONFIG_WEAK __attribute__((weak))
#elif defined(__IAR_SYSTEMS_ICC__)
#define SYSCONFIG_WEAK __weak
#elif defined(__GNUC__)
#define SYSCONFIG_WEAK __attribute__((weak))
#endif#include <ti/devices/msp/msp.h>
#include <ti/driverlib/driverlib.h>
#include <ti/driverlib/m0p/dl_core.h>#ifdef __cplusplus
extern "C" {
#endif/**  ======== SYSCFG_DL_init ========*  Perform all required MSP DL initialization**  This function should be called once at a point before any use of*  MSP DL.*//* clang-format off */#define POWER_STARTUP_DELAY                                                (16)#define CPUCLK_FREQ                                                     32000000/* Port definition for Pin Group GPIO_LEDS */
#define GPIO_LEDS_PORT                                                   (GPIOA)/* Defines for USER_LED_1: GPIOA.0 with pinCMx 1 on package pin 33 */
#define GPIO_LEDS_USER_LED_1_PIN                                 (DL_GPIO_PIN_0)
#define GPIO_LEDS_USER_LED_1_IOMUX                                (IOMUX_PINCM1)
/* Port definition for Pin Group GPIO_SWITCHES */
#define GPIO_SWITCHES_PORT                                               (GPIOB)/* Defines for USER_SWITCH_1: GPIOB.21 with pinCMx 49 on package pin 20 */
// pins affected by this interrupt request:["USER_SWITCH_1"]
#define GPIO_SWITCHES_INT_IRQN                                  (GPIOB_INT_IRQn)
#define GPIO_SWITCHES_INT_IIDX                  (DL_INTERRUPT_GROUP1_IIDX_GPIOB)
#define GPIO_SWITCHES_USER_SWITCH_1_IIDX                    (DL_GPIO_IIDX_DIO21)
#define GPIO_SWITCHES_USER_SWITCH_1_PIN                         (DL_GPIO_PIN_21)
#define GPIO_SWITCHES_USER_SWITCH_1_IOMUX                        (IOMUX_PINCM49)/* clang-format on */void SYSCFG_DL_init(void);
void SYSCFG_DL_initPower(void);
void SYSCFG_DL_GPIO_init(void);
void SYSCFG_DL_SYSCTL_init(void);#ifdef __cplusplus
}
#endif#endif /* ti_msp_dl_config_h */

主函数中有这个函数:

DL_Interrupt_getPendingGroup(DL_INTERRUPT_GROUP_1);

这是用来判断是那个中断挂起的,具体的介绍,参数,返回值在开头三个图片中。

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

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

相关文章

设计模式——设计模式介绍

设计模式 设计模式介绍 设计模式&#xff1a; 系统服务设计中针对场景的一种解决方案&#xff0c;可以解决功能逻辑开发中的共性问题&#xff0c;并非所有问题一种开发思想&#xff0c;每个设计模式都有解决某一类问题的概念模型&#xff0c;不要拘束于一种的固定的代码格式…

LangChain:如何高效管理 LLM 聊天历史记录?

LangChain 团队发布了一篇关于使用 Dragonfly DB 来有效管理 LangChain 应用程序聊天历史记录的教程。 该教程旨在解决用户在使用 LangChain 应用程序时普遍遇到的一个问题&#xff1a;如何高效地管理聊天历史记录。 LangChain 团队在推文中强调了 Dragonfly DB 在管理聊天历…

Spring (59)如何在Spring中实现异步处理

在Spring中实现异步处理通常涉及到Async注解。这个注解允许你以异步的方式执行方法&#xff0c;即方法的调用将立即返回&#xff0c;而实际的执行将在不同的线程上异步进行。 使用Async的步骤&#xff1a; 启用异步支持&#xff1a;在配置类上使用EnableAsync注解&#xff0c…

【vue3|第12期】Vue3的Props详解:组件通信

日期&#xff1a;2024年6月19日 作者&#xff1a;Commas 签名&#xff1a;(ง •_•)ง 积跬步以致千里,积小流以成江海…… 注释&#xff1a;如果您觉得有所帮助&#xff0c;帮忙点个赞&#xff0c;也可以关注我&#xff0c;我们一起成长&#xff1b;如果有不对的地方&#xf…

【Redis】黑马点评短信登录

https://blog.csdn.net/qq_33888850/article/details/129770077 https://blog.csdn.net/weixin_51515308/article/details/128010464 https://www.bilibili.com/video/BV1cr4y1671t?p24 导入数据库 https://github.com/MagicToDo/hm-dianping sql文件在 hm-dianping-init\src…

【线性代数】【一】1.6 矩阵的可逆性与线性方程组的解

文章目录 前言一、求解逆矩阵二、线性方程组的解的存在性总结 前言 前文我们引入了逆矩阵的概念&#xff0c;紧接着我们就需要讨论一个矩阵逆的存在性以及如何求解这个逆矩阵。最后再回归上最初的线性方程组的解&#xff0c;分析其中的联系。 一、求解逆矩阵 我们先回想一下在…

计算机网络:运输层 - TCP首部格式 连接的创建与释放

计算机网络&#xff1a;运输层 - TCP首部格式 & 连接的创建与释放 TCP首部格式源端口 目的端口序号确认号数据偏移保留控制位窗口检验和紧急指针 TCP连接创建 - 三次握手TCP传输过程TCP连接释放 - 四次挥手 TCP首部格式 TCP的首部如下&#xff1a; 首部的前20 byte是固定的…

如何验证证书的合法性

在当今的互联网世界中&#xff0c;证书验证是确保信息安全的关键环节。证书&#xff0c;特别是数字证书&#xff0c;用于确认实体的身份以及信息的完整性和真实性。然而&#xff0c;验证证书的合法性并非一蹴而就&#xff0c;它涉及多个技术难点、面试官的关注点、回答吸引力以…

【物联网】室内定位技术及定位方式简介

目录 一、概述 二、常用的室内定位技术 2.1 WIFI技术 2.2 UWB超宽带 2.3 蓝牙BLE 2.4 ZigBee技术 2.5 RFID技术 三、常用的室内定位方式 3.1 信号到达时间 3.2 信号到达时间差 3.3 信号到达角 3.4 接收信号强度 一、概述 GPS是目前应用最广泛的定位技术&#xff0…

一种基于稀疏学习的旋转机械故障诊断方法(MATLAB)

稀疏表示方法是一种利用最少原子在过完备字典上表示或逼近信号的方法&#xff0c;该方法具有信号表示的高分辨率、稀疏性、强抗干扰能力和自适应性等优点。稀疏表示聚焦于设计合适的稀疏表示字典和挖掘有用的稀疏先验信息&#xff0c;其核心思想是将故障特征信息近似表示为字典…

深入理解C++红黑树

目录 一、引言 二、红黑树的基本概念 三、红黑树的性质 四、红黑树的实现 结构 插入 五、红黑树的应用 一、引言 红黑树&#xff08;Red-Black Tree&#xff09;是一种自平衡的二叉搜索树&#xff0c;它可以在插入、删除和查找操作中保持相对高效的性能。由于其独特的性…

Linux下VSCode的安装和基本使用

应用场景&#xff1a;嵌入式开发。 基本只需要良好的编辑环境&#xff0c;能支持文件搜索和跳转&#xff0c;就挺OK的。 之所以要在Linux下安装&#xff0c;是因为在WIN11上安装后&#xff0c;搜索功能基本废了&#xff0c;咋弄都弄不好&#xff0c;又不方便重装win系统&#x…

LLM功能应用的测试艺术:策略与实践

在人工智能技术日新月异的今天,大规模语言模型(LLMs)凭借其强大的自然语言处理能力,正逐渐成为众多应用和服务的核心驱动力。从智能客服到创作辅助,从信息检索到个性化推荐,LLMs的广泛应用对测试策略提出了全新的挑战。本文旨在探讨针对拥有LLM功能的应用或软件,如何制定…

韩顺平0基础学java——第29天

p592-599 线程 用户线程和守护线程 1.用户线程:也叫工作线程&#xff0c;当线程的任务执行完或通知方式结束 2守护线程:一般是为工作线程服务的&#xff0c;当所有的用户线选束&#xff0c;守护线程自动结束 3.常见的守护线程:垃圾回收机制 当我们希望当main线程结束后&…

Scala中的map函数

Scala中的map函数 在 Scala 中&#xff0c;map 是一种常见的高阶函数&#xff0c;用于对集合中的每个元素应用一个函数&#xff0c;并返回应用了该函数后的新集合&#xff0c;保持原始集合的结构不变。它的主要作用有以下几点&#xff1a; 1. 遍历集合&#xff1a; map 可以遍历…

2.APP测试-安卓adb抓取日志

1.打开手机的开发者模式&#xff0c;打开USB调试 &#xff08;1&#xff09;小米手机打开开发者模式&#xff1a; 【设置】-【我的设备】-【全部参数信息】-快速多次点击【OS版本】-进入开发者模式 &#xff08;2&#xff09;连接手机和电脑&#xff0c;手机打开USB调试 【设置…

05 - matlab m_map地学绘图工具基础函数 - 设置比例尺指北针

05 - matlab m_map地学绘图工具基础函数 - 设置比例尺指北针 0. 引言1. 关于m_scale2. 关于m_ruler3. 关于m_northarrow4. 结语 0. 引言 本篇介绍下m_map中添加指北针(m_northarrow)、比例尺(m_ruler)和进行比例缩放(m_scale)的函数及其用法 。 1. 关于m_scale m_scale用于图件…

响应式高端网站模板源码图库素材 资源下载平台源码

源码介绍 亲测可用&#xff0c;可用于做娱乐网资源网&#xff0c;功能非常的齐全无任何加密也无任何后门&#xff01;响应式高端网站模板源码图库素材 资源下载平台源码&#xff08;可运营&#xff09; 页面很美观&#xff0c;堪比大型网站的美工&#xff0c;而且页面做的也很…

扫码称重上位机

目录 一 设计原型 二 后台代码 一 设计原型 模拟工具: 二 后台代码 主程序&#xff1a; using System.IO.Ports; using System.Net; using System.Net.Sockets; using System.Text;namespace 扫码称重上位机 {public partial class Form1 : Form{public Form1(){Initialize…

红米手机RedNot11无法使用谷歌框架,打开游戏闪退的问题,红米手机如何开启谷歌框架

红米手机RedNot11无法使用谷歌框架&#xff0c;打开游戏闪退的问题&#xff0c; 1.问题描述2.问题原因3.解决方案3.1配置谷歌框架&#xff1a;3.1软件优化 4.附图 1.问题描述 红米手机打开安卓APP没有广告&#xff0c;直接闪退&#xff0c;无法使用谷歌框架 异常关键词中包含&…