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

手机网页开发模板佛山做seo推广公司

手机网页开发模板,佛山做seo推广公司,网站建设忄金手指花总,广州网站建设公司有哪些1.概述 Apollo4BlueLite 的中断控制器是采用 ARM Cortex-M4 内核,并集成了 NVIC(Nested Vectored Interrupt Controller,嵌套向量中断控制器)作为其中断控制器。 NVIC 是 ARM Cortex-M 系列处理器中常用的中断控制器&#xff0c…

1.概述

Apollo4BlueLite 的中断控制器是采用 ARM Cortex-M4 内核,并集成了 NVIC(Nested Vectored Interrupt Controller,嵌套向量中断控制器)作为其中断控制器。

NVIC 是 ARM Cortex-M 系列处理器中常用的中断控制器,它具有以下基本特征和功能:

(1)中断优先级和优先级分组:NVIC 支持配置和管理中断的优先级,可以根据需求将不同的中断分配到不同的优先级组中。这样可以确保高优先级的中断得到更及时的响应。

(2)中断向量表:NVIC 使用中断向量表来管理中断。每个中断对应一个唯一的中断向量,在中断触发时,NVIC 会根据中断向量找到相应的中断服务程序(Interrupt Service Routine,ISR)来进行中断处理。

(3)中断使能和禁用:NVIC 提供了使能和禁用中断的功能,允许根据需要控制特定中断的触发和处理。

(4)中断嵌套和自动优先级切换:NVIC 支持中断的嵌套和自动优先级切换,可以在处理当前中断时响应更高优先级的中断请求,从而提高系统的灵活性和响应性。

(5)快速和低延迟的中断触发:NVIC 能够快速检测和触发中断,减少中断处理的延迟,提高系统的实时性和响应能力。

2. Apollo4BlueLite NVIC和cortex-M4 NVIC

NVIC 是嵌套向量中断控制器,控制着整个Apollo4BlueLite芯片中断相关的功能,它跟Cortex-M4内核紧密联系,是内核里面的一个外设。但是各个芯片厂商在设计芯片的时候会对Cortex-M4内核里面的 NVIC 进行裁剪,把不需要的部分去掉,所以说 Apollo4BlueLite 的 NVIC 是 Cortex-M 4 的 NVIC 的一个子集。

3.NVIC寄存器

(1)在配置中断的时候我们一般只用 ISER、ICER 和 IP 这三个寄存器,ISER 用来使能中断,ICER 用来清除中断,IP 用来设置中断优先级。

(2)寄存器表

  • ISER寄存器(Interrupt Set-enable Registers)

根据官方文档介绍:The NVIC_ISER0-NVIC_ISER7 registers enable interrupts, and show which interrupts are enabled.

可以看到ISER寄存器一共有8组,共计256bit,该寄存器可读可写,那么当需要使能对应中断时,需要配置对应bit位为1,也可以通过读寄存器来确认对应中断状态为使能或使能。

  • ICER寄存器(Interrupt Clear-enable Registers)

根据官方文档介绍:The NVIC_ICER0-NVIC_ICER7 registers disable interrupts, and show which interrupts are enabled.

注意直接写ISER寄存器为0不会禁止对应中断,必须通过ICER寄存器来实现禁止中断的功能。ICER实现的和ISER相反的功能。

  • ISPR寄存器(Interrupt Set-pending Registers)

根据官方文档介绍:The NVIC_ISPR0-NVIC_ISPR7 registers force interrupts into the pending state, and show which interrupts are pending.

这个寄存器用来挂起中断,对应bit设置为1时中断控制器会将正在进行的中断挂起,写0无效。

当高优先级的中断正在执行时,低优先级的中断发生了,这时CPU会将低优先级的中断临时挂起,等待高优先级的中断完成后,再去处理低优先级的中断。

  • ICPR寄存器(Interrupt Clear-pending Registers)

根据官方文档介绍:The NVIC_ICPR0-NCVIC_ICPR7 registers remove the pending state from interrupts, and show which interrupts are pending.

其作用与ISPR相反,对应位也和ISER是一样的。通过设置1,可以将挂起的中断解挂。

  • IABR寄存器(Interrupt Active Bit Registers)

根据官方文档介绍:The NVIC_IABR0-NVIC_IABR7 registers indicate which interrupts are active.

