OpenMPTL - STM32F4
C++ Microprocessor Template Library
Classes | Typedefs | Functions | Variables
mptl::irq Namespace Reference

Classes

class  spi
 
class  spi< 1 >
 
class  spi< 2 >
 
class  spi< 3 >
 
class  usart
 
class  usart< 1 >
 
class  usart< 2 >
 
class  usart< 3 >
 
class  usart< 6 >
 

Typedefs

typedef core_exception<-15 > reset
 
typedef core_exception<-14 > nmi
 
typedef core_exception<-13 > hard_fault
 
typedef core_exception<-12 > memory_management
 
typedef core_exception<-11 > bus_fault
 
typedef core_exception<-10 > usage_fault
 
typedef core_exception<-5 > sv_call
 
typedef core_exception<-4 > debug_monitor
 
typedef core_exception<-2 > pend_sv
 
typedef core_exception<-1 > systick
 
using wwdg = irq_channel< 0 >
 Window Watchdog interrupt. More...
 
using pvd = irq_channel< 1 >
 PVD through EXTI line detection interrupt. More...
 
using tamp_stamp = irq_channel< 2 >
 Tamper and TimeStamp interrupts through the EXTI line. More...
 
using rtc_wkup = irq_channel< 3 >
 RTC Wakeup interrupt through the EXTI line. More...
 
using flash = irq_channel< 4 >
 Flash global interrupt. More...
 
using rcc = irq_channel< 5 >
 RCC global interrupt. More...
 
using exti0 = irq_channel< 6 >
 EXTI Line0 interrupt. More...
 
using exti1 = irq_channel< 7 >
 EXTI Line1 interrupt. More...
 
using exti2 = irq_channel< 8 >
 EXTI Line2 interrupt. More...
 
using exti3 = irq_channel< 9 >
 EXTI Line3 interrupt. More...
 
using exti4 = irq_channel< 10 >
 EXTI Line4 interrupt. More...
 
using dma1_stream0 = irq_channel< 11 >
 DMA1 Stream0 global interrupt. More...
 
using dma1_stream1 = irq_channel< 12 >
 DMA1 Stream1 global interrupt. More...
 
using dma1_stream2 = irq_channel< 13 >
 DMA1 Stream2 global interrupt. More...
 
using dma1_stream3 = irq_channel< 14 >
 DMA1 Stream3 global interrupt. More...
 
using dma1_stream4 = irq_channel< 15 >
 DMA1 Stream4 global interrupt. More...
 
using dma1_stream5 = irq_channel< 16 >
 DMA1 Stream5 global interrupt. More...
 
using dma1_stream6 = irq_channel< 17 >
 DMA1 Stream6 global interrupt. More...
 
using adc = irq_channel< 18 >
 ADC1 global interrupt / ADC2 global interrupts / ADC3 global interrupts. More...
 
using can1_tx = irq_channel< 19 >
 CAN1 TX interrupts. More...
 
using can1_rx0 = irq_channel< 20 >
 CAN1 RX0 interrupts. More...
 
using can1_rx1 = irq_channel< 21 >
 CAN1 RX1 interrupts. More...
 
using can1_sce = irq_channel< 22 >
 CAN1 SCE interrupt. More...
 
using exti9_5 = irq_channel< 23 >
 EXTI Line[9:5] interrupts. More...
 
using tim1_brk_tim9 = irq_channel< 24 >
 TIM1 Break interrupt and TIM9 global interrupt. More...
 
using tim1_up_tim10 = irq_channel< 25 >
 TIM1 Update interrupt and TIM10 global interrupt. More...
 
using tim1_trg_com_tim11 = irq_channel< 26 >
 TIM1 Trigger and Commutation interrupts and TIM11 global interrupt. More...
 
using tim1_cc = irq_channel< 27 >
 TIM1 Capture Compare interrupt. More...
 
using tim2 = irq_channel< 28 >
 TIM2 global interrupt. More...
 
using tim3 = irq_channel< 29 >
 TIM3 global interrupt. More...
 
using tim4 = irq_channel< 30 >
 TIM4 global interrupt. More...
 
