- /**********************************************************************
- *
- * 实验名称:IRQ中断实验
- * 实验平台:NV32开发板
- * 板载芯片:NV32F101FL64E
- * 实验效果:初始化IRQ模块,选择中断输入引脚,和检测模式,按下按键触发IRQ
- * 中断切换LED状态
- *
- ************************************************************************/
- #include "common.h"
- #include "ics.h"
- #include "rtc.h"
- #include "sim.h"
- #include "irq.h"
- #include "sysinit.h"
- int main (void);
- void IRQ0_Task(void);
- /********************************************************************/
- int main (void)
- {
- IRQ_ConfigType sIRQConfig;
-
- /*系统初始化*/
- sysinit();
- printf("\nRunning the IRQ_demo project.\r\n");
- LED2_Init();
- sIRQConfig.bMode = IRQ_MODE_EDGE_ONLY; /*!< 选择边沿检测 */
- sIRQConfig.bEdg = IRQ_FALLING_EDGE_LOW_LEVEL; /*!< 选择 下降沿或下降沿/低电平 */
- sIRQConfig.bIntEn = 1; /*使能IRQ中断*/
- sIRQConfig.bPeEn = 1; /*中断信号输入引脚使能*/
- sIRQConfig.bPdd=1; /*!<中断请求上拉器件禁用*/
-
- IRQ_SetCallback(IRQ0, &IRQ0_Task); /*设置回调函数*/
- IRQ_Init(IRQ0, &sIRQConfig);
-
- while(1)
- {
- }
- }
- /*****************************************************************************//*!
- *
- * [url=home.php?mod=space&uid=247401]@brief[/url] IRQ0回调函数.
- *
- * @param none.
- *
- * [url=home.php?mod=space&uid=266161]@return[/url] none.
- *
- *****************************************************************************/
- void IRQ0_Task(void)
- {
- LED2_Toggle();
- printf("IRQ0 routinue.\r\n");
- }
- /********************************************************************/
|