主要内容

本页采用了机器翻译。点击此处可查看英文原文。

C28x Hardware Interrupt

C28x 处理器上处理硬件中断的中断服务程序

  • C28x Hardware Interrupt Block

库:
C2000 Microcontroller Blockset / Scheduling

描述

基于定时器中断的执行调度模型无法满足某些实时应用对响应外部事件的要求。C28x Hardware Interrupt 模块通过允许异步处理由 C28x DSP 芯片支持库中其他模块管理的事件所触发的中断,解决了这一问题。

C28x Hardware Interrupt 模块启用外部中断选择功能时,该选择将激活所选通用 I/O 引脚的中断功能。要配置这些引脚,请参阅配置参数 > 硬件实现 > Hardware board settings > Target hardware resources > External Interrupt窗格。有关更多信息,请参阅Model Configuration Parameters for Texas Instruments C2000 Processors

任务优先级表示与异步中断相关联的任务的相对重要性。该字段中的最低值代表最高优先级。基础速率任务的默认优先级值为 40,因此每个异步触发任务的优先级值必须小于 40(以配置为更高优先级),这些任务才能抢占基础速率任务。

抢占标志位决定了给定中断是否可被抢占。抢占机制优先于优先级机制。若中断触发了更高优先级的任务,而较低优先级的任务正在运行,则较低优先级任务的执行可被暂停,并在较高优先级任务完成后恢复。前提是该较低优先级任务已被配置为可抢占。

向量化输出

该模块的输出是一个函数调用。函数调用行的长度等于该模块设置为处理的中断数量.每个中断由模块对话框中显示的四个参数表示。这些参数是一组四个等长向量。每个中断由每个参数中的一个元素表示(共四个元素),这些向量中相同位置的元素各取一个。

每个中断由以下内容描述:

  • CPU 中断编号

  • 外围中断扩展 (PIE) 中断编号

  • 任务优先级

  • 抢占标志

示例

端口

输入

全部展开

中断模块在您启用 SimIRQ 输入端口时,会在仿真中发起函数调用。然而,在生成的代码中,SimIRQ 被忽略了。

依赖关系

要启用 SimIRQ 端口,请选择启用仿真端口参数。

数据类型: Boolean

输出

全部展开

该模块的输出是一个函数调用。函数调用行的长度等于该模块设置为处理的中断数量.

参数

全部展开

输入一个包含 CPU 中断编号的向量,用于处理您希望异步处理的中断。

输入一个包含 PIE 中断编号的向量,用于处理您希望异步处理的中断。

输入一个任务优先级向量,用于指定要异步处理的中断。

任务优先级表示与异步中断相关联的任务的相对重要性。该字段中的最低值代表最高优先级。基础速率任务的默认优先级值为 40,因此每个异步触发任务的优先级值必须小于 40(以配置为更高优先级),这些任务才能抢占基础速率任务。

输入一个向量,其中包含用于异步处理中断的抢占标志。

抢占标志位决定了给定中断是否可被抢占。抢占机制优先于优先级机制。若中断触发了更高优先级的任务,而较低优先级的任务正在运行,则较低优先级任务的执行可被暂停,并在较高优先级任务完成后恢复。前提是该较低优先级任务已被配置为可抢占。

选择此参数可添加兼容的仿真输入端口。

选择此参数可使您在 Simulink® 软件模型的上下文中测试异步中断处理。

PIE 和 CPU 中断编号

每个中断由 CPU 中断号、PIE 中断号、任务优先级和抢占标志描述。

CPU 和 PIE 中断编号共同唯一地指定了单个外设或外设模块的单个中断。

支持 12×8 中断的 c28x 处理器 F280013x 和 F280015x 的 PIE 和 CPU 中断编号如下:

F280013x 和 F280015x 处理器的 PIE 和 CPU 中断编号

PIE ⇒12345678
CPU ⇓
1ADCA1ADCC1-XINT1XINT2SYS_ERRTIMER0WAKE
2EPWM1_TZ EPWM2_TZEPWM3_TZEPWM4_TZEPWM5_TZEPWM6_ TZEPWM7_TZ 
3EPWM1EPWM2EPWM3EPWM4EPWM5EPWM6EPWM7 
4ECAP1ECAP2----- 
5EQEP1------ 
6SPIA_RXSPIA_TX----DCC0 
7--------
8I2CAI2CA_FIFOI2CBI2CB_FIFOSCIC_RXSCIC_TX--
9SCIA_RXSCIA_TXSCIB_RXSCIB_TXCANA_0CANA_1--
10ADCA_EVTADCA2ADCA3ADCA4ADCC_EVTADCC2ADCC3ADCC4
11--------
12XINT3XINT4XINT5-FLSS_INT---

