野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 22753|回复: 3

还是中断问题

[复制链接]
发表于 2014-3-16 17:07:20 | 显示全部楼层 |阅读模式
  想实现LED2以1闪烁,  
当按下按键后LED1取反  两个互不影响  该怎么写

#include "stm32f10x.h"
#include "bsp_led.h"
#include "bsp_exti.h"
#include "delay.h"
#define CLI()      __set_PRIMASK(1)  /* 关闭总中断 */  
#define SEI() __set_PRIMASK(0)    /* 开放总中断 */
/**
  * @brief  主函数
  * @param  无
  * @retval 无
  */
int main(void)
{
/* config the led */
LED_GPIO_Config();
delay_init(72); //延时函数初始化
CLI();
SEI();

/* exti line config */
EXTI_PA13_Config();

/* wait interrupt */

while(1)
{
  }
}
回复

使用道具 举报

发表于 2014-3-16 17:08:38 | 显示全部楼层
参考火哥的key中断例程吧,在中断服务函数里分别对led1和led2控制就可以了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-16 17:11:22 | 显示全部楼层
红思雨 发表于 2014-3-16 17:08
参考火哥的key中断例程吧,在中断服务函数里分别对led1和led2控制就可以了

不管按键是否按下  Led2都闪烁
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-16 17:22:31 | 显示全部楼层
/**
  ******************************************************************************
  * @file    main.c
  * @author  fire
  * @version V1.0
  * @date    2013-xx-xx
  * @brief   按键测试(中断模式/EXTI模式)
  ******************************************************************************
  * @attention
  *
  * 实验平台:野火 iSO STM32 开发板
  * 论坛    :http://www.firebbs.cn
  * 淘宝    :http://firestm32.taobao.com
  *
  ******************************************************************************
  */

#include "stm32f10x.h"
#include "bsp_led.h"
#include "bsp_exti.h"
#include "delay.h"

#define CLI()      __set_PRIMASK(1)                /* 关闭总中断 */  
#define SEI() __set_PRIMASK(0)                                /* 开放总中断 */
static __IO u8 i;
/**
  * @brief  主函数
  * @param  无
  * @retval 无
  */
int main(void)
{       
        /* config the led */
        LED_GPIO_Config();
        delay_init(72);        //延时函数初始化
   
        CLI();
        SEI();
       
        /* exti line config */
        EXTI_PA13_Config();
       
        /* wait interrupt */
   while (1)   
        {            
                LED2( ON );                          // 亮
             delay_ms(1000);                  //注意最大值不能超过1864
          
                LED2( OFF );                  // 灭
         
                delay_ms(1000);                  //注意最大值不能超过1864
            
       
    }

}
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-9-21 13:39 , Processed in 0.030245 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表