Arduino(любой МК) - синхронный вывод портов

Ruslan_R
Offline
Зарегистрирован: 18.07.2021

Есть ардуино или любой другой МК.

Как сделать синхронное изменение сигналов на нескольких портах?

Если порт 8 выводов, то записывая побайтно в порт можно устанавливать сигналы сразу по 8 выводам.. А если нужно больше? 16, 24, 32?

Типа запись байта в порт А, затем в порт В, далее в С и команда установить АВС одновременно?

rkit
Offline
Зарегистрирован: 23.11.2016

Найти МК с таким функционалом и сделать.

Ruslan_R
Offline
Зарегистрирован: 18.07.2021

Ок. А есть название такого функционала? Хотябы знать что искать по даташитам?

b707
Offline
Зарегистрирован: 26.05.2017

у СТМ32 порты 16 бит - соответственно можно выводить 16 сигналов без всякого дополнительного "функционала"

У дуе порты 32 бита...

b707
Offline
Зарегистрирован: 26.05.2017

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

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

А зачем одновременность в микросекунды? Это что, имплозийный заряд в плутониевой боеголовке? О куда ардуина добралась! ;)))

Ruslan_R
Offline
Зарегистрирован: 18.07.2021

Есть старый комп типа Синклера. Там 60% компа это формирование сигналов управления. Хочется выкинуть эту часть и собрать на одном микроконтроллере.

Да понятно что есть специализированные БИС. Да понятно что и проект нафиг не нужен. Просто хочется.

rkit
Offline
Зарегистрирован: 23.11.2016

PIO в rp2040, например. Только многоразрядная синхронность не нужна в старых компьютерах.

Ruslan_R
Offline
Зарегистрирован: 18.07.2021

>>а еще проще сдвиговый регистр.

Да. Этот вариант довольно прост. Только для 24 выводов нужно будет уже 4 микросхемы ставить. Но зато МК намного проще и дешевле.

Logik
Offline
Зарегистрирован: 05.08.2014

Ruslan_R пишет:

Есть старый комп типа Синклера. Там 60% компа это формирование сигналов управления. Хочется выкинуть эту часть и собрать на одном микроконтроллере.

Да понятно что есть специализированные БИС. Да понятно что и проект нафиг не нужен. Просто хочется.

Так сигналы эти не с пустоты генерятся. Например дешифрация адреса. Проц выставил адрес и по старшим битам определяем куда он лезет. Эти биты нужно ввести быстро в МК, обработать а уж потом синхронно чего выводить. Тут быстродействие достаточно высокое надо. И тут же видиосигнал формировать. И все паралельно и быстро. Плохая задача для МК.

Green
Offline
Зарегистрирован: 01.10.2015

Ruslan_R пишет:

Хочется выкинуть эту часть и собрать на одном микроконтроллере.


Если речь о формирования сигналов на адресных шинах и шинах данных, то там не обязательно всё синхронно. Адрес должен быть установлен в течение какого то времени, данные - аналогично. Синхронность в этих случаях излишняя.

Ruslan_R
Offline
Зарегистрирован: 18.07.2021

Шиной адреса и данных там занимается проц z80/

Но до него куча управляющих сигналов (около 24) формируется примитивной логикой на толпе(около 20 микросхем. Формирование управление работой ОЗУ. Доступа к памяти. Видеосигналы и т.п.

В том числе 4 ПЗУ малой емкости. Вот этот зоопарк и хочется заменить одной - 2мя микрухами.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

Ruslan_R пишет:

Ок. А есть название такого функционала? Хотябы знать что искать по даташитам?

580BB55

SAB
Offline
Зарегистрирован: 27.12.2016

Операционку, что в пзу зашита, вы тоже собираетесь переписать под ваши 2 микросхемы? Это всё равно, что новый синклер 2 изобрести. :)))). По моему автор тролит нас.

Logik
Offline
Зарегистрирован: 05.08.2014

А по моему искренне заблуждается. Прогноз - идея умрет даже не нагрев паяльник.

b707
Offline
Зарегистрирован: 26.05.2017

Logik пишет:

А по моему искренне заблуждается. Прогноз - идея умрет даже не нагрев паяльник.

чем меньше человек знает. тем больше у него "сногсшибательных идей" :)

Logik
Offline
Зарегистрирован: 05.08.2014

b707 пишет:

Logik пишет:

А по моему искренне заблуждается. Прогноз - идея умрет даже не нагрев паяльник.

чем меньше человек знает. тем больше у него "сногсшибательных идей" :)

ага.

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

http://arduino.ru/forum/otvlechennye-temy/zx-spectrum-na-avr-mikrokontro...

Вот, на нашем форуме. Уже коллега сделал. Не нужно ретро-мастурбацией занимаццо! ;))

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

осталось выяснить какой практический смысл, в 90-х понятно я на нём столько контроллеров вязальных машинок поднял, но потом пришли Соболя, Шимасейки и прочие и всё, там уже IBM рулит...

Ruslan_R
Offline
Зарегистрирован: 18.07.2021

>>Операционку, что в пзу зашита, вы тоже собираетесь переписать под ваши 2 микросхемы?

Речь не про те ПЗУ, в которых прошивка работы проца. Там 4 РЕ РТ, которые гоняются по кругу счетчиками и формируют массив управляющих сигналов. Учитывая специфику работы счетчиков и ПЗУ в данном режиме имеем паразитные иглы 0 и 1 в этих сигналах. Вот эту кривую реализацию и хотелось заменить на контроллер, а не засыпать плату флажками для сглаживания этих "игл".

SLKH
Offline
Зарегистрирован: 17.08.2015

Ruslan_R пишет:

>>а еще проще сдвиговый регистр.

Да. Этот вариант довольно прост. Только для 24 выводов нужно будет уже 4 микросхемы ставить. 

4 откуда? 3 8-битных. или 2 16-битных на 32 выхода.

Ruslan_R
Offline
Зарегистрирован: 18.07.2021

>4 откуда? 3 8-битных. или 2 16-битных на 32 выхода.

Ну очевидно же, что 4й сам контроллер, который их шить будет.

А 16 битные регистры что за модель? На чипдип кроме 8 разрядных ничего не нашел.

Voodoo Doll
Voodoo Doll аватар
Offline
Зарегистрирован: 18.09.2016

подсказка: из двух 8-разрядных регистров можно сделать один 16разрядный. А можно 9разрядный, если остальные 7 выходов не нужны. и схема такая же почему-то.

SLKH
Offline
Зарегистрирован: 17.08.2015

Ruslan_R пишет:

>4 откуда? 3 8-битных. или 2 16-битных на 32 выхода.

Ну очевидно же, что 4й сам контроллер, который их шить будет.

А 16 битные регистры что за модель? На чипдип кроме 8 разрядных ничего не нашел.

"регистр сдвига 16 бит": "Результатов: примерно 228 000 (0,55 сек.) "