支持 12×16 中断的 TI 处理器 F28P65x 的 PIE 和 CPU 中断编号如下:

F28P65x 系列微控制器的外围设备中断号与 CPU 中断号

PIE ⇒12345678
CPU ⇓
1ADCA1ADCB1ADCC1XINT1XINT2-定时器 0WAKE / WDOG
2EPWM1_TZ EPWM2_TZEPWM3_TZEPWM4_TZEPWM5_TZEPWM6_ TZEPWM7_TZEPWM8_TZ
3EPWM1EPWM2EPWM3EPWM4EPWM5EPWM6EPWM7EPWM8
4ECAP1ECAP2ECAP3ECAP4ECAP5ECAP6ECAP7保留
5EQEP1EQEP2EQEP3EQEP4CLB1CLB2CLB3CLB4
6SPIA_RXSPIA_TXSPIB_RXSPIB_TXLINA_0LINA_1LINB_0LINB_1
7DMA_CH1DMA_CH2DMA_CH3DMA_CH4DMA_CH5DMA_CH6EQEP_5EQEP_6
8I2CAI2CA_FIFOI2CBI2CB_FIFOUARTA_INTUARTB_INTEPWM17_TZEPWM18_TZ
9SCIA_RXSCIA_TXSCIB_RXSCIB_TXDCANA_1DCANA_2EPWM17EPWM18
10ADCA_EVTADCA2ADCA3ADCA4ADCB_EVTADCB2ADCB3ADCB4
11CPU1_CLA1_1 CPU1_CLA1_2 CPU1_CLA1_3 CPU1_CLA1_4CPU1_CLA1_5CPU1_CLA1_6CPU1_CLA1_7CPU1_CLA1_8
12XINT3XINT4XINT5CPU1_MPOST_INTFLSS_INT-FPU_OVERFLOWFPU_UNDERFLOW
PIE ⇒910111213141516
CPU ⇓
1I2CA

SYS_ERR

ECATSYNC0ECATINTnCIPC0 CIPC1CIPC2CIPC3
2EPWM9_TZEPWM10_ TZEPWM11_TZEPWM12_TZEPWM13_TZEPWM14_TZEPWM15_TZEPWM16_TZ
3EPWM9 EPWM10EPWM11EPWM12EPWM13EPWM14EPWM15EPWM16
4FSITXA_INT1FSITXA_INT2FSITXB_INT1FSITXB_INT2FSIRXA_INT1FSIRXA_INT2FSIRXB_INT1FSIRXB_INT2
5SDFM1SDFM2ECATRSTECATSYNC1SDFM1DR1SDFM1DR2SDFM1DR3SDFM1DR4
6SPIC_RX SPIC_TXSPID_RXSPID_TXSDFM2DR1SDFM2DR2SDFM2DR3SDFM2DR4
7FSITXA_INT1FSITXA_INT2FSIRXA_INT1FSIRXA_INT2SDFM3DR1SDFM3DR2SDFM3DR3SDFM3DR4
8--SDFM3SDFM4CLB5CLB6- -
9MCANSS_A0MCANSS_A1MCANSS_ECC_CORR_PLSMCANSS_WAKE_AND_TS_PLSPMBUSAAES_INTUSBA保留
10ADCC_EVTADCC2 ADCC3ADCC4保留保留保留ADCHECKINT
11MCANSS_B0MCANSS_B1MCANSS_BECC_CORR_PLSMCANSS_B_WAKE_AND_TS_PLSSDFM4DR1SDFM4DR2SDFM4DR3SDFM4DR4
12_ ECAP6_INT2 ECAP7_INT2 -CPU1_CRC_INTCPU1_CLA1CRC_INTCPU1_CLA OVER FLOWCPU1_CLA UNDERFLOW

支持 12×16 中断的 TI 处理器 F28P55x 的 PIE 和 CPU 中断编号如下:

