zynq 的定时器中断实验

本文详细介绍了Zynq平台中定时器中断的使用,包括中断控制器GIC的工作原理,私有中断PPI的分类,以及如何通过中断实现每秒计数并显示。通过一个具体的实验过程,演示了如何配置和处理定时器中断,包括main函数、中断初始化和中断处理函数的代码分析。
摘要由CSDN通过智能技术生成

本文通过定时器中断实验,介绍zynq 的中断和定时器的基本使用方法。

本文是在helloworld 实验的基础上完成的,所以必须先完成了helloworld 的实验。这个可以学习本博客的helloworld 实验,或者开发板提供的helloworld 实验。

1:中断和定时器介绍:

中断对于保证任务的实时性非常必要, 在 ZYNQ 里集成了中断控制器 GIC(Generic Interrupt Controller)。GIC 可以接受 I/O 外设中断 IOP 和 PL 中断, 将这些中断发给CPU。

中断体系结构框图图下(ug585 page221) :

中断可以分为三类:

软件中断:SGI (Software Generated Interrupts )通过写 ICDSGIR 寄存器产生 SGI.

共享中断:SPI (Shared Peripheral Interrupts )通过 PS 和 PL 内各种 I/O 和存储器控制器产生。

私有中断:PPI Private Peripheral Interrupts )包含: 全局定时器, 私有看门狗定时器, 私有定时器以及来自 PL 的 FIQ/IRQ。

本文主要介绍 私有中断PPI, 其它的请参考官方手册 ug585_Zynq_7000_TRM.pdf。

ZYNQ 每个 CPU 链接 5 个私有外设中断, 所有中断的触发类型都是固定不变的。 并且来自 PL 的快速中断信号 FIQ 和中断信号 IRQ 反向, 然后送到中断控制器因此尽管在ICDICFR1 寄存器内反应的他们是低电平触发, 但是 PS-PL 接口中为高电平触发。 如图所示(ug585 page 222:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值