using i2c1_ev = irq_channel< 31 >
 I2C1 event interrupt. More...
 
using i2c1_er = irq_channel< 32 >
 I2C1 error interrupt. More...
 
using i2c2_ev = irq_channel< 33 >
 I2C2 event interrupt. More...
 
using i2c2_er = irq_channel< 34 >
 I2C2 error interrupt. More...
 
using spi1 = irq_channel< 35 >
 SPI1 global interrupt. More...
 
using spi2 = irq_channel< 36 >
 SPI2 global interrupt. More...
 
using usart1 = irq_channel< 37 >
 USART1 global interrupt. More...
 
using usart2 = irq_channel< 38 >
 USART2 global interrupt. More...
 
using usart3 = irq_channel< 39 >
 USART3 global interrupt. More...
 
using exti15_10 = irq_channel< 40 >
 EXTI Line[15:10] interrupts. More...
 
using rtc_alarm = irq_channel< 41 >
 RTC Alarms (A and B) through EXTI line interrupt. More...
 
using otg_fs_wkup = irq_channel< 42 >
 USB On-The-Go FS Wakeup through EXTI line interrupt. More...
 
using tim8_brk_tim12 = irq_channel< 43 >
 TIM8 Break interrupt and TIM12 global interrupt. More...
 
using tim8_up_tim13 = irq_channel< 44 >
 TIM8 Update interrupt and TIM13 global interrupt. More...
 
using tim8_trg_com_tim14 = irq_channel< 45 >
 TIM8 Trigger and Commutation interrupts and TIM14 global interrupt. More...
 
using tim8_cc = irq_channel< 46 >
 TIM8 Capture Compare interrupt. More...
 
using dma1_stream7 = irq_channel< 47 >
 DMA1 Stream7 global interrupt. More...
 
using fsmc = irq_channel< 48 >
 FSMC global interrupt. More...
 
using sdio = irq_channel< 49 >
 SDIO global interrupt. More...
 
using tim5 = irq_channel< 50 >
 TIM5 global interrupt. More...
 
using spi3 = irq_channel< 51 >
 SPI3 global interrupt. More...
 
using uart4 = irq_channel< 52 >
 UART4 global interrupt. More...
 
using uart5 = irq_channel< 53 >
 UART5 global interrupt. More...
 
using tim6_dac = irq_channel< 54 >
 TIM6 global interrupt, DAC1 and DAC2 underrun error interrupt. More...
 
using tim7 = irq_channel< 55 >
 TIM7 global interrupt. More...
 
using dma2_stream0 = irq_channel< 56 >
 DMA2 Stream0 global interrupt. More...
 
using dma2_stream1 = irq_channel< 57 >
 DMA2 Stream1 global interrupt. More...
 
using dma2_stream2 = irq_channel< 58 >
 DMA2 Stream2 global interrupt. More...
 
using dma2_stream3 = irq_channel< 59 >
 DMA2 Stream3 global interrupt. More...
 
using dma2_stream4 = irq_channel< 60 >
 DMA2 Stream4 global interrupt. More...
 
using eth = irq_channel< 61 >
 Ethernet global interrupt. More...
 
using eth_wkup = irq_channel< 62 >
 Ethernet Wakeup through EXTI line interrupt. More...
 
using can2_tx = irq_channel< 63 >
 CAN2 TX interrupts. More...
 
using can2_rx0 = irq_channel< 64 >
 CAN2 RX0 interrupts. More...
 
using can2_rx1 = irq_channel< 65 >
 CAN2 RX1 interrupts. More...
 
using can2_sce = irq_channel< 66 >
 CAN2 SCE interrupt. More...
 
using otg_fs = irq_channel< 67 >
 USB On The Go FS global interrupt. More...
 
using dma2_stream5 = irq_channel< 68 >
 DMA2 Stream5 global interrupt. More...
 
using dma2_stream6 = irq_channel< 69 >
 DMA2 Stream6 global interrupt. More...
 
using dma2_stream7 = irq_channel< 70 >
 DMA2 Stream7 global interrupt. More...
 
using usart6 = irq_channel< 71 >
 USART6 global interrupt. More...
 
