Модераторы: PILOT, ManiaK, Mazzi
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Регистрация внешнего прерывания в AVR32 
:(
    Опции темы
olegbtu
Дата 26.5.2008, 17:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 9.5.2008

Репутация: нет
Всего: нет



Всем привет. Есть отладочная плата EVK1100. Установил AVR32 Studio под XP.
Пишу обработчки прерывания для джойстика.
Вот код для Joystick.h :

#ifndef JOYSTICK_H_
#define JOYSTICK_H_

#include <avr32/io.h>
#include <sys/interrupts.h>

#include "global_define.h"
#include "gpio.h"
#include "usart.h"
#include "compiler.h"
#include "pm.h"


void init_joystick(volatile avr32_eic_t *set_eic);
void detect_direction_joystick(void);

#endif /*JOYSTICK_H_*/

Вот код для Joystick.c :
#include "joystick.h"

__int_handler *joystick_int(){
detect_direction_joystick();
return (void *) 0;
}

void init_joystick(volatile avr32_eic_t *set_eic){
set_eic->mode = 0;
set_eic->edge = 0;
set_eic->level = 1;
set_eic->filter = 0;
set_eic->async = 1;
set_eic->ier = 1;
gpio_enable_module_pin(AVR32_EIC_EXTINT_8_PIN,AVR32_EIC_EXTINT_8_FUNCTION);
set_interrupts_base((void *)AVR32_EIC_ADDRESS);
register_interrupt((__int_handler)(joystick_int),AVR32_EIC_EXTINT_8_PIN / 32,AVR32_EIC_EXTINT_8_PIN % 32,INT3);
init_interrupts();
}

void detect_direction_joystick(void){
usart_bw_write_char(EXAMPLE_USART,10);
}

Не хочет срабатывать прерывание. Помогите найти мой недочет.

Спасибо. Олег.
PM MAIL   Вверх
Mazzi
Дата 27.5.2008, 09:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Правильный
**


Профиль
Группа: Комодератор
Сообщений: 825
Регистрация: 3.4.2003

Репутация: 9
Всего: 21



В CodeVisionAVR функция обработчик прерывания оформляется так:

/*******************************************************************************
// External Interrupt 0 service routine
//*******************************************************************************
interrupt [EXT_INT0] void Ext0_ISR(void)
{
 .............
}


В твоей среде наверное что-нибудь подобное.

Кроме того, проверь, разрешил ли ты работу прерываний соотв. флажками.


--------------------
Мне нужны помощники.
PM MAIL WWW   Вверх
olegbtu
Дата 27.5.2008, 13:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 9.5.2008

Репутация: нет
Всего: нет



Mazzi спасибо за ответ, но не все так просто, как хотелось бы.   
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Микроконтроллеры (MCU) и микропроцессоры (MPU)"
PILOT ManiaK
UniBomb Mazzi

На данный раздел помимо Правил форума распространяются текже следующие правила:


  • Прежде чем создать тему воспользуйтесь поиском или посмотрите в faq. Возможно на форуме уже есть ответ на ваш или близкий к вашему вопрос.
  • В заголовке темы в квадратных скобках обозначьте используемое семейство микроконтроллера: [avr],[pic],[arm].
  • При создании темы с вопросом указывайте участок кода с ошибкой, версию компилятора, схемы подключения, fuse биты и прочие данные, которые помогут найти правильный ответ. Для форматирования текста программ используйте кнопку код.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Для флуда, просьб выполнить задание, поиска партнёров или исполнителей существуют свои разделы.
  • Если вы заметили несовместимое с правилами сообщение, то можете уведомить об этом модератора раздела нажав кнопку Репорт у соответствующего сообщения.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Микроконтроллеры (MCU) и микропроцессоры (MPU) | Следующая тема »


 




[ Время генерации скрипта: 0.0922 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.