zynq中断入门
来源:互联网 发布:质量控制系统 php 编辑:程序博客网 时间:2024/04/29 12:33
URL: http://blog.csdn.net/xzyiverson/article/details/20360161
Zynq的PS是基于ARM架构,使用两个ARM Cortex A9处理器和GIC pl390中断控制器。
系统中断框图如下:
Interrupt Controller(中断控制器)框图如下:
中断详细分为SGI(Software Generated Interrupts)软件中断,PPI(Private Peripheral Interrupts)私有外设中断,SPI(Shared Peripheral Interrupts)共享外设中断。
1. SGI软件中断
存在16个软件产生的中断,通过向ICDSGIR寄存器写入SGI中断号,以及指定目标CPU,来产生一个软件中断,通过读ICCIAR寄存器或者向ICDICPR寄存器相应的比特位写1,可以清楚中断。所有的SGI为边沿触发。
2. PPI私有外设中断
每个CPU连接一个私有的共享5个外设中断,素有中断的敏感类型是固定的,不能改变,UPI全局定时器,nFIQ,CPU私有定时器,AWDT,nIRQ。
3. SPI共享外设中断。
由PS和PL上的各种I/O控制器和存储器控制器产生,这些中断信号会被路由到CPU。PS的外设产生的SPI中断也会路由到PL上。默认地,所有共享外设中断类型在复位时是高电平,然后软件使用的ICDICFR2和ICDICFR5寄存器编程中断32,33和92为上升沿敏感。
寄存器表
主要用到的中断函数有:
XScuGic_LookupConfig 中断设置查找
XScuGic_CfgInitialize GIC初始化
XScuGic_SetPriorityTriggerType 设置中断优先级及中断触发方式
XScuGic_Connect 设置中断服务程序入口地址
XScuGic_Enable GIC允许
XGpio_InterruptGlobalEnable GPIO全局中断允许
XGpio_InterruptEnable 相应GPIO中断允许
Xil_ExceptionInit 异常处理函数
Xil_ExceptionRegisterHandler
Xil_ExceptionEnable
实验部分在下一篇博客中叙述。
- zynq中断入门
- zynq中断入门
- Linux Zynq GPIO中断
- ZYNQ TIMER定时器中断
- zynq -使用中断
- ZYNQ中断配置函数
- ZYNQ PL中断PS
- ZYNQ 中断详解
- zynq -中断头文件简介
- zynq SGI-核间中断
- zynq IRQ_P2F ----ps中断pl
- UG585 Zynq器件 中断Part
- ZYNQ-7000开发中断:私有定时器中断
- ZYNQ入门闪灯
- -如何在 Zynq SoC 上使用中断
- zynq中一个中断程序分析
- Zynq 自定义模块中断触发实例
- Zynq 自定义模块中断触发实例
- md5在线免费解密
- 小银行系统
- Eclipse快捷键大全(转载)
- 获取本地视频缩略图,既第一帧图片的方法
- INSERT FIRST && INSERT ALL(按条件进行多表插入)
- zynq中断入门
- SQL Tuning Advisor(STA) 到底做了什么?
- adb的基本操作
- restful理解
- cocos2d-x3.0 关于ScrollView的使用
- 黑马程序员之Java--枚举类型
- 关于EXPORT_SYMBOL
- Qt5官方Demo解析集1——Fortune Server/Client
- 史上最经典的Linux内核学习方法论