Перейти к содержанию
    

Шина для подключения внешних модулей к микроконтроллеру

Разрабатываю устройство на микроконтроллере ARM7 или ARM9 (пока выбрал LPC2292), которое требует подключения дополнительных модулей (например, модуль с АЦП или Ethernet). Модули устанавливаются в материнскую плату устройства. Посоветуйте какую шину лучше использовать для обмена с этими модулями.

Требования к шине: минимальная нагрузка на проц, возможность обработки прерываний и главное минимальная цена. Требования к скорости в цифрах привести не готов, но наверно самым требовательным модулем будет Ethernet.

Пока остановился на интерфейсе подключения внешней памяти (CS, адрес, данные, WE, OE) + селектор адреса + собственный простенький контроллер прерываний. В принципе, получается что-то похожее на ISA, но без DMA. К такой шине легко можно подключить и параллельный АЦП и Ethernet контроллер (например, CS8900A). Но хочется использовать что-то более стандартное. Может кто подскажет какие еще могут быть варианты?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тащить наружу интерфейс внешней памяти, не очень удачная идея, для просессора такого класса!

Дешево не получится, одни разъемы будут стоить дороже чем микроконтроллер.

 

Внешний АЦП логичнее подключить на I2C

 

если нужен ethernet то гораздо дешевле взять ARM с ethernet на борту

например STR9 или LPC23xx (они правда пока только семплы)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно прикрутить ПЛИС как память, а из нее уже вытащить все что нужно для конкретной задачи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Внешний АЦП логичнее подключить на I2C

если нужен ethernet то гораздо дешевле взять ARM с ethernet на борту

например STR9 или LPC23xx (они правда пока только семплы)

Мне нужна универсальная шина для расширения функциональности базового устройства. А так получится для каждого дополнительного модуля свой интерфейс. А Ethernet и АЦП я привел для примера, завтра может понадобиться подключить что-то другое.

 

Можно прикрутить ПЛИС как память, а из нее уже вытащить все что нужно для конкретной задачи.

А куда ПЛИС ставить? На материнскую плату или на каждый внешний модуль?

Если на материнскую плату, то как например отключить модуль Ethernet и подключить вместо него какой-нибудь другой?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мне нужна универсальная шина для расширения функциональности базового устройства. А так получится для каждого дополнительного модуля свой интерфейс. А Ethernet и АЦП я привел для примера, завтра может понадобиться подключить что-то другое.

А куда ПЛИС ставить? На материнскую плату или на каждый внешний модуль?

Если на материнскую плату, то как например отключить модуль Ethernet и подключить вместо него какой-нибудь другой?

 

На материнку ставьте и меняйте прошивку в ПЛИС под ваши задачи. ПЛИС можно и на высокие частоты разогнать и DMA реализовать, да что угодно в ПЛИС можно сделать.

 

Более бюджетный вариант вытащить все свободные порты контроллера на разъём. Будет у Вас наружу торчать I2C, SPI, UART, CAN и внешняя шина. Если что-то экзотическое, то реализуете времянку на портах .

 

Хотя так ли уж нужна Вам универсальность? Отдельная плата + ПЛИС + толстый разъём, а это деньги. В погоне за универсальностью монстр может получиться.

 

Если уж так надо, то на материнке к контроллеру цепляйте базовые интерфейсы обмена: Ethernet, USB, RS232/RS485. А для управления внешними устройствами либо вытаскивайте оставшиеся порты на разъём, либо подключайте ПЛИС.

 

Может подобные платы в виде Китов и купить можно и делать ничего не надо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...