社区导航

 

搜索
查看: 930|回复: 3

[经验分享] 第六篇 GD32VF103C START EXTI中断

[复制链接]

7085

TA的帖子

193

TA的资源

五彩晶圆(高级)

Rank: 9Rank: 9Rank: 9

测评达人

发表于 2019-12-28 16:13 | 显示全部楼层 |阅读模式
本帖最后由 常见泽1 于 2019-12-28 16:20 编辑

 

RISC-V: EXTI(中断/事件控制器)包括19个相互独立的边沿检测电路并且能够向处理器内核产生中断请求或唤醒事件。 EXTI有三种触发类型:上升沿触发、下降沿触发和任意沿触发。 EXTI中的每一个边沿检测电路都可以独立配置和屏蔽

 

STM32:EXTIExternal interrupt/event controller)—外部中断/事件控制器,管理了控制器的 20个中断/事件线。每个中断/事件线都对应有一个边沿检测器,可以实现输入信号的上升沿检测和下降沿的检测。EXTI 可以实现对每个中断/事件线进行单独配置,可以单独配置为中断或者事件,以及触发事件的属性。

 

看一下RISC-V EXTI框图

 

image-20191228161557-1.png

 

 

Cortex EXTI

 

image-20191228161557-2.png

 

 

 

 

上图就可以看出不一样了,STM32是通过NVIC有个,而RISC采用了ECLIC

 

RISC-V集成了改进型内核中断控制器(ECLIC)来实现高效的异常和中断处理。 ECLIC旨在为RISC-V系统提供低延迟、矢量化、 抢占式的中断。 ECLIC被激活后, 它将包含并替换现有的RISC-V处理器局部中断控制器。 CLIC设计有一个基本设计,需要最少的硬件,但它支持额外的扩展来提供硬件加速。 ECLIC设计的目标是为各种软件ABI和中断模型提供支持, 而不需要复杂的硬件影响高性能处理器的实现。它与处理器核心紧密耦合。

 

RSIC-V

image-20191228161557-3.png

 

Cortex图

image-20191228161557-4.png

 

 

Cortex配置的步骤

通过下面的过程来配置20个线路做为中断源:

配置20个中断线的屏蔽位(EXTI_IMR)

配置所选中断线的触发选择位(EXTI_RTSREXTI_FTSR)

配置对应到外部中断控制器(EXTI)NVIC中断通道的使能和屏蔽位,使得20个中断线中的请求可以被正确地响应

 

 

RISC-V 中断配置

image-20191228161557-5.png

 

 

Cortex 中断配置

 

image-20191228161557-6.png

 

下面就和RISC不一样了,RISC中断等级等等都在ECLIC,而CORTEX还得配置下NVIC

 

image-20191228161557-7.png

 

中断函数

 

RISC-V

image-20191228161557-8.png

 

Cortex-M3

image-20191228161557-9.png

 

这个没啥说的 基本都一样句柄

此帖出自GD32 MCU论坛

回复

使用道具 举报

15

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-12-30 13:51 | 显示全部楼层

厉害厉害,非常感谢楼主分享,学习了,辛苦楼主了~

https://www.sramsun.com

回复

使用道具 举报

1

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2020-6-27 20:46 | 显示全部楼层

感谢楼主的分享


回复

使用道具 举报

136

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2020-7-7 20:28 | 显示全部楼层

谢谢楼主的评测


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

关闭

站长推荐上一条 1/8 下一条

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

词云| Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2020-7-10 20:08 , Processed in 0.168198 second(s), 25 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表