s5pv210开发与学习:1.13之按键和CPU的中断系统的学习

1.原理

2.DataSheet查阅

1向量中断控制器
1.1向量中断控制器概述

S5PV210中的中断控制器由四个向量中断控制器(VIC),ARM PrimeCell组成PL192和四个TrustZone中断控制器(TZIC)SP890。
菊花链式连接了四个TZIC和四个VIC,以支持多达93个中断源。 TZIC提供软件TrustZone设计中与安全中断系统的接口。 它提供对nFIQ中断和在系统(VIC)非安全侧屏蔽来自中断控制器的中断源。 使用后者产生nIRQ信号。
为了从非安全中断源生成nFIQ,TZIC0从非安全中断控制器获取nNSFIQIN信号。

1.1.1向量中断控制器的主要功能
•支持93个向量IRQ中断
•固定硬件中断优先级
•可编程中断优先级
•支持硬件中断优先级屏蔽
•可编程中断优先级屏蔽
•生成IRQ和FIQ
•产生软件中断
•测试寄存器
•原始中断状态
•中断请求状态
•支持特权模式以限制访问

1.2中断源
S5PV210支持中断源,如下表所示

Module VIC port no No INT Request Remark
31 127 VIC3
Multimedia,
Audio,
Security,
Etc.,
30 126
29 125
28 124
27 123
26 122
25 121
24 120
23 119
22 118
21 117
20 116
19 115
18 114
17 113
16 112
15 111
14 110
13 109
12 108
11 107
10 106 PENDN1 (TSADC)
9 105 ADC1 (TSADC)
8 104
7 103
6 102
5 101
4 100 TSI
3 99 CEC
2 98 MMC3
1 97
0 96
VIC2 31 95 SDM_FIQ (security)
Module VIC port no No INT Request Remark
30 94 SDM_IRQ (security)
29 93 PCM2
28 92 IntFeedCtrl_SSS
27 91 IntHash_SSS
26 90
25 89 KEYPAD
24 88 PENDN (TSADC)
23 87 ADC (TSADC)
22 86 SPDIF
21 85 PCM1
20 84 PCM0
19 83 AC97
18 82
17 81 I2S1
16 80 I2S0
15 79 TVENC
14 78 MFC
13 77 I2C_HDMI_DDC
12 76 HDMI
11 75 Mixer
10 74 3D
9 73 2D
8 72 JPEG
7 71 FIMC2
6 70 FIMC1
5 69 FIMC0
4 68 ROTATOR
3 67
2 66 LCD[2]
1 65 LCD[1]
Multimedia,
Audio,
Security,
Etc.,
0 64 LCD[0]
31 63 ONENAND_AUDI VIC1
ARM,
power,
memory,
30 62 MIPI_DSI
29 61 MIPI_CSI
28 60 HSMMC2
27 59 HSMMC1
Module VIC port no No INT Request Remark
26 58 HSMMC0
25 57 MODEMIF
24 56 OTG (usb)
23 55 UHOST (usb)
22 54
21 53
20 52 I2C_HDMI_PHY
19 51 I2C2
18 50 AUDIO_SS
17 49
16 48 SPI1
15 47 SPI0
14 46 I2C0
13 45 UART3
12 44 UART2
11 43 UART1
10 42 UART0
9 41 CFC
8 40 NFC
7 39
6 38 IEM_IEC
5 37 IEM_APC
4 36 CORTEX4
(nCTIIRQ)
3 35 CORTEX3
(nDMAEXTERIRQ)
2 34 CORTEX2
(nDMAIRQ)
1 33 CORTEX1 (nDMASIRQ)
Connectivity, Storage
0 32 CORTEX0 (nPMUIRQ)
31 31 FIMC3 VIC0
System,
DMA,
Timer
30 30 GPIOINT All other GPIO interrupt
mux
29 29 RTC_TIC
28 28 RTC_ALARM
27 27 WDT
Module VIC port no No INT Request Remark
26 26 System Timer
25 25 TIMER4
24 24 TIMER3
23 23 TIMER2
22 22 TIMER1
21 21 TIMER0
20 20 PDMA1
19 19 PDMA0
18 18 MDMA
17 17
16 16 EINT 16_31 EXT_INT[16] ~ [31]
15 15 EINT15 EXT_INT[15]
14 14 EINT14 EXT_INT[14]
13 13 EINT13 EXT_INT[13]
12 12 EINT12 EXT_INT[12]
11 11 EINT11 EXT_INT[11]
10 10 EINT10 EXT_INT[10]
9 9 EINT9 EXT_INT[9]
8 8 EINT8 EXT_INT[8]
7 7 EINT7 EXT_INT[7]
6 6 EINT6 EXT_INT[6]
5 5 EINT5 EXT_INT[5]
4 4 EINT4 EXT_INT[4]
3 3 EINT3 EXT_INT[3]
2 2 EINT2 EXT_INT[2]
1 1 EINT1 EXT_INT[1]
0 0 EINT0 EXT_INT[0]

1.3功能说明
当用户清除待处理的中断时,用户必须将0写入所有VICADDRESS寄存器(VIC0ADDRESS,
VIC1ADDRESS,VIC2ADDRESS和VIC3ADDRESS)

1.4寄存器描述

详见数据手册

3.代码编写

4.参考

按键笔记

5.拓展

发布了56 篇原创文章 · 获赞 12 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/I_feige/article/details/104507509
今日推荐