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

 
 
> Помогите настроить внешнее прерывание STM32, IDE CooCOX, плата discovery
OlegALL
сообщение Sep 16 2013, 06:23
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 70
Регистрация: 30-11-10
Пользователь №: 61 275



Код инициализации:

CODE
// NVIC configuration

NVIC_InitTypeDef NVIC_InitStructure;

// Set the Vector Table base location at 0x08000000 !!!!!!
NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0);

// Configure one bit for preemption priority
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
// Enable the EXTI0 Interrupt

//NVIC_InitStructure.NVIC_IRQChannel = EXTI9_5_IRQChannel; // !!!

NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);


// GPIO configuration
GPIO_InitTypeDef GPIO_InitStructure;
// Configure PA0 as input floating (EXTI Line0)
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_AFIO, ENABLE); // можно ли последовательно?
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
GPIO_Init(GPIOA, &GPIO_InitStructure);


// Configure EXTI Line0 to generate an interrupt on rising or falling edge
GPIO_EXTILineConfig(GPIOA,GPIO_PinSource0);

EXTI_InitStructure.EXTI_Line = EXTI_Line0;
EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising_Falling;
EXTI_InitStructure.EXTI_LineCmd = ENABLE;
EXTI_Init(&EXTI_InitStructure);


NVIC_EnableIRQ(EXTI0_IRQn);

Что сделал не так? Инициализацию сделал на основе примера в CooCox

Сообщение отредактировал IgorKossak - Sep 16 2013, 17:28
Причина редактирования: [codebox] для длинного кода, [code] - для короткого!!!
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- OlegALL   Помогите настроить внешнее прерывание STM32, IDE CooCOX, плата discovery   Sep 16 2013, 06:23
- - adnega   Цитата(OlegALL @ Sep 16 2013, 10:23) Что ...   Sep 16 2013, 07:38
- - OlegALL   КодEXTI0_IRQHandler(void){ GPIOC->OD...   Sep 17 2013, 04:39
|- - DmitryM   Цитата(OlegALL @ Sep 17 2013, 08:39) EXTI...   Sep 17 2013, 04:49
- - adnega   Цитата(DmitryM @ Sep 17 2013, 08:49) И чт...   Sep 17 2013, 06:08
- - OlegALL   Я прописал 2 раза зажигание светодиода - вдруг не ...   Sep 17 2013, 06:11
|- - adnega   Цитата(OlegALL @ Sep 17 2013, 10:11) Я пр...   Sep 17 2013, 06:40
|- - OlegALL   Цитата(adnega @ Sep 17 2013, 10:40) Вообщ...   Sep 17 2013, 10:40
|- - adnega   Цитата(OlegALL @ Sep 17 2013, 14:40) Такт...   Sep 17 2013, 11:48
- - OlegALL   Всё поправил, что мне тут написали. Разумеется я и...   Sep 18 2013, 11:29
|- - adnega   Цитата(OlegALL @ Sep 18 2013, 15:29) Испо...   Sep 18 2013, 12:07
- - OlegALL   я и передавать буду Обработчик прерывания usart: ...   Sep 19 2013, 07:43
|- - adnega   Цитата(OlegALL @ Sep 19 2013, 11:43) Обра...   Sep 19 2013, 08:13
- - OlegALL   Нет, прерывание от PA0 как не работало, так и не р...   Sep 19 2013, 08:38
|- - adnega   Цитата(OlegALL @ Sep 19 2013, 12:38) Или ...   Sep 19 2013, 08:57
|- - Builder   Цитата(OlegALL @ Sep 19 2013, 11:38) Нет,...   Sep 21 2013, 20:07
- - nx6310   Посмотрите отладчиком что у вас происходит в прогр...   Sep 26 2013, 05:49
- - RuSTA   Лучше скажите что за камень у вас используется...   Oct 21 2013, 10:05


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

 


RSS Текстовая версия Сейчас: 18th July 2025 - 15:07
Рейтинг@Mail.ru


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