using i2c3_ev = irq_channel< 72 >
 I2C3 event interrupt. More...
 
using i2c3_er = irq_channel< 73 >
 I2C3 error interrupt. More...
 
using otg_hs_ep1_out = irq_channel< 74 >
 USB On The Go HS End Point 1 Out global interrupt. More...
 
using otg_hs_ep1_in = irq_channel< 75 >
 USB On The Go HS End Point 1 In global interrupt. More...
 
using otg_hs_wkup = irq_channel< 76 >
 USB On The Go HS Wakeup through EXTI interrupt. More...
 
using otg_hs = irq_channel< 77 >
 USB On The Go HS global interrupt. More...
 
using dcmi = irq_channel< 78 >
 DCMI global interrupt. More...
 
using cryp = irq_channel< 79 >
 CRYP crypto global interrupt. More...
 
using hash_rng = irq_channel< 80 >
 Hash and Rng global interrupt. More...
 
using fpu = irq_channel< 81 >
 FPU global interrupt. More...
 

Functions

static constexpr bool reserved_irqn (int irqn)
 

Variables

static constexpr int numof_interrupt_channels = 82
 

Typedef Documentation

◆ adc

using mptl::irq::adc = typedef irq_channel<18>

◆ can1_rx0

using mptl::irq::can1_rx0 = typedef irq_channel<20>

◆ can1_rx1

using mptl::irq::can1_rx1 = typedef irq_channel<21>

◆ can1_sce

using mptl::irq::can1_sce = typedef irq_channel<22>

◆ can1_tx

using mptl::irq::can1_tx = typedef irq_channel<19>

◆ can2_rx0

using mptl::irq::can2_rx0 = typedef irq_channel<64>

◆ can2_rx1

using mptl::irq::can2_rx1 = typedef irq_channel<65>

◆ can2_sce

using mptl::irq::can2_sce = typedef irq_channel<66>

◆ can2_tx

using mptl::irq::can2_tx = typedef irq_channel<63>

◆ cryp

using mptl::irq::cryp = typedef irq_channel<79>

◆ dcmi

using mptl::irq::dcmi = typedef irq_channel<78>

◆ dma1_stream0

using mptl::irq::dma1_stream0 = typedef irq_channel<11>

◆ dma1_stream1

using mptl::irq::dma1_stream1 = typedef irq_channel<12>

◆ dma1_stream2

using mptl::irq::dma1_stream2 = typedef irq_channel<13>

◆ dma1_stream3

using mptl::irq::dma1_stream3 = typedef irq_channel<14>

◆ dma1_stream4

using mptl::irq::dma1_stream4 = typedef irq_channel<15>

◆ dma1_stream5

using mptl::irq::dma1_stream5 = typedef irq_channel<16>

◆ dma1_stream6

using mptl::irq::dma1_stream6 = typedef irq_channel<17>

◆ dma1_stream7

using mptl::irq::dma1_stream7 = typedef irq_channel<47>

◆ dma2_stream0

using mptl::irq::dma2_stream0 = typedef irq_channel<56>

◆ dma2_stream1

using mptl::irq::dma2_stream1 = typedef irq_channel<57>

◆ dma2_stream2

using mptl::irq::dma2_stream2 = typedef irq_channel<58>

◆ dma2_stream3

using mptl::irq::dma2_stream3 = typedef irq_channel<59>

◆ dma2_stream4

using mptl::irq::dma2_stream4 = typedef irq_channel<60>

◆ dma2_stream5

using mptl::irq::dma2_stream5 = typedef irq_channel<68>

◆ dma2_stream6

using mptl::irq::dma2_stream6 = typedef irq_channel<69>

◆ dma2_stream7

using mptl::irq::dma2_stream7 = typedef irq_channel<70>

◆ eth

using mptl::irq::eth = typedef irq_channel<61>

◆ eth_wkup

using mptl::irq::eth_wkup = typedef irq_channel<62>

◆ exti0

using mptl::irq::exti0 = typedef irq_channel< 6>

◆ exti1

using mptl::irq::exti1 = typedef irq_channel< 7>

◆ exti15_10

