NG28·南宫体育|wince5.0中断的详细解释
发布时间:2024-10-26 人浏览
本文摘要:1WinCE中第一次对中断的处置是在OAL的OEMInit()中,该函数调用OALIntrInit()已完成对中断的初始化。
1WinCE中第一次对中断的处置是在OAL的OEMInit()中,该函数调用OALIntrInit()已完成对中断的初始化。 2OALIntrInit()对中断的初始化做到了如下工作: 2.1通过配备IPR0-IPR33设置中断优先级,优先级定义在g_IntPriorities和g_IntPriorities2中,其中IRQ_OSMR0为最低优先级,IRQ_KEYPAD为最低优先级。 2.2设置ICCR,在空闲模式时只对有效地的,非屏蔽的中断号召。 2.3BSPIntrInit()。
该函数对BSP中必须处置的中断展开初始化工作,主要是设置ICMR寄存器使GPIO1(CPLD)和GPIO2为非屏蔽状态,然后通过OALIntrStaticTranslate创建IRQ和sysintr之间的关联。 2.4对于WinCE来说,中断可以不作如下分类: 1》与BSP牵涉到的Kernel用于的内部中断,比如IRQ_OSMR0(for sched),IRQ_RTCALARM; 2》与BSP有关的CPU内部中断,比如IRQ_USBOHCI,IRQ_OSM R1,IRQ_KEYPAD,IRQ_FFUART,IRQ_BTUART,IRQ_STUART,IRQ_DMAC,IRQ_USBFN; 3》CPLD所管理的中断,以GPIO1通报CPU中断的产生,在接到G PIO1产生的中断后可以通过加载地址0x0A00_0010辨别明确的中断源,比如IRQ_GPIO1_MMCCD(MMC_IN_INT,MMC_OUT_INT),IRQ_GPIO1_USBCD(USB_IN_INT,USB_OUT_INT),IRQ_GPIO1_PCMCIA_S0_CSC(CF_IN_INT.CF_OUT_INT),还有在代码中没处置的SIM卡中断(SIM_IN_INT,SIM_OUT_INT)。
本文来源:NG.体育-www.xwei.net