F28P55x 系列微控制器中的 PIE 和 CPU 中断编号

PIE ⇒12345678
CPU ⇓
1ADCA1ADCB1ADCC1XINT1XINT2

SYS_ERR

定时器 0WAKE / WDOG
2EPWM1_TZ EPWM2_TZEPWM3_TZEPWM4_TZEPWM5_TZEPWM6_ TZEPWM7_TZEPWM8_TZ
3EPWM1EPWM2EPWM3EPWM4EPWM5EPWM6EPWM7EPWM8
4ECAP1ECAP2保留保留保留保留保留保留
5EQEP1EQEP2EQEP3保留CLB1CLB2保留保留
6SPIA_RXSPIA_TXSPIB_RXSPIB_TX保留保留DCC0DCC1
7DMA_CH1DMA_CH2DMA_CH3DMA_CH4DMA_CH5DMA_CH6PMBUSA保留
8I2CAI2CA_FIFOI2CBI2CB_FIFO

SCIC_RX

SCIC_TX

保留保留
9SCIA_RXSCIA_TXSCIB_RXSCIB_TX保留保留MCANASS0MCANASS1
10ADCA_EVTADCA2ADCA3ADCA4ADCB_EVTADCB2ADCB3ADCB4
11CLA1_1 CLA1_2 CLA1_3 CLA1_4CLA1_5CLA1_6CLA1_7CLA1_8
12XINT3XINT4XINT5保留FLSS_INT保留MCANASS_WAKE_AND_TS_PLSMCANASS_ECC_CORR_PLS
PIE ⇒910111213141516
CPU ⇓
1ADCD1

ADCE1

保留保留保留保留保留保留
2EPWM9_TZEPWM10_ TZEPWM11_TZEPWM12_TZ保留保留保留保留
3EPWM9 EPWM10EPWM11EPWM12保留保留保留保留
4保留保留保留保留保留保留保留保留
5保留保留保留保留保留保留保留保留
6保留保留保留保留保留保留保留保留
7保留保留FSITXA_INT1FSITXA_INT2FSIRXA_INT1FSIRXA_INT2保留保留
8LINA_0LINA_1保留保留保留保留保留保留
9MCANBSS0MCANBSS1MCANBSS_ECC_CORR_PLSMCANSS_WAKE_AND_TS_PLS保留保留USBNPU
10ADCC_EVTADCC2 ADCC3ADCC4ADCD_EVTADCD2ADCD3ADCD4
11ADCE_EVTADCE2ADCE3ADCE4保留保留保留保留
12_ ECAP6_INT2 ECAP7_INT2 -CPU1_CRC_INTCPU1_CLA1CRC_INTCPU1_CLA OVER FLOWCPU1_CLA UNDERFLOW

下表列出了支持 12×8 中断的 c28x 系列处理器(包括 F280x、F2802x、F2803x、F2805x、F2806x、F2833x、F28M35x 和 F28M36x)的 PIE 和 CPU 中断编号。行标题 1–12 代表 CPU 值,列标题 1–8 代表 PIE 值。

F280x、F2802x、F2803x、F2805x、F2806x、F2833x、F28M35x 和 F28M36x 处理器的 PIE 和 CPU 中断编号