using mptl::irq::exti15_10 = typedef irq_channel<40>

◆ exti2

using mptl::irq::exti2 = typedef irq_channel< 8>

◆ exti3

using mptl::irq::exti3 = typedef irq_channel< 9>

◆ exti4

using mptl::irq::exti4 = typedef irq_channel<10>

◆ exti9_5

using mptl::irq::exti9_5 = typedef irq_channel<23>

◆ flash

using mptl::irq::flash = typedef irq_channel< 4>

◆ fpu

using mptl::irq::fpu = typedef irq_channel<81>

◆ fsmc

using mptl::irq::fsmc = typedef irq_channel<48>

◆ hash_rng

using mptl::irq::hash_rng = typedef irq_channel<80>

◆ i2c1_er

using mptl::irq::i2c1_er = typedef irq_channel<32>

◆ i2c1_ev

using mptl::irq::i2c1_ev = typedef irq_channel<31>

◆ i2c2_er

using mptl::irq::i2c2_er = typedef irq_channel<34>

◆ i2c2_ev

using mptl::irq::i2c2_ev = typedef irq_channel<33>

◆ i2c3_er

using mptl::irq::i2c3_er = typedef irq_channel<73>

◆ i2c3_ev

using mptl::irq::i2c3_ev = typedef irq_channel<72>

◆ otg_fs

using mptl::irq::otg_fs = typedef irq_channel<67>

◆ otg_fs_wkup

using mptl::irq::otg_fs_wkup = typedef irq_channel<42>

◆ otg_hs

using mptl::irq::otg_hs = typedef irq_channel<77>

◆ otg_hs_ep1_in

◆ otg_hs_ep1_out

◆ otg_hs_wkup

using mptl::irq::otg_hs_wkup = typedef irq_channel<76>

◆ pvd

using mptl::irq::pvd = typedef irq_channel< 1>

◆ rcc

using mptl::irq::rcc = typedef irq_channel< 5>

◆ rtc_alarm

using mptl::irq::rtc_alarm = typedef irq_channel<41>

◆ rtc_wkup

using mptl::irq::rtc_wkup = typedef irq_channel< 3>

◆ sdio

using mptl::irq::sdio = typedef irq_channel<49>

◆ spi1

using mptl::irq::spi1 = typedef irq_channel<35>

◆ spi2

using mptl::irq::spi2 = typedef irq_channel<36>

◆ spi3

using mptl::irq::spi3 = typedef irq_channel<51>

◆ tamp_stamp

using mptl::irq::tamp_stamp = typedef irq_channel< 2>

◆ tim1_brk_tim9

◆ tim1_cc

using mptl::irq::tim1_cc = typedef irq_channel<27>

◆ tim1_trg_com_tim11

◆ tim1_up_tim10

◆ tim2

using mptl::irq::tim2 = typedef irq_channel<28>

◆ tim3

using mptl::irq::tim3 = typedef irq_channel<29>

◆ tim4

using mptl::irq::tim4 = typedef irq_channel<30>

◆ tim5

using mptl::irq::tim5 = typedef irq_channel<50>

◆ tim6_dac

using mptl::irq::tim6_dac = typedef irq_channel<54>

◆ tim7

using mptl::irq::tim7 = typedef irq_channel<55>

◆ tim8_brk_tim12

◆ tim8_cc

using mptl::irq::tim8_cc = typedef irq_channel<46>

◆ tim8_trg_com_tim14

◆ tim8_up_tim13

◆ uart4

using mptl::irq::uart4 = typedef irq_channel<52>

◆ uart5

using mptl::irq::uart5 = typedef irq_channel<53>

◆ usart1

using mptl::irq::usart1 = typedef irq_channel<37>

◆ usart2

using mptl::irq::usart2 = typedef irq_channel<38>

◆ usart3

using mptl::irq::usart3 = typedef irq_channel<39>

◆ usart6

using mptl::irq::usart6 = typedef irq_channel<71>

◆ wwdg

using mptl::irq::wwdg = typedef irq_channel< 0>

Variable Documentation

◆ numof_interrupt_channels

constexpr int mptl::irq::numof_interrupt_channels = 82
static