文档详情

MB9BF618外部中断说明.pdf

发布:2017-05-30约2.97千字共6页下载文档
文本预览下载声明
MB9BF618 外部中断说明 RT-Thread RTOS 技术手册 版本号:1.0.0 日期:2012.05.11 修订记录 2012.05.11 何元杰 初始文档 2012.07-05 何元杰 添加获取中断触发方式配置 MB9BF618 外部中断说明 本文档描述了MB9BF506 上外部中断在RT-Thread 操作系统上的使用情况。 1. 外部中断管理 在MB9BF618 中很多中断都是共用一个入口。为了方便使用这种共用入口的 中断,RT-Thread 目前对外部中断0 至31 作了统一管理,并提供简单的接口 供用户设置自己中断处理函数。618 的外部0 至31 中断入口定义在 drivers\fm3_ext_int_type2.c 中,如代码一所示: 代码一 MB0BF506 外部中断服务例程 void INT0_7_Handler(void) { /* enter interrupt */ rt_interrupt_enter(); FM3_INT_Handler(); /* leave interrupt */ rt_interrupt_leave(); } void INT8_31_Handler(void) { /* enter interrupt */ rt_interrupt_enter(); FM3_INT_Handler(); /* leave interrupt */ rt_interrupt_leave(); } 其中在FM3_INT_Handler()中将执行用户注册的处理函数,且会自动清除相 关中断标志。 2. 外部中断 API 说明 2 .1. 外部中断管理机制初始化 使用前需要对这个管理机制进行初始化,需要先调用这个API: void fm3_eint_init(void) ; 功 能:初始化外部中断管理机制 返回值:无 参 数:无 2 .2 注册中断处理函数 当用户要注册自己的中断处理函数时可以调用 void fm3_eint_install(int vector, rt_isr_handler_t new_handler, rt_isr_handler_t *old_handler); 功 能:注册用户的外部中断处理函数 返回值:无 参 数:vector - 外部中断号(取值0 至31) 参 数:new_handler - 用户中断处理函数 参 数:old_handler - 当更换新的处理函数时又需要获得旧处理函数, 这时可提供一个指针用于存放返回的旧处理函数;如果不需存储可以设为 RT_NULL 2 .3 配置触发方式 外部中断有4 种触发方式,低电平、高电平、上升沿、下降沿。调用下面的 函数可以配置这些参数 void fm3_eint_trigger_config(int vector, eint_trigger_ty
显示全部
相似文档