Jump to content

    
Sign in to follow this  
pvman

Десять УАРТов

Recommended Posts

Здравствуйте, коллеги!

Для одной задачи нужно собрать девайс с 10 уартами.

Уменьшить количество не получается, т.к. нужно работать с этими потоками,

смешивать из них данные и т.д.

Понадобится как минимум два контроллера STM32, у которых по 6 уартов на борту.

Как осуществить обмен между ними? Есть ли грамотные решения для быстрого доступа к данным другого мк?

 

скорость по уартам - 250килобит/с

Share this post


Link to post
Share on other sites

смотря что и как смешивать, и с какими временнЫми (мин, макс) задержками.

имхо, так похоже, что это будет нормальная задача для ПЛИС.

Share this post


Link to post
Share on other sites
Для одной задачи нужно собрать девайс с 10 уартами.

 

Понадобится как минимум два контроллера STM32, у которых по 6 уартов на борту.

Как осуществить обмен между ними? Есть ли грамотные решения для быстрого доступа к данным другого мк?

 

скорость по уартам - 250килобит/с

Вопросов достаточно...

10 УАРТов, и что данные так и прут потоком?

Тогда применяя 2 процессора - считаем. С одной стороны на каждый подвешено 5 УАРТов и надо данные от них получать. А с другой стороны надо получать еще столько же данных из второго процессора и еще столько же туда отдать. Ну это если алгоритм требует полной картины. И при этом, данные от входов могут идти потоком, но данные между процессорами потребуют либо аппаратных сигналов, стробирующих кадры, либо при программной синхронизации потребуется протокол передачи данных. Сборка данных в кадры и разборка полученных данных. Да еще метки времени, наверняка и они понадобятся....

И мне кажется, что весь процессор на это и рухнет...

 

Или с такой скоростью надо опрашивать датчики, чтобы выловить изменения каких-то данных в потоке? Вот тогда здесь другие правила игры. Тогда можно сделать несколько дешевых контроллеров, чтобы они обрабатывали входные потоки на предмет изменений. И уже сжатый поток передавать на обработку...

 

Вот почему сказано "STM32"? Только потому что у него есть УАРТы? Типа это "Гайка М3"....

Почему бы не нарисовать алгоритм в виде блок-схемы. На нем указать потоки данных, объемы памяти, требуемые для обмена. И только потом из алгоритма рисовать блок-схему "вычислителя"... И в варианте с отдельным контроллером в ПЛИС или с гроздью 8-ми битных контроллеров для обработки УАРТов...

Так что скажете?

Share this post


Link to post
Share on other sites
Как осуществить обмен между ними? Есть ли грамотные решения для быстрого доступа к данным другого мк?

скорость по уартам - 250килобит/с

На i.MX RT1050 можно сделать минимум 16-ть UART-ов на базе Flexible I/O

Это не считая 8-и встроенных нативных UART-ов

Share this post


Link to post
Share on other sites

Если нужно много UART-ов да ещё с большой скоростью, то STM32 пожалуй будет самым худшим выбором. Ну разве, что немного лучше чем AVR :biggrin:

Хотя если "без куба - никуда", то тут уже ничего не попишешь.... :laughing:

Share this post


Link to post
Share on other sites
Здравствуйте, коллеги!

Для одной задачи нужно собрать девайс с 10 уартами...

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

Когда вся картина будет понята, тогда и можно будет предлагать решения.

Сейчас слишком много неизвестных подробностей, которые кардинально могут все изменить...

Edited by @Ark

Share this post


Link to post
Share on other sites

Nuvoton семейство NUC970 - даташит говорит о 10 полноценных UART-ах (!).

Полноценные - это значит имеющие FIFO. 6 из них - глубиной 64 байта, 4 - глубиной 16 байт.

Сколько выведено на пины - нужно смотреть конкретный корпус.

Tiva (tm4c129) - 8 полноценных UART-ов (16-byte FIFO) + ещё 2 можно эмулировать программно.

Share this post


Link to post
Share on other sites
Есть минус - внешняя флешка.

Этот минус ничтожен по сравнению с необходимостью ставить 2 МК (как собирается автор), писать в них две прошивки, писать между ними обмен и т.п.

Share this post


Link to post
Share on other sites

Вот бы посмотреть видео как будет создаваться программа для NU....

Начиная от монтажа на плату и заканчивая обменом данными.

 

P.S. Видимо простой вариант с MAX14830 не подходит по уровню геморроя.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this