NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 1421 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
نمایش نتایج: از 1 به 1 از 1

موضوع: روشن خاموش کردن ال ای دی با interrupt

  1. #1
    تازه وارد
    تاریخ عضویت
    Sep 2011
    نوشته ها
    2
    تشکر
    0
    تشکر شده 0 بار در 0 پست

    پیش فرض روشن خاموش کردن ال ای دی با interrupt

    سلام دوستان. من میخوام یه led متصل به پین B0 تا B3 را به وسیله وقفه خارجی میکرو stm32 و یه پوش باتن متصل به A10 روشن خاموش (toggle) کنم.طبق آموزشهایی که تو نت دیدم این برنامه را نوشتم ولی جواب نگرفتم. رو برد STM32F091RC دارم کار میکنم.
    ممنون میشم منو راهنمایی کنید چون تازه از Avr به arm مهاجرت کردم و نیاز به کمک دارم.
    کد:
    #include <stdio.h>
    #include "diag/Trace.h"
    #include "stm32f0xx.h"
    #include "stm32f0xx_conf.h"
    // ----------------------------------------------------------------------------
    void Delay(__IO uint32_t nCount) {
      while(nCount--) {
      }
    }
    
    
    int main(int argc, char* argv[])
    {
    
    
    
    
            GPIO_InitTypeDef  GPIO_InitStructure;
    
    
    
    
            RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE);
    
            GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
            GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
            GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
            GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
            GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
            GPIO_Init(GPIOB, &GPIO_InitStructure);
    
    
    
    
    
            NVIC_InitTypeDef NVIC_InitStructure;
            EXTI_InitTypeDef EXTI_InitStructure;
    
    
            /* Enable GPIOA clock */
            RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);
            /* Enable SYSCFG clock */
            RCC_APB2PeriphClockCmd(RCC_APB2Periph_SYSCFG, ENABLE);
    
    
            GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;
            GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;
            GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
            GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
            GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_DOWN;        // PA10 is connected to high, so use pulldown resistor
            GPIO_Init(GPIOA, &GPIO_InitStructure);
    
    
    
            SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOA, EXTI_PinSource10);
    
    
    
            EXTI_InitStructure.EXTI_Line = EXTI_Line10;              //
            EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;     // Interrupt mode
            EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising;     // Trigger on Rising edge (Just as user presses btn)
            EXTI_InitStructure.EXTI_LineCmd = ENABLE;               // Enable the interrupt
            EXTI_Init(&EXTI_InitStructure);                         // Initialize EXTI
    
    
    
            NVIC_InitStructure.NVIC_IRQChannel = EXTI4_15_IRQn;                // Function name for EXTI_Line10 interrupt handler
            NVIC_InitStructure.NVIC_IRQChannelPriority = 0x01;    // Set priority
                      // Set sub priority
            NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;                 // Enable the interrupt
            NVIC_Init(&NVIC_InitStructure);                                 // Add to NVIC
    
    
    
    
    
    
            // Turn on LED
    
    
            if(EXTI_GetITStatus(EXTI_Line10) != RESET){
            GPIO_SetBits(GPIOB, GPIO_Pin_0);
    
    
            EXTI_ClearITPendingBit(EXTI_Line10);}
    
    
    
    
    
    
            while(1){
                // Do nothing here, using interrupts
            }
    
    
            return 0;
    
    
    
    
      // Infinite loop, never return.
    }
    
    
    #pragma GCC diagnostic pop
    ویرایش توسط navid_sa_198 : 08-05-2020 در ساعت 02:27

  2. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

موضوعات مشابه

  1. کمک در مورد interrupt
    توسط koroush.badi در انجمن ATXMEGA
    پاسخ: 2
    آخرين نوشته: 14-12-2013, 11:56
  2. interrupt
    توسط vahidhm23 در انجمن ATXMEGA
    پاسخ: 0
    آخرين نوشته: 31-08-2013, 12:40
  3. GPIO Interrupt - LPC1788
    توسط mahdiafpr در انجمن LPC series (NXP)
    پاسخ: 2
    آخرين نوشته: 06-07-2013, 02:11
  4. USART interrupt
    توسط alone.poker در انجمن AVR
    پاسخ: 9
    آخرين نوشته: 25-01-2013, 09:00
  5. pic12f629 interrupt on change ?
    توسط pumper در انجمن PIC
    پاسخ: 3
    آخرين نوشته: 13-06-2012, 19:15

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •