Zynq uart软件中断hook的操作过程

时间:2025-11-02  作者:Diven  阅读:0

早期运用的arm芯片规模较小,在芯片上直接有uart的中断服务函数地址寄存器,直接将中断服务函数的地址写入寄存器就搞定了。然后zynq似乎比较复杂,中断也比较复杂。在zynq中有个Scu(snoop control unit窥探控制单元,也是arm所有的)专门控制中断处理。Vivado SDK中提供了scugIC驱动来处理相关的操作。下面具体说一下,中断hook的过程。

Zynq uart软件中断hook的操作过程

XScuGIC_LookupConfig // 找到scugic的定义实体;

XScuGic_CfgInitialize // 初始化scugic实体;

Xil_ExceptionInit() //异常处理初始化

Xil_ExceptionRegisterHandler(XIL_EXCEPTION_ID_IRQ_INT,

(Xil_ExceptionHandler)XScuGic_InterruptHandler,

pScuGic);

这一步基本是固定的,中断触发之后统一由XScuGic_InterruptHandler先处理,然后在HandlerTable中查找相应的处理函数。这个HandlerTable数组的长度为95个,包含了所有的中断ID。

Xil_ExceptionEnable(); //异常处理使能

XScuGic_Connect( pScuGic,

XPAR_PS7_UART_1_INTR, (Xil_InterruptHandler)ZUartPs_InterruptHandler , (void*)pUart1Inst);

这才是将我们定义的中断服务函数地址映射到HandlerTable中。也可以使用UartPs驱动中包含的中断处理函数。

XScuGic_Enable( pScuGic, XPAR_PS7_UART_1_INTR);

//使能uart对应的中断ID。

XUartPs_SetInterruptMask( pUart1Inst, XUARTPS_IXR_RXOVR | XUARTPS_IXR_TXEMPTY );

这应用程序中开启接收缓冲fifo中断与发送为空中断。

这时uart接收到数据,则会自动跳入中断处理函数ZUartPs_InterruptHandler中。向发送硬fifo中写入数据,在数据发空后,也会跳入中断处理函数ZUartPs_Interrupt Handler中。两者根据不同中断状态寄存器中的标识进行相应的处理。

猜您喜欢

电子元器件中,rvt贴片电解电容是常见的。的耐压值很重要,直接影响电路的稳定性。本文将介绍rvt贴片电解电容耐压值的对应字母表。耐压值的定义耐压值是电容可以承受...
2025-03-23 15:31:39

SIP-5,全称为“SimpleImprovementProposal5”,是一个在区块链和加密货币领域备受关注的提案。它旨在通过引入新的功能和改进现有机制,提...
2025-02-24 15:57:58

光敏电阻作为重要的光电元件,应用于光线检测、自动调光、环境监测等领域。禾伸堂(HEC)作为知名的电子元器件制造商,其生产的光敏电阻因高品质和稳定性能受到业内认可...
2021-05-12 09:55:59

肖特基整流二极管因其低正向压降和快速开关特性,在现代电子电路中得到了应用。相比于传统的硅二极管,肖特基二极管的正向压降通常更低,这使得在高效能电源转换和信号整流...
2025-04-06 00:00:34

贴片电阻,作为电子电路中很重要的元件,其封装型号的理解很重要。这些看似复杂的代码,实际上遵循着一定的规律,方便工程师快速选择合适的元件。一般来说,贴片电阻的封装...
2024-11-29 10:26:21

安规电容,亦称安全电容,是特殊电容器。在电气设备中起着重要作用。此种电容的设计,主要是为了确保设备的安全性。本文将会详细介绍安规电容的作用及其重要性。保护人身安...
2025-03-23 23:00:35

保险丝作为电路保护的重要元件,其类型和品牌也日益丰富。RMZZ一次性保险丝因其优良的性能和的应用受到市场关注。本文将围绕RMZZ一次性保险丝的类型及其知名品牌进...
2022-11-10 18:05:30

LED驱动器是LED照明系统的重要组成部分,负责将交流电转换成适合LED工作的直流电,并提供稳定的电流以确保LED的正常工作和寿命。那么,LED驱动器容易坏吗?...
2024-10-01 00:00:00

白板笔补充液是高效且经济的办公工具,具有多项显著优势。能够延长白板笔的使用寿命,避免频繁更换笔芯,降低办公成本。补充液使用方便,只需简单添加,便可恢复笔的流畅书...
2020-04-27 00:00:00

第一部分 设计概述 /Design Introduction目前主流的目标检测算法都是用CNN来提取数据特征,而CNN的计算复杂度比传统算 法高出很多...
2023-01-29 12:36:00