PIE ⇒12345678
CPU ⇓
1SEQ1INT (ADC) / ADCINT1SEQ2INT (ADC) / ADCINT2保留XINT1XINT2ADCINT / ADCINT9TINT0(定时器 0)WAKEINT (LPM/WD)
2EPWM1_TZINT EPWM2_TZINTEPWM3_TZINT EPWM4_TZINT EPWM5_TZINT EPWM6_ TZINT EPWM7_TZINT EPWM8_TZINT
3EPWM1_INTEPWM2_INTEPWM3_INTEPWM4_INTEPWM5_INTEPWM6_ INTEPWM7_INTEPWM8_INT
4ECAP1_INTECAP2_INTECAP3_INTECAP4_INTECAP5_INTECAP6_INTEPWM10_TZINT / HRCAP1_INTEPWM9_TZINT / HRCAP2_INT
5EQEP1_INTEQEP2_INTEQEP3_INTHRCAP3_INTHRCAP4_INT保留EPWM10_INTEPWM9_INT
6SPIRXINTA (SPI-A)SPITXINTA (SPI-A)SPIRXINTB(SPIB_RX)/ MRINTB(McBSP-B)SPITXINTB (SPIB_TX) / MXINTB (McBSP-B)SPIRXINTC (SPI-C) / MRINTA (McBSP-A_RX)SPITXINTC (SPI-C) / MXINTA (McBSP-A_TX)SPIRXINTD (SPI-D) / EPWM12_TZINTSPITXINTD (SPI-D) / EPWM11_TZINT
7DINTCH1 (DMA1)DINTCH2 (DMA2)DINTCH3 (DMA3)DINTCH4 (DMA4)DINTCH5 (DMA5)DINTCH6 (DMA6)EPWM12_INTEPWM11_INT
8I2CINT1AI2CINT2A保留保留SCIRXINTC (SCI-C)SCITXINTC (SCI-C)保留保留
9SCIRXINTA (SCIA_RX)SCITXINTA (SCIA_TX)SCIRXINTB (SCIB_RX) / LINA_INT0SCITXINTB (SCIB_TX) / LINA_INT1ECAN0INTA (CANA_1)ECAN1INTA (CANA_2)ECAN0INTB (CANB_1)ECAN1INTB (CANB_2)
10EPWM9_TZINT / ADCINT1EPWM10_TZINT / ADCINT2EPWM11_TZINT / ADCINT3EPWM12_TZINT / ADCINT4EPWM13_TZINT / ADCINT5EPWM14_TZINT / ADCINT6EPWM15_TZINT / ADCINT7EPWM16_TZINT / ADCINT8
11CLA1_INT1 / EPWM9_INT7 / MTOCIPCINT1 CLA1_INT2 / EPWM10_INT / MTOCIPCINT2CLA1_INT3 / EPWM11_INT / MTOCIPCINT3 CLA1_INT4 / EPWM12_INT / MTOCIPCINT4 /CLA1_INT5 / EPWM13_INTCLA1_INT6 / EPWM14_INTCLA1_INT7 / EPWM15_INTCLA1_INT8 / EPWM16_INT
12XINT3XINT4 / C28FLSINGERRXINT5XINT6 / C28RAMSINGERRXINT7 / C28RAMACCVIOL保留LVFLUF

支持 12×16 中断的 c28x 系列处理器(F2807x、F2837xS、F2837xD、F2838x、F28004x、F28002x 和 F28003x)的 PIE 和 CPU 中断编号如下:

F2807x、F2837xS、F2837xD、F2838x、F28004x、F28002x 和 F28003x 处理器的 PIE 和 CPU 中断编号

PIE ⇒12345678
CPU ⇓
1ADCA1ADCB1ADCC1XINT1XINT2ADCD1定时器 0WAKE / WDOG
2EPWM1_TZ EPWM2_TZEPWM3_TZEPWM4_TZEPWM5_TZEPWM6_ TZEPWM7_TZEPWM8_TZ
3EPWM1EPWM2EPWM3EPWM4EPWM5EPWM6EPWM7EPWM8
4ECAP1ECAP2ECAP3ECAP4ECAP5ECAP6ECAP7保留
5EQEP1EQEP2EQEP3保留CLB1CLB2CLB3CLB4
6SPIA_RXSPIA_TXSPIB_RXSPIB_TXMCBSPA_RXMCBSPA_TXMCBSPB_RXMCBSPB_TX
7DMA_CH1DMA_CH2DMA_CH3DMA_CH4DMA_CH5DMA_CH6保留保留
8I2CAI2CA_FIFOI2CBI2CB_FIFOSCIC_RXSCIC_TXSCID_RXSCID_TX
9SCIA_RXSCIA_TXSCIB_RXSCIB_TXCANA_0CANA_1CANB_0CANB_1
10ADCA_EVTADCA2ADCA3ADCA4ADCB_EVTADCB2ADCB3ADCB4
11CLA1_1 CLA1_2 CLA1_3 CLA1_4CLA1_5CLA1_6CLA1_7CLA1_8
12XINT3XINT4XINT5MPOSTFMC.DONEVCUFPU_OVERFLOWFPU_UNDERFLOW
PIE ⇒910111213141516
CPU ⇓
1I2CA

SYS_ERR

