tronix286 0 December 30, 2015 Posted December 30, 2015 · Report post Использовать два порта, с одного читать, в другой записывать? Может, так проще? Ну как проще.... Для стм - проще, а для шины данных все равно защелку ставить. Quote Share this post Link to post Share on other sites More sharing options...
ViKo 2 December 30, 2015 Posted December 30, 2015 · Report post Извращаясь: Порт работает постоянно на ввод, по фронту /RD записывает IDR в память через DMA. С инкрементом или без, как надо. В момент среза /WR в MODE по DMA из переменной в памяти записывается режим Выход. В момент фронта /WR по DMA из другой переменной в памяти записывается режим Вход. По одному из этих фронтов в ODR записываются нужные данные по DMA. С инкрементом или без. Но гда взять столько каналов DMA? Quote Share this post Link to post Share on other sites More sharing options...
VCucumber 0 December 30, 2015 Posted December 30, 2015 · Report post 8 Mhz и 4 такта на цикл - даже аврка справится Использовать два портаывать? лучше 8 spi Quote Share this post Link to post Share on other sites More sharing options...
jcxz 81 December 30, 2015 Posted December 30, 2015 · Report post лучше 8 spi Или quad-SPI в Tiva, работающий вроде как до SCLK == 60 МГц. Или 8 сериализаторов SGPIO в LPC43xx. Или 8 сериализаторов McASP в TI-шных OMAP и DSP. Вобщем - использовать что-то готовое и последовательное с полным аппаратным трактом FIFO+DMA. PS: А скорей всего для задачи ТСа есть гораздо более простое решение, но он её не озвучивает, а кругозор его ограничен одним STM32, поэтому и нагромождает колхоз... Тут мельком прозвучали фразы "8-разрядная шина" и "USB", так может достаточно будет CY7C68013A ? :) Quote Share this post Link to post Share on other sites More sharing options...
VCucumber 0 December 30, 2015 Posted December 30, 2015 · Report post я бы начал с вопроса а где вообще сегодня взять ису Quote Share this post Link to post Share on other sites More sharing options...
kovigor 1 December 30, 2015 Posted December 30, 2015 · Report post я бы начал с вопроса а где вообще сегодня взять ису Наверное, в каких-нибудь промышленных компьютерах. Пусть разъем не тот, что был в персоналках, но реализация та же. Называется "PC/104" ... Quote Share this post Link to post Share on other sites More sharing options...
adnega 7 December 30, 2015 Posted December 30, 2015 · Report post Всем любителям DMA повторю (ибо, не раз уже обсуждали): DMA хорош для больших кусков данных, где не важны задержки, а важна средняя скорость. Для перекидывания одного байта, но часто и с минимальными задержками DMA не подходит, т.к. от момента инициализации DMA-транзакции, до самой пересылки данных может пройти время, порядка 12 тактов. PS. Я тоже очень сильно люблю DMA и очень часто его использую. Quote Share this post Link to post Share on other sites More sharing options...
VCucumber 0 December 30, 2015 Posted December 30, 2015 · Report post pc104 не модно, в моде бананы с линухом Quote Share this post Link to post Share on other sites More sharing options...
LLLLLLLLLL 1 December 31, 2015 Posted December 31, 2015 (edited) · Report post Вопрос встает не тогда, когда нужно кого то там дергать, а когда тебя (микроконтроллер) дергают. А именно, когда пришел сигнал чтения /RD, перевести восемь ног из hi z в output, выдать на них байт и уйти по спаду /RD быстренько опять в hi-z. Желательно за детерминированное время, а не как получится. Потому что пару раз может получится, а третий - нет. Вдруг пригодится. Писал в песочнице, но там благодарности не последовало :) Настройки GPIOx семейства STM32F0xx Если сконфигурировать ногу как выход open drain и подвесить к + питания, то функционирует и опрос ноги как входа, например: GPIO_ReadInputDataBit(GPIOC, GPIO_PIN_1) Это может пригодиться тем, кто хочет смастерить, к примеру, шину MicroLAN или i2c Edited December 31, 2015 by =L.A.= Quote Share this post Link to post Share on other sites More sharing options...
adnega 7 January 8, 2016 Posted January 8, 2016 · Report post Вдруг пригодится... Копаюсь сейчас в закромах - нашел МК типа 80C42C. Идеальное аппаратное решение для 8-битного слейва, правда, далеко не STM32, но какое-то 8-битное ядро содержит (скорее всего семейства MSC-48). Quote Share this post Link to post Share on other sites More sharing options...
jcxz 81 January 9, 2016 Posted January 9, 2016 · Report post Идеальное аппаратное решение для 8-битного слейва, правда, далеко не STM32, но какое-то 8-битное ядро содержит (скорее всего семейства MSC-48). Идеальное решение: CY7C68013A Quote Share this post Link to post Share on other sites More sharing options...
khach 13 January 9, 2016 Posted January 9, 2016 · Report post А какая скорость шины параллельной? Делали набор регистров на параллельной шине, а STM32 забирал по ДМА. Можно было даже FIFO-шку 7202 поставить. Все равно 3.3 вольтовую шину STM надо согласовывать с 5 вольтовой параллельной шиной. Кстати, такое извращение часто случается при модернизации древних приборов. К сожалению 5v-tolerant FPGA не осталось в природе и приходится заниматься мазохизмом. Вот недавно эмулятор Z80 на STM32 ваяли, но там параллеьная шина была ведущей со стороны STM32, так что было проще. C одной очень скоростной шиной реализовали прием через DCMI- там скорости вообще запредельные для старого харда. Quote Share this post Link to post Share on other sites More sharing options...
vad74 0 July 20, 2016 Posted July 20, 2016 · Report post Чем в итоге закончились поиски варианта стыковки с ISA шиной? Стоит таже задача. Может нашли более подходящий проц чем STM32? Quote Share this post Link to post Share on other sites More sharing options...
jcxz 81 July 20, 2016 Posted July 20, 2016 · Report post Чем в итоге закончились поиски варианта стыковки с ISA шиной? Стоит таже задача. Может нашли более подходящий проц чем STM32? А чем Вас не устроили рекомендованные варианты? что будет - 200 мгц стм против 2 мгц исы - порвет как тузик грелку Или грелка тузика порвёт Quote Share this post Link to post Share on other sites More sharing options...