原创 小试牛刀 stm32 触发中断学习

2011-3-29 09:26 1931 4 4 分类: MCU/ 嵌入式

做这个中断  主要花费在找库上   不知道那个库是写nvic的  最后在msic看到的   真浪费时间   哈哈

会了触发中断  以后做起别的来  就简单多了

#include "stm32f10x_exti.c" #include "misc.c"


void EXTI_Configuration(void) { EXTI_InitTypeDef EXTI_InitStructure; EXTI_InitStructure.EXTI_Line = EXTI_Line11; //外部中断线 EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;//中断模式 EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;//中断触发方式 EXTI_InitStructure.EXTI_LineCmd = ENABLE;//打开中断 EXTI_Init(&EXTI_InitStructure); GPIO_EXTILineConfig(GPIO_PortSourceGPIOC, GPIO_PinSource11); //选择 GPIO管脚用作外部中断线路 } void NVIC_Configuration(void) { NVIC_InitTypeDef NVIC_InitStructure; NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0); // 抢占式优先级别 NVIC_InitStructure.NVIC_IRQChannel = EXTI15_10_IRQn;//指定中断源 NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; // 指定响应优先级别1 NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); }


/**/void EXTI15_10_IRQHandler(void) { if(EXTI_GetITStatus(EXTI_Line11) != RESET) { //添加中断处理程序 LSM303DLH_A_DATA(); put_hex(ax); EXTI_ClearFlag(EXTI_Line11); EXTI_ClearITPendingBit(EXTI_Line11); } }

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
4
关闭 站长推荐上一条 /3 下一条