A bit reads as one if the status of the corresponding interrupt is active or active and pending.

该寄存器只读,如果为1,则表示该位所对应的中断正在被执行或者执行期间被挂起。在中断执行完了由硬件自动清零。

  • IPR寄存器(Interrupt Priority Registers)

根据官方文档介绍:The NVIC_IPR0-NVIC_IPR59 registers provide an 8-bit priority field for each interrupt and each register holds four priority fields. These registers are byte-accessible.

中断优先级寄存器,该寄存器只能以字节访问。每个中断占用8位,所以每个寄存器可以表示4个中断优先级,如下图所示

这里一共可以表示60*4=240个中断的中断优先级,每个中断优先级占用1个字节。

ARM的中断优先级分两种,抢占优先级和响应优先级。

具有高抢占式优先级的中断可以在具有低抢占式优先级的中断处理过程中被响应,即中断嵌套,或者说高抢占式优先级的中断可以嵌套低抢占式优先级的中断。

当两个中断源的抢占式优先级相同时,这两个中断将没有嵌套关系,当一个中断到来后,如果正在处理另一个中断,这个后到来的中断就要等到前一个中断处理完之后才能被处理。如果这两个中断同时到达,则中断控制器根据他们的响应优先级高低来决定先处理哪一个;如果他们的抢占式优先级和响应优先级都相等,则根据他们在中断表中的排位顺序决定先处理哪一个(中断号小的先执行)。

(3)中断号

从Apollo4BlueLite的SDK中可以看到实际上只用了84个中断

4.NVIC 中断配置固件库

(1)固件库头文件 core_cm4.h 中,提供了 NVIC 的一些函数,这些函数遵循 CMSIS 规则,只要是 Cortex-M4 的处理器都可以使用,具体如下:

NVIC库函数

描述

void NVIC_EnableIRQ(IRQn_Type IRQn)

使能中断

void NVIC_DisableIRQ(IRQn_Type IRQn)

失能中断

void NVIC_SetPendingIRQ(IRQn_Type IRQn)

设置中断悬起位

void NVIC_ClearPendingIRQ(IRQn_Type IRQn)

清除中断悬起位

uint32_t NVIC_GetPendingIRQ(IRQn_Type IRQn)

获取悬起中断编号

void NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority)

设置中断优先级

uint32_t NVIC_GetPriority(IRQn_Type IRQn)

获取中断优先级

void NVIC_SystemReset(void)

系统复位

http://www.tj-hxxt.cn/news/15212.html

相关文章:

  • 企业网站建设方案书目录免费网站的平台
  • 在线做图表的网站爱站网关键词长尾挖掘工具
  • 秦皇岛做网站的公司站长工具seo综合查询推广
  • 自己怎么用h5做网站环球网广东疫情最新消息
  • 做博客网站赚钱吗手机百度app下载安装
  • 做网站可以参考的网站宁波网站推广平台效果好
  • 安装wordpress插件关键词优化推广排名多少钱
  • 辽宁沈阳疫情最新消息邯郸seo
  • 网站建设需要实现哪些目标沈阳seo按天计费
  • 宿州企业网站推广windows优化工具
  • 怎么在工商局网站做股东变更长沙有实力的关键词优化价格
  • 网上做问卷调查赚钱哪些网站好西安关键词排名软件
  • 做网站准备什么问题免费发广告的软件
  • 电子商务网站建设报告国际新闻
  • 丰台企业网站建设脚本外链平台
  • 风景网页制作模板淘宝怎么优化关键词步骤
  • 青白江建设局网站鹤壁网络推广哪家好
  • 专业做网站公司 前景长沙百度提升排名
  • 济南专业做公司网站的机构网站百度百科
  • 家居网站建设公司排名网站建设的意义和作用
  • 重庆网站公司设计aso优化方案
  • 网站建设过程中的需求分析湖南做网站的公司
  • 网站建设合同验收百度经验实用生活指南
  • 大型企业网站建设日本今日新闻头条
  • 不是用于制作网页的软件网站关键词排名seo
  • 微信微网站模板下载百度后台推广登录
  • 自己做网站seo优化谷歌seo 优化
  • 优惠券网站怎么搭建便宜的seo网络营销推广
  • 网站建设比较合理的流程站外推广方式
  • 国外网站流量查询排名优化公司哪家好