Бобины потом вычитывать лупой будете?
Вид для печати
Этот 5300 нужен, в основном, чтобы прочитать кучу старых лент. У многих, кто работал с СМ-ками, таких лент стопки не в один десяток. Да, большинство файлов на них - мусор, но кое-что там таки должно быть... И подключить этот магнитофон к МПИ - очень полезное дело. Причем крайне желательно, чтобы его контроллер был совместим с чем-то распространенным. Конкретно, лучше всего на эту роль подходит МТ. Да, он Unibus-ный, т.е. адрес у него 18-битнвй, но прочитать залежи лент, а то и попытаться что-то загружать с этих лент это не помешает.
Управление собственно магнитофоном - не такая уж напряжная операция, туда годится любой многоногий контроллер - та же 64-я АТмега, просто для STM32 меньше проблем с отладкой - отладчик для АТмеги сильно дороже, да и не очень он удобен, а St-link и сильно дешевле, и намного функциональнее.
Так, что затолкать в кузов к этому магнитофону платку со 100-ногим STM32 и набором шинных драйверов, и вперед. Если не врет мой склероз, там все сигналы с открытыми коллекторами, рассчитанными на подтяжку 150 Ом к +5В, и, вроде-бы, все сигналы однонаправленные. То есть от STM32 к НМЛ передаем через 155ЛН3/ЛП9 (вернее, через 74LS06/07, их на Али валом и дешево), а в STM32 принимаем от НМЛ напрямую, просто подтяжку 150 Ом подключаем не к +5В, а к +3.3. Если вдруг где таки нарисуется двунаправленная шина, ставим драйвером 351АП2, тоже без вопросов. Цепляем все шнурки на GPIO контроллера и дальше все решается программированием на простом (не приплюснутом) Си.
Почему я предлагаю две СТМ-ки, а не одну? Все просто. Я работал с одним из самопальных кондукторов МТ, тем, который на "половинке", творение новосибирского СКБ НП. Очень неудобен этот здоровенный шлейф, идущий от кондуктора к НМЛ. Это во-первых. Ну, и, во-вторых, программа обслуживания НМЛ должна быть синхронной - там же надо жестко выдерживать времянки. Программа обслуживания МПИ (по моему опыту с AZ) тоже проще синхронная, тогда от программируемой логики требуется совсем немного и годятся простые CPLD, вон, на AZ я вообще ГАЛками обошелся. А две синхронных программы на одном МК могут работать только по очереди, а надо одновременно. Ну, и интерфейс между этими двумя МК можно сделать каким-нибудь простым - UART, SPI, в общем, чтобы не больше 10 проводков...
Всё-равно не понимаю зачем две STM.
Собрать чисто читалку на одной STM. С SD картой. для _чтения_ с ленты в SD карту, без подключения к МПИ.
А уж потом с файлами хоть в эмуляторе, хоть в живую машину эти файлы засунуть любым способом.
стоимость STM-а cовсем не велика и если проще программировать то лучше две чем одну
да, соединять проще через SPI - это 4 провода включая землю
если делать тупо считывалку то да, можно обойтись и одной STM-кой - той же 407 к примеру. ног много, частота 168MHz - те успеем что надо сделать и записать на карту тоже
ps: главный недостаток атмег это очень мало оперативной памяти - в 328й 2КБ в 64й - 4КБ против 20КБ в самой младшей STM32F103
соответственно это вылезает в проблемы со стеком и прочие приколы.
dk_spb,
Именно это я и предлагал. Совсем не чему подключать не нужно.
То есть, по принципу "тупой, но гордый" скопировать всю ленту не глядя? Можно, конечно. Только иногда полезно таки порулить процессом копирования. И я вижу всего два варианта - или прицепить это дело к МПИ и рулить нативными средствами, или цеплять это дело к писюку и сочинять отдельную программу, которая будет рулить процессом.
Чем там рулить-то?
И кто мешает сделать это руление в STM, с терминальным интерфейсом (менюшкой) по последовательному порту?
Нативные средства рулят только тогда, когда совпадают все контрольные суммы. Для старых лент это в общем случае не так, поэтому в эмуляторе ДВК для образов 9-битных лент используется специальный 16-битный формат, где в младшем байте записаны 8 битов данных, а в старшем байте - бит чётности.
При записи данных на магнитную ленту производится двойной контроль чётности: 1) вертикально для каждого байта - в девятом бите; 2) горизонтально для каждой из 9 дорожек в последних 9 битах пакета.
Единственный (на мой взгляд) логичный подход - делать образы целых лент, причём копировать в образ ленты вообще всё, включая межблочные промежутки, в которых лента полностью размагничена. Внутри дековского контроллера MT именно так и происходит - по сигналу тактового генератора содержимое выходов головки чтения копируется в: 1) буфер контроллера; 2) тестовый регистр контроллера на шине МПИ.