реклама на сайте
подробности

 
 
> stm32 stop mode, Не могу разбудить микроконтроллер внешним прерыванием
nx6310
сообщение Aug 18 2010, 08:54
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 28-06-10
Пользователь №: 58 174



Здраствуйте. Микроконтроллер stm32 перевожу в энергосберегающий режим STOP. А выйти из него в нормальный режим по внешнему прерыванию не получается. В нормальном режиме внешнее прерывание работает. В стоп-режиме не работает. Кто нибудь сталкивался с такой проблемой?. Код программы ниже:
Код
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO, ENABLE);   //тактирование периферийных устройств
RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR | RCC_APB1Periph_BKP, ENABLE);

     GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1|GPIO_Pin_3|GPIO_Pin_10;
     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;           // конифгурация вывода РА1 как вход
     GPIO_Init(GPIOA, &GPIO_InitStructure);                                        //

GPIO_EXTILineConfig(GPIO_PortSourceGPIOA, GPIO_PinSource1);    //РА1 источник прерывания линии 1

    EXTI_InitStructure.EXTI_Line = EXTI_Line1;                         // настрока
    EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;         // внешнего
    EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising;        //прерывания
    EXTI_InitStructure.EXTI_LineCmd = ENABLE;                       //  - прерывание по пер.фронту
    EXTI_Init(&EXTI_InitStructure);

PWR_PVDLevelConfig(PWR_PVDLevel_2V2);  // включение детектора
PWR_PVDCmd(ENABLE);        // напряжения питания

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);                    //настойка приоритета
   NVIC_InitStructure.NVIC_IRQChannel = EXTI1_IRQn;             // и разрешение
    NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; // канала прерывания EXTI1
    NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;           // в контроллере прерываний
    NVIC_Init(&NVIC_InitStructure);

...
...
PWR_EnterSTOPMode(PWR_Regulator_LowPower, PWR_STOPEntry_WFI); // переход в режим стоп


Подпрограмма обработки прерывания
Код
void EXTI1_IRQHandler(void){
if(EXTI_GetITStatus(EXTI_Line1) != RESET)
      {GPIO_WriteBit(GPIOB, GPIO_Pin_9, Bit_SET);
        if(PWR_GetFlagStatus(PWR_FLAG_WU) != RESET)
        {
          /* Clear Wake Up flag */
          PWR_ClearFlag(PWR_FLAG_WU);
        }
      print("PRERIVANIE 1");
        /* Clear the Key Button EXTI line pending bit */
        EXTI_ClearITPendingBit(EXTI_Line1);
      }
}


Тут на руском языке инфа есть немного http://www.gaw.ru/html.cgi/txt/doc/micros/...x_arh/index.htm
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- nx6310   stm32 stop mode   Aug 18 2010, 08:54
- - Basilij   Прошло два года с момента публикации. Удалось ли в...   Aug 23 2012, 04:13
|- - vlad_new   Цитата(Basilij @ Aug 23 2012, 08:13) Прош...   Aug 23 2012, 11:30
- - Basilij   Цитата(vlad_new @ Aug 23 2012, 17:30) Я н...   Aug 23 2012, 12:43
|- - vlad_new   Цитата(Basilij @ Aug 23 2012, 16:43) Спас...   Aug 23 2012, 13:01
|- - MiklPolikov   Цитата(vlad_new @ Aug 23 2012, 17:01) А э...   Aug 29 2012, 00:52
- - Basilij   Прояснили! :смайлик низкий поклон: Вот я этой...   Aug 23 2012, 13:12
- - vlad_new   В режиме Ожидания (Standby) все I/O выводы находят...   Aug 24 2012, 12:52
|- - MiklPolikov   Цитата(vlad_new @ Aug 24 2012, 16:52) В р...   Feb 8 2013, 15:48
|- - maksimp   Цитата(MiklPolikov @ Feb 8 2013, 18:48) К...   Feb 8 2013, 17:56
|- - MiklPolikov   Цитата(maksimp @ Feb 8 2013, 21:56) Вероя...   Feb 8 2013, 18:31
- - nx6310   stop режим не сбрасывает микроконтроллер, т.е. пос...   Oct 19 2012, 09:55
- - MK2   Столкнулся с проблемой точно наоборот... проц stm3...   Jan 18 2013, 16:31
|- - MiklPolikov   Цитата(MK2 @ Jan 18 2013, 20:31) Столкнул...   Jan 19 2013, 05:11
- - vlad_new   Если ADC включен, то не уснет. Для F4 может и ещё ...   Jan 19 2013, 07:39
|- - MK2   Цитата(vlad_new @ Jan 19 2013, 10:39) Есл...   Jan 22 2013, 08:40
|- - digital   Цитата(MK2 @ Jan 22 2013, 12:40) Выяснило...   Jul 3 2014, 15:14
- - MK2   и еще вдогонку... с уартом дело похоже оказалось в...   Jan 22 2013, 10:45
- - bigal   Чтобы отладчик работал со спящими режимами нужно с...   Jul 4 2014, 10:48


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 21:57
Рейтинг@Mail.ru


Страница сгенерированна за 0.01363 секунд с 7
ELECTRONIX ©2004-2016