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

 
 
5 страниц V  < 1 2 3 4 5 >  
Reply to this topicStart new topic
> Внешний контроллер прерываний
GDI
сообщение Mar 6 2007, 18:52
Сообщение #31


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Так а чем тогда мега 1280/1281/... не катит?


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
aesok
сообщение Mar 6 2007, 18:54
Сообщение #32


Знающий
****

Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484



Цитата(prottoss @ Mar 5 2007, 17:11) *
Hi All!

Есть ли в природе внешние контроллеры прерываний типа 8259, только, может, более современные. Есть необходимость использовать таковой с ATmega128, т.к. практически все внешние линии INTx прерываний задействованны под другие функции

Попробуйте посмотреть на ATmega1280/1281, они дополнительно имеют 8/24 линии 'Pin Change Interrupt', может это то что вам нужно.

Анатолий.

Сорри, вы про них уже знаете.

Сообщение отредактировал aesok - Mar 6 2007, 18:57
Go to the top of the page
 
+Quote Post
prottoss
сообщение Mar 6 2007, 19:01
Сообщение #33


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(GDI @ Mar 6 2007, 22:52) *
Так а чем тогда мега 1280/1281/... не катит?
Во первых, уже заложена М128, во вторых практически все линии МК заняты...:-(


--------------------
Go to the top of the page
 
+Quote Post
kamedi_clab
сообщение Mar 6 2007, 19:19
Сообщение #34


Местный
***

Группа: Новичок
Сообщений: 239
Регистрация: 5-10-06
Пользователь №: 21 004



Цитата(prottoss @ Mar 5 2007, 17:11) *
Hi All!

Есть ли в природе внешние контроллеры прерываний типа


можно попробовать расширители i2c pfcXXXX philips - у них при изменении на любой из 16 ног дергается специальня нога.

Еще есть контроллер 22 линий у моторолы - теперь freescell.com
Go to the top of the page
 
+Quote Post
prottoss
сообщение Mar 6 2007, 19:33
Сообщение #35


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(kamedi_clab @ Mar 6 2007, 23:19) *
можно попробовать расширители i2c pfcXXXX philips - у них при изменении на любой из 16 ног дергается специальня нога.
Еще есть контроллер 22 линий у моторолы - теперь freescell.com
А че И2Ц-то??? Мож че на 1Ware подскажете?


--------------------
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Mar 6 2007, 20:42
Сообщение #36


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(Dog Pawlowa @ Mar 6 2007, 14:15) *
Про захват шины загнули, конечно...
Сигнал INTA работает как признак, означающий, что контроллеру нужно передать вектор.
И микроконтроллер своей логикой сразу после сохранения старого значения счетчика команд помещает этот вектор в счетчик команд.
При использовании неподдерживающего этот режим микроконтроллера все нужно реализовывать программно - прочитать вектор, и ручками перейти по этому адресу. Время, затраченное на вызов прерывания, будет намного больше независимо от того, на чем контроллер делать - на ПЛИС, использовать старый из мусорки или что-то еще.


Собственно спорить я не собираюсь, но так в порядке ответа Чемберлену.

А.Г.Алексенко и др. "Проектирование радио-электронной аппаратуры на микропроцессоре". стр.44.

"...с возможностью маскирования и динамического изменения дисциплины обслуживания. Для перехода к подпрограммам обслуживания прерываний контроллер формирует и подаёт на ШД процессора код команды CALL. Каскадированием БИС ...."

Цитата
Прерываний как раз 8 штук. Я, когда задавал вопрос, в даташите подробно не копаля в 8259, но принцип его работы знал. Плохо, конечно, что он заточен под 8080 и 8086. Про 8259 я упомянул, потому как внешне он красиво смотрится:
1.Наличие 8 линий прерываний
2.Наличие 8-и разрядной шины данных + набор стандартных сигналов (RD/WR/CS)
3.Настройка через внутренние регистры.


Работа ч/з внутренние регистры Вам ничего не даст. То есть удобства не добавит. Это же не внутренняя переферия. Всё равно придётся опрашивать-анализировать-переходить на подвектор. Подвесить 8259A конечно можно, но ещё одна засада. Макс. F=5МГц. smile.gif Ну и в серийное изделие я бы не закладывал. Он будет дороже чем ATMEGA128. smile.gif
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Mar 6 2007, 21:49
Сообщение #37


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Критикуйте. smile.gif
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Alex_Pol
сообщение Mar 7 2007, 00:20
Сообщение #38


Частый гость
**

Группа: Свой
Сообщений: 192
Регистрация: 23-03-05
Из: Украина. Днепропетровск
Пользователь №: 3 626



Дык, ног свободных у prottossа, в смысле, у его меги 128, нет.

Сообщение отредактировал Alex_Pol - Mar 7 2007, 00:22
Go to the top of the page
 
+Quote Post
aesok
сообщение Mar 7 2007, 00:31
Сообщение #39


Знающий
****

Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484



Чего-то я prottossа не понимаю. Вместо 128 меги поставить 1280-ную и получить дополнительно 32 линии ввода выводы из них 16 с прерываниями по изменению состояния он не может. А поставить рядом плисину с которыми не работал или микросхему 30-летней свежести пожалуйста.... странно.

Анатолий.
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Mar 7 2007, 00:33
Сообщение #40


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(Alex_Pol @ Mar 7 2007, 01:20) *
Дык, ног свободных у prottossа, в смысле, у его меги 128, нет.


Так она вешается как ячейка памяти. То есть из ног берёт не больше чем 8259, если её прикручивать. То есть одну ногу.
Go to the top of the page
 
+Quote Post
=GM=
сообщение Mar 7 2007, 02:10
Сообщение #41


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(SasaVitebsk @ Mar 6 2007, 18:49) *
Критикуйте. smile.gif

Что будет, если на RS-триггер подать ноль на R-вход и S-вход одновременно?
Имею в виду, какое будет состояние на выходе?

Кроме того, что будет, если IRQn будет достаточно продолжительным по времени, по сравнению с временем обработки всех прерываний?


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
Dopler
сообщение Mar 7 2007, 08:22
Сообщение #42


Местный
***

Группа: Свой
Сообщений: 437
Регистрация: 23-04-05
Из: Таганрог
Пользователь №: 4 425



Цитата(aesok @ Mar 7 2007, 00:31) *
Чего-то я prottossа не понимаю. Вместо 128 меги поставить 1280-ную и получить дополнительно 32 линии ввода выводы из них 16 с прерываниями по изменению состояния он не может. А поставить рядом плисину с которыми не работал или микросхему 30-летней свежести пожалуйста.... странно.

Анатолий.


Согласен, Мега1280 со всех сторон новее, в два раза больше таймеров, ОЗУ, USART, внешних прерываний, 100! ножек корпуса, за дополнительные 3$ по сравнению с устаревающей мегой 128.
Самая дешевая (и маленькая) плис Altera будет иметь те же 100 ножек и стоить минимум 6$, а ей еще нужны такты подавать.
Go to the top of the page
 
+Quote Post
beer_warrior
сообщение Mar 7 2007, 10:28
Сообщение #43


Профессионал
*****

Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380



Цитата
Самая дешевая (и маленькая) плис Altera будет иметь те же 100 ножек и стоить минимум 6$, а ей еще нужны такты подавать.

Будет стоить $2 и синхронизм ей не обязателен.

По теме. Варианты SasaVitebsk вполне правильны, только вот триггера стоило бы использовать JK. А вместо регистра - приоритетный шифратор. Тогда на 3 ноги можно будет пустить 8 прерываний. А в коде, сразу после захода в прерывание анализировать состояние соответсющего порта, и отправлять к соответсвующей строке в look-up table. Конечно по сравнению с внутренним механизмом будет медленнее, но это плата за работу с любой периферией.


--------------------
Вони шукають те, чого нема,
Щоб довести, що його не існує.
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Mar 7 2007, 11:40
Сообщение #44


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(SasaVitebsk @ Mar 6 2007, 21:42) *
Цитата(Dog Pawlowa @ Mar 6 2007, 14:15) *

Про захват шины загнули, конечно...
Сигнал INTA работает как признак, означающий, что контроллеру нужно передать вектор.
И микроконтроллер своей логикой сразу после сохранения старого значения счетчика команд помещает этот вектор в счетчик команд.

Собственно спорить я не собираюсь, но так в порядке ответа Чемберлену.
А.Г.Алексенко и др. "Проектирование радио-электронной аппаратуры на микропроцессоре". стр.44.
"...с возможностью маскирования и динамического изменения дисциплины обслуживания. Для перехода к подпрограммам обслуживания прерываний контроллер формирует и подаёт на ШД процессора код команды CALL. Каскадированием БИС ...."

Чего не люблю, так это подмены понятий и определений и такого ссылки на якобы авторитетов, которые быть может и с микропроцессорами то не работали. Уровень книжек в те времена был удручающе низкий. Теперь удручает цитирование этих книжек.

Захват шины - это было сказано? Было. Было сказано даже про какой-то запрет ОЗУ. - "На сколько я помню 8259(кр580вн59) и 8259А (кр1810вн59а) банально отключают озу программы и выставляют код команды перехода по прерыванию."
Ну что за бред? Если Вы это тоже вычитали, еще понятно. Но если Вы это помните??!!!

Захват шины - это ситуация, когда вместо основного мастера работает другой. Например, вместо микропроцессора - контроллер прямого доступа. Или сервисный пульт, подключенный к шине.
В процессе передачи вектора от контроллера прерываний в микроконтроллер мастером продолжает являться микроконтроллер. Конечно, "Контроллер формирует и подает", но только под управлением сигнала INTA, приходящего от микропроцессора. То есть захват шины отсутствует напрочь. А уж блокировка ОЗУ... Какая еще блокировка, если в этот момент обращение к ОЗУ не производится, чего его блокировать?
Так что Вы лучше определитесь - или Вы спорите, или что ... Очень не хотелось бы наблюдать тут пропаганду безграмотности.
Успехов smile.gif


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
upc2
сообщение Mar 7 2007, 12:33
Сообщение #45


Знающий
****

Группа: Свой
Сообщений: 506
Регистрация: 29-09-05
Из: Донецк
Пользователь №: 9 063



Цитата(SasaVitebsk @ Mar 6 2007, 21:49) *
Критикуйте. smile.gif


Все это можно заменить 8 диодами и 1 конденсатором .Я так и делаю.
Go to the top of the page
 
+Quote Post

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

 


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


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