Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 02.09.2005, 09:30  
micha
Прохожий
 
Регистрация: 02.09.2005
Сообщений: 2
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
micha на пути к лучшему
По умолчанию Intel 8051

Нужно разработать схему, позволяющую реализовать 8-векторную схему прерываний с использованием Intel 8051. Помогите, пожалуйста.
Реклама:
micha вне форума  
Непрочитано 02.09.2005, 15:36  
nml
Супер-модератор
 
Аватар для nml
 
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,378
Сказал спасибо: 1,948
Сказали Спасибо 1,327 раз(а) в 578 сообщении(ях)
nml на пути к лучшему
По умолчанию Re: Intel 8051

Сообщение от micha
Нужно разработать схему, позволяющую реализовать 8-векторную схему прерываний с использованием Intel 8051. Помогите, пожалуйста.
Вопрос - а зачем это? Я не сильно большой спец в схемотехнике, но тут кажется парой корпусов логики не обойдешься. Не проще ли взять другой микроконтроллер, у которого достаточно векторов, или хотя бы МК, у которого есть возможность получить прерывания по изменению состояния порта - пусть вектор один, далее прочитав порт - передать управление куда надо...
nml вне форума  
Непрочитано 04.09.2005, 09:16  
Гость
 
Сообщений: n/a
По умолчанию

Конечно проще, но я хочу разобраться с этой задачей и понять как это делается.
 
Непрочитано 04.09.2005, 10:40  
nml
Супер-модератор
 
Аватар для nml
 
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,378
Сказал спасибо: 1,948
Сказали Спасибо 1,327 раз(а) в 578 сообщении(ях)
nml на пути к лучшему
По умолчанию

Сообщение от Anonymous
Конечно проще, но я хочу разобраться с этой задаче и понять как это делается.
Ну, полноценные вектора получить, ессно, не удастся.
То есть - прерывание будет одно, а уж в обработчике надо принять решение- что вызвало.

Если примитивно - то свести 8 линий в одну по ИЛИ и дать возможность те 8 линий процессору читать (завести на порт). Но тут будет куча вопросов... Например, короткий импульс - прерывание вызвал, а пока процессор дошел до чтения порта - его уже нет. Или, например, появление за это время еще одного сигнала.

Тут не так все просто, как на первый взгляд. Не зря в свое время была специальная микросхема - ВТ37, кажется - контроллер прерываний, которая все это делала.
nml вне форума  
Непрочитано 04.09.2005, 10:45  
Adviser
Почётный гражданин KAZUS.RU
 
Регистрация: 07.03.2005
Сообщений: 1,056
Сказал спасибо: 1
Сказали Спасибо 250 раз(а) в 174 сообщении(ях)
Adviser на пути к лучшему
По умолчанию контроллер прерываний

Был такой контроллер прерываний КР580ВН59, его (или его аналог) можно наверно задействовать вместе с 51.
Adviser вне форума  
Непрочитано 11.09.2005, 10:41  
Гость
 
Сообщений: n/a
По умолчанию

ожно попробовать после получения прерывания первым делом считать содержимое порта а потом уже разбираться с ним контроллер прерываний намного надежнее при этом можно иметь вариации с системой прерываний. один вопрос а зачем нужно столько линий прерывания?
 
Непрочитано 12.09.2005, 00:01  
Bill
Гражданин KAZUS.RU
 
Регистрация: 02.06.2003
Адрес: Челябинск
Сообщений: 545
Сказал спасибо: 10
Сказали Спасибо 339 раз(а) в 202 сообщении(ях)
Bill на пути к лучшему
По умолчанию А разве в 51-м не векторная система прерываний?

???
Bill вне форума  
Непрочитано 12.09.2005, 10:09  
Гость
 
Сообщений: n/a
По умолчанию

да по поводу контроллера прерываний он не будет работать с этим камнем т.к. вещь привязана к 580 и 1810 изначально. он генерирует код команды call и адрес перехода на пп обработки прерывания. см описание у Шахнова и ко.
 
Непрочитано 12.09.2005, 11:56  
prottoss
Прописка
 
Регистрация: 17.03.2005
Сообщений: 122
Сказал спасибо: 1
Сказали Спасибо 33 раз(а) в 7 сообщении(ях)
prottoss на пути к лучшему
По умолчанию

Контроллер прерываний 580Вн59, а так же 1810Вн59 будет работать с 8051 на 100%. Ни какой код команды call эти контроллеры не генерируют. Они выставляют однобайтный код команды RSTx, где х - номер вектора прерываний в таблице векторов, аналогично как у 8051. Только в 8051 каждый вектор отвечает, за какое то внутреннее устройство (напимер от счетчика, или от приемопередатчика USART), в 8080 (он же русский 580ВМ80 ) же все переходы (8 штук) в таблице переходов равнозначны, а процессор имеет всего один вход запроса на прерывание. В начале старта 8080 программирует внешний контроллер прерываний, в плане приоритета векторов и срабатывания по уровню, или переходу внещних прерывающих сигналов. Во время возникновения прерывания, на специальном выходе контроллера возникает сигнал прерывания. Этот сигнал необходимо завести на один из входов внешнего прерывания 8051. После считывания номера вектора прерывания (не кода команды call ), 8051 обрабатывает этот номер и переходит на подпрограмму обработки. Т.о достаточно для 8051 написать обработчик внешнего прерывания, напримерн INT0, который будет считывать вектор прерывания из ВН59 и переходить на подпрограмму обработки.
__________________
http://prottoss.com
prottoss вне форума  
Непрочитано 12.09.2005, 12:04  
prottoss
Прописка
 
Регистрация: 17.03.2005
Сообщений: 122
Сказал спасибо: 1
Сказали Спасибо 33 раз(а) в 7 сообщении(ях)
prottoss на пути к лучшему
По умолчанию

Да, чуть не забыл, после того как МК обработает прерывание, по специальному сигналу подать сигнал "прерывание обработано", чтобы контроллер прерываний мог хромать дальше.
Вобщем для подцепления 8259 (так контроллер прерываний маркируется у INTEL) к микроконтроллеру с архитектурой 8051, да и к любому другому МК, достаточно 10 линий ввода-вывода. 8 линий (полностью порт) для организации шины данных между МК и контроллером прерываний, линия для подтверждения обработки прерывания, и линия для обнаружения прерывания. В идеале эта линия должна быть линией внешнего прерыания для МК, но пожно использовать и простую линию ввода-вывода. Но в этом случае МК должен циклически опроашивать эту линию для своевременного обнаружения прерыания.
__________________
http://prottoss.com
prottoss вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Intel Hex poluska Микроконтроллеры, АЦП, память и т.д 1 29.07.2009 16:38
сопряжение intel 8051 и PC через шину ISA Skobl Микроконтроллеры, АЦП, память и т.д 0 28.05.2006 23:25
Помогите с HSO.0 на МК 8ХС196KC(Intel) Константин Микроконтроллеры, АЦП, память и т.д 0 07.05.2005 19:21
Вопрос по микроконтроллеру intel 80c51. макс Микроконтроллеры, АЦП, память и т.д 8 23.02.2005 19:04
процессор intel 80960ka/kb alexgeo Микроконтроллеры, АЦП, память и т.д 0 29.05.2003 08:42


Часовой пояс GMT +4, время: 04:05.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot