|
|
  |
AT91SAM7S и внешние прерывания по фронту, как настроить для разных входов разные режимы? |
|
|
|
Jan 16 2011, 09:15
|
Участник

Группа: Участник
Сообщений: 29
Регистрация: 21-01-05
Пользователь №: 2 113

|
Фронт в AIC это несколько не то.. Вам нужно настраивать PIO контроллер, чтобы ловил прерывания по конкретным ножкам (PIO_PER, PIO_ODR, PIO_IER) , но, к сожалению, PIO в SAM7 ловит оба фронта и настроить иначе вроде как нельзя. Цитата 27.4.10 Input Change Interrupt The PIO Controller can be programmed to generate an interrupt when it detects an input change on an I/O line.
Сообщение отредактировал codier - Jan 16 2011, 09:16
|
|
|
|
|
Jan 17 2011, 08:02
|

Частый гость
 
Группа: Участник
Сообщений: 149
Регистрация: 15-12-09
Из: Москва
Пользователь №: 54 280

|
Цитата(Aurochs @ Jan 16 2011, 20:34)  Вход, на котором нужно фиксировать положительный фронт, можно подключить на IRQ0, а вход, на котором нужно фиксировать отрицательный фронт - на IRQ1. Ну, и соответствующим образом программируем контроллер прерываний... Понятно, жаль что на моей отладочной плате на IRQ0 навесили кнопку ! А я правильно понимаю, что к другим (не к IRQ0/IRQ1) входам PIO тоже можно прикрутить прерывание, но источник прерывания будет один и соответственно приоритет и другие настройки (срабатывание по переднему/по заднему фронту) тоже одни и те же для всех входов подключенных к прерыванию ?
|
|
|
|
|
Jan 17 2011, 09:04
|
Ортодокс
  
Группа: Свой
Сообщений: 219
Регистрация: 26-10-07
Из: Смела, Украина
Пользователь №: 31 775

|
Цитата(kumle @ Jan 17 2011, 10:02)  Понятно, жаль что на моей отладочной плате на IRQ0 навесили кнопку ! Если не нужно "просыпаться" по нажатию кнопки, то ее как раз и можно просто повесить на GPIO. В противном случае можно, например, задействовать еще и FIQ. Цитата(kumle @ Jan 17 2011, 10:02)  А я правильно понимаю, что к другим (не к IRQ0/IRQ1) входам PIO тоже можно прикрутить прерывание, но источник прерывания будет один и соответственно приоритет и другие настройки (срабатывание по переднему/по заднему фронту) тоже одни и те же для всех входов подключенных к прерыванию ? Да. Для контроллера прерываний контроллер PIO является одним из множества источников прерываний.
|
|
|
|
|
Jan 17 2011, 09:39
|

Частый гость
 
Группа: Участник
Сообщений: 149
Регистрация: 15-12-09
Из: Москва
Пользователь №: 54 280

|
Цитата(aaarrr @ Jan 17 2011, 11:51)  Источник будет один от всего блока PIO, и этот источник будет внутренним, настроить его можно только на срабатывание по высокому уровню или положительному фронту. Эта настройка никоим образом не относится к самим сигналам PIO, прерывание всегда генерируется по любому фронту. То есть если я правильно понял, то тут некая двойственность при настройке прерываний от входов PIO? И еще немного непонятно что такое срабатывание по высокому уровню (с фронтами понятно.)
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|