• 【BSP视频教程】STM32H7视频教程第12期:NVIC中断管理和优先级动态分配,实战分享减小开关中断对实时性影响,提升系统响应速度(20220407)


    视频教程汇总帖:https://www.armbbs.cn/forum.php?mod=viewthread&tid=110519


    本期视频教程为大家分享BSP驱动教程第12期

    NVIC中断相关的问题,NVIC在项目设计中有着举足轻重的作用,特别是程序较复杂,且中断比较多时。

    实际应用中推荐:中断越少越好,中断频率越低越好,任务之间耦合度越低越好

    视频:

    https://www.bilibili.com/video/BV1Ki4y1D7zG


    本期视频主要分为如下几个部分:
    第1部分:图形化实时展示NVIC分组,抢占优先级和子优先级。
    (1)NVIC分组
    (2)抢占优先级和子优先级
    (3)各种优先级配置下,中断响应顺序。

    第2部分:中断延迟
    (1)含义:从中断触发到执行中断服务程序的第一条指令这段时间就是中断延迟时间。
    (2)零中断延迟:并不是说中断延迟时间是0,而是中断触发后,延迟时间接近芯片特性的延迟时间。

    第3部分:实战应用
    (1)实战应用场景一:尽量不要使用全局开关中断,使用局部中断
    (2)实战应用场景二:使用__set_PRIMASK(操作PRIMASK寄存器)做全局开关中断的地方,改用__set_BASEPRI(操作BASEPRI寄存器)
    (3)实战应用场景三:降低中断服务程序执行时间。


    第4部分:几十个中断时,中断动态优先级分配问题。

    在不同优先级分配下,总有一个功能无法正常运行,而修改后,这个问题修复了,但又出现新的问题。所以就想搞搞动态分配,发现不实用,问题更多。


    参数资料:

    1、实战技能分享,减小开关中断对系统实时性的影响,提升系统响应速度
    https://www.armbbs.cn/forum.php?mod=viewthread&tid=109927

    2、链接:https://pan.baidu.com/s/1X84n-2lbXjBgOw8I_R3Bng  提取码:i3t8

  • 相关阅读:
    swoole 入门
    Centos7安装Percona5.7
    clone github报Permission denied (publickey) 解决方案
    yii2-swiftmailer入门
    Yii 2.0 数据库操作总结
    面向对象简单示例
    面向对象与面向过程
    Tkinter之部件3种放置方式pack、grid、place
    Tkinter之variable用法
    Tkinter之Menu
  • 原文地址:https://www.cnblogs.com/armfly/p/16117423.html
Copyright © 2020-2023  润新知