ECATSYNC0(仅限 CPU1)ECATINTn(仅限 CPU1)IPC0/CIPC0 IPC1/CIPC1IPC2/CIPC2IPC3/CIPC3
2EPWM9_TZEPWM10_ TZEPWM11_TZEPWM12_TZEPWM13_TZEPWM14_TZEPWM15_TZEPWM16_TZ
3EPWM9 EPWM10EPWM11EPWM12EPWM13EPWM14EPWM15EPWM16
4FSITXA_INT1FSITXA_INT2FSITXB_INT1FSITXB_INT2FSIRXA_INT1FSIRXA_INT2FSIRXB_INT1FSIRXB_INT2
5SD1 / SDFM1SD2/SDFM1ECATRSTINTn(仅限 CPU1)ECATSYNC1(仅限 CPU1)SDFM1DR1SDFM1DR2SDFM1DR3SDFM1DR4
6SPIC_RX SPIC_TXSPID_RXSPID_TXSDFM2DR1SDFM2DR2SDFM2DR3SDFM2DR4
7FSIRXC_INT1FSIRXC_INT2FSIRXD_INT1FSIRXD_INT2FSIRXE_INT1FSIRXE_INT2FSIRXF_INT1FSIRXF_INT2
8LINA_0/FSIRXG_INT1LINA_1/FSIRXG_INT2FSIRXH_INT1FSIRXH_INT2PMBUSA/CLB5CLB6UPPA(仅限 CPU1)/CLB7 CLB8
9MCANSS_INT0(仅限 CPU1)MCANSS_INT1(仅限 CPU1)MCANSS_ECC_CORR_PUL_INT(仅限 CPU1)MCANSS_WAKE_AND_TS_PLS_INT(仅限 CPU1)PMBUSACM_STATUS(仅限 CPU1)USBA(仅限 CPU1)保留
10ADCC_EVTADCC2 ADCC3ADCC4ADCD_EVTADCD2ADCD3ADCD4
11CMTOCPUxIPCINTR0CMTOCPUxIPCINTR1CMTOCPUxIPCINTR2CMTOCPUxIPCINTR3CMTOCPUxIPCINTR4CMTOCPUxIPCINTR5CMTOCPUxIPCINTR6CMTOCPUxIPCINTR7
12EMIF_ ERRORRAM_CORRECTABLE_ERROR/ECAP6INT2 可纠错闪存错误/ECAP7INT2 RAM_ACCESS_VIOLATIONSYS_PLL_ SLIP/CPUxCRC_INTAUX_PLL_SLIP//CLA1CRC_INTCLA OVER FLOWCLA UNDERFLOW

c281x 处理器的 PIE 和 CPU 中断号如下:

C281x 处理器的 PIE 和 CPU 中断编号

PIE ⇒12345678
CPU ⇓
1PDPINTA (EV-A)PDPINTB (EV-B)保留XINT1XINT2ADCINT (ADC)TINT0(定时器 0)WAKEINT (LPM/WD)
2CMP1INT (EV-A)CMP2INT (EV-A)CMP3INT (EV-A)T1PINT (EV-A)T1CINT (EV-A)T1UFINT (EV-A)T1OFINT (EV-A)保留
3T2PINT (EV-A)T2CINT (EV-A)T2UFINT (EV-A)T2OFINT (EV-A)CAPINT1 (EV-A)CAPINT2 (EV-A)CAPINT3 (EV-A)保留
4CMP4INT (EV-B)CMP5INT (EV-B)CMP6INT (EV-B)T3PINT (EV-B)T3CINT (EV-B)T3UFINT (EV-B)T3OFINT (EV-B)保留
5T4PINT (EV-B)T4CINT (EV-B)T4UFINT (EV-B)T4OFINT (EV-B)CAPINT4 (EV-B)CAPINT5 (EV-B)CAPINT6 (EV-B)保留
6SPIRXINTA (SPI)SPITXINTA (SPI)保留保留MRINT (McBSP)MXINT (McBSP)保留保留
7保留保留保留保留保留保留保留保留
8保留保留保留保留保留保留保留保留
9SCIRXINTA (SCI-A)SCITXINTA (SCI-A)SCIRXINTB (SCI-B)SCITXINTB (SCI-B)ECAN0INT (CAN)ECAN1INT (CAN)保留保留
10保留保留保留保留保留保留保留保留
11保留保留保留保留保留保留保留保留
12保留保留保留保留保留保留保留保留

版本历史记录

在 R2016b 中推出