 |
nedoPC.orgElectronics hobbyists community established in 2002 |
 |
Еще один "Специалист" в Proteus
Author |
Message |
fifan
Devil
Joined: 06 Oct 2006 03:17 Posts: 827 Location: г.Лянтор,Сургутского р-на,ХМАО
|
Не большой фотоотчёт. Перепаял на новый холдер резисторы, подвёл питание, цепи проверил по схеме. Скажу сразу добиться работы SD контроллера не удаётся. На первом фото - по директиве X должен быть переход в RAMFOS, экран становится синим, комп зависает.  на втором фото - по директиве U загораются два светодиода, надпись на экране - инициализация.  на третьем фото - если вытащить карту, то высвечивается соответствующая надпись. Если вставить карту - инициализация. 
|
07 Jan 2017 02:50 |
|
 |
fifan
Devil
Joined: 06 Oct 2006 03:17 Posts: 827 Location: г.Лянтор,Сургутского р-на,ХМАО
|
Так как симуляция этой схемы также проверялось в Протеусе, то я продолжаю писать в эту тему. Вот исправленная мною схема SD интерфейса, собранного на плате Специалиста_МХ2. SD холдер и резисторы преобразователей уровня и подтяжки распаяны на монтажном поле, это кстати видно на фотографиях. 
Last edited by fifan on 12 Feb 2017 08:19, edited 2 times in total.
|
08 Jan 2017 00:12 |
|
 |
fifan
Devil
Joined: 06 Oct 2006 03:17 Posts: 827 Location: г.Лянтор,Сургутского р-на,ХМАО
|
Схему заменил. С моего сайта.
|
08 Jan 2017 11:24 |
|
 |
PVV
Doomed
Joined: 12 Feb 2016 13:39 Posts: 461
|

Повторять то, что я писал в теме о подключении SD к РК86 я не буду, а продолжу проработку подключения SD интерфейса применительно к 'Специалисту' здесь. Подключение SD на шину данных ПК весьма скоростное, но это же и делает проблемы... длительность сигнала WR очень маленькая, особенно это создает проблемы при малых частотах тактирования SD в момент начальной инициализации, и тот 'фокус', который сработал в РК86, здесь не проходит. WR нужно удлинить, и сформировать в нужный момент относительно CLK для записи в сдвиговый регистр, но к тому времени, как этот новый сигнал записи будет сформирован, на шине данных данных то уже не будет... процессор ведь дальше работает... значит эти данные нужно где-то запомнить - пришлось добавить еще и регистр на запоминание того, что же мы пишем в сдвиговый регистр. В процессе отработки увидел, что ТМ7 здесь лишняя, а формирование CLK_SD карты можно сделать гораздо проще, на основе уже имеющихся в схеме сигналов и возможностей самой ИР9. во общем, вот такая схема у меня получилась на этот момент - Такой вариант схемы должен работать независимо от процессорного такта. На 1ю ножку U16 надо подавать 2.5Мгц, меньше нельзя, тк в текущей версии sd_dos нет анализа состояния сигнала busy и при меньших частотах происходит 'переполнение запросов' на запись на этапе начальной инициализации. 'В железе' я эту схему еще не повторял, но планирую это сделать...
|
25 Jan 2017 08:05 |
|
 |
Error404
Maniac
Joined: 05 Oct 2006 04:45 Posts: 269 Location: Moscow
|
А насколько необходим этап начальной инициализации (ЕМНИП 400кгц? растущие еще из ММС) с современными картами SD, тактирование которых в UHS режиме в "больших устройствах" уже идет на сотни(!) мегагерц? Спрашиваю сугубо из соображений того, что схему можно было бы на треть уменьшить, будь это требование инициализации пережитком. В ПЛИС то понятно что пофиг, а вот кому на рассыпухе собирать - имеет смысл сократить кусок.
_________________ Всем добра!
|
11 Feb 2017 02:46 |
|
 |
jdigreze
God
Joined: 02 Jan 2006 02:28 Posts: 1390 Location: Abakan
|
На мою "старческую" память, даже старые эСДишки "заводились" на мегагерце.
|
11 Feb 2017 06:11 |
|
 |
PVV
Doomed
Joined: 12 Feb 2016 13:39 Posts: 461
|
В своих экспериментах я делал инициализацию на 2 и 2.5Мгц, как минимум с двумя картами microSD на 2ГБ и с одной картой microSD на 512МБ, все работало без проблем, так что вполне можно упростить схему и не делать переключение скорости, однако, а что мы экономим? один корпус ЛЕ1? В схеме выше есть 'глупость' - регистр-защелка для данных - ИР23 перед ИР9 - зачем?, и никто меня не поправил, в ИР9 ведь эта защелка и так есть, так что ИР23 лишняя... вот это упрощение нужное. Если постараться и перейти на диодную логику кое-где, то, вероятно, можно выбросить еще один корпус ЛА3, с заменой ЛН2 на ЛН1, но вряд ли это будет оправданное упрощение.
|
11 Feb 2017 08:46 |
|
 |
Error404
Maniac
Joined: 05 Oct 2006 04:45 Posts: 269 Location: Moscow
|
А что скажете на счет 1533ИР24 или ее аналога 74ALS299? http://www.datasheet-pdf.ru/1533/1533pdf/1533IR24.pdfhttp://www.farnell.com/datasheets/7830.pdfМикросхема как будто спецом создана для SPI (объединяет в себе оба куска: serial-to-parallel и parallel-to-serial) и к ней остается только добавить схему тактирования и дешифратор выборки. SD-карта при этом обоими ножками MISO/MOSI поключается к ИР24 (к выводам 8/17 и 11/18 в зависимости от направления сдвига), и шина ПК тоже непосредственно подключается к ИР24 (там есть режим параллельного двунаправленного обмена с регистром сдвига - с защелкой и Z-состоянием), сдвиг делаем только в одну сторону (микра умеет в обе), остальное решатся драйвером на хосте. Микруха вполне себе продается, в наличии, стоит порядка 10 рублей (15центов). Контроллер сразу вдвое проще станет.
_________________ Всем добра!
|
12 Feb 2017 02:40 |
|
 |
PVV
Doomed
Joined: 12 Feb 2016 13:39 Posts: 461
|
Никогда раньше с ИР24 дела не имел, да и сейчас глянул на страничке магазина у меня под боком, ее нет, ну да ладно... Судя по даташиту ее можно применить, надо подумать. Только она заменит ИР8 и ИР9, а вот ее обвязка не факт, что уменьшится, и выгоды в корпусах не будет. Однако, если отказаться от чтения сигналов занятости и наличия карты(что я сделал в РК86), используя ее выход с Z состоянием, то можно выбросить две КП11, а это уже существеннее, даже просто заменив ИР8 на ИР24 в нынешней схеме.
PS: to Shaos может обсуждение аппаратной реализации SD интерфейса вынести в отдельную тему? или можно здесь продолжать?
|
12 Feb 2017 04:59 |
|
 |
newold86
Devil
Joined: 30 Nov 2013 11:08 Posts: 704 Location: WWW
|
С какого-то момента я вообще перестал париться с пониженной частотой инициализации, хотя на FPGA это реализовывается парой лишних строчек. У меня SD карты даже первого поколения инициализируются и работают толи на 10, толи на 20 МГц (смотреть лень, а точно уже забыл).
|
12 Feb 2017 07:45 |
|
 |
fifan
Devil
Joined: 06 Oct 2006 03:17 Posts: 827 Location: г.Лянтор,Сургутского р-на,ХМАО
|
PVV, не мог бы ты выложить откомпилированный файл твоей SDDOS под режим Стандарт Специалиста_МХ2? Адреса интерфейса: SPIData equ #f010 ; /U3 для режима STD Специалиста_МХ2 SPICtrl equ #f011 ; /U3 для режима STD Специалиста_МХ2
Хочу встроить в прошивку Специалиста_МХ2 для работы с RKS файлами.
|
12 Feb 2017 08:50 |
|
 |
PVV
Doomed
Joined: 12 Feb 2016 13:39 Posts: 461
|

Посмотрел я, что можно сделать с ИР24- применить ее можно, но не по 'полной'. ИР24 регистр синхронный, а у нас сигнал записи асинхронный по отношению к CLK, так что применить ИР24 в передающей части весьма проблематично, а вот поставить его в приемной части можно, использовав его возможность по отключению выходной шины в Z состояние, соотв можно исключить из схемы две КП11 при использовании этой схемы с sddos. Замечу, что изначально я делал аналог SD интерфейса для СпециалистMX2, а там эти КП11(по крайней мере одна точно) нужны для чтения состояния busy в частности. В принципе можно и в такой схеме сигнал busy 'вытащить' - посадить элемент с ОК на D6, который будет в нуле когда идет чтение SD, А0=1 и активен busy, но это опять получится дополнительный корпус мс, а речь то идет об уменьшении корпусов, как я понимаю. Подытожу - при использовании ИР24 можно уменьшить всю схему SD интерфейса с 12 до 10 корпусов, при не ухудшении возможностей интерфейса при работе с sddos, но с ограничениями для LoaderV5 Специалист_а_MX2(нужно подтянуть шину D6 и D7 к +, ну и работать с тактовой от 2Мгц только и там и там). схема подключения ИР24 во вложении.
to fifan - нужна информация,с каких адресов размещать sddos и буфер для fat?
|
13 Feb 2017 09:41 |
|
 |
Error404
Maniac
Joined: 05 Oct 2006 04:45 Posts: 269 Location: Moscow
|

А можешь подробнее пояснить что тут имеется ввиду. А то я в схемотехнике не самый дока, может что-то упускаю. Я вот тут накидал как мне видится универсальный вариант (естессно безо всяких моделирований). В нем прием и отправка последовательного пакета не завязаны на чтение и запись хостом в саму ИР24 (это отдельная команда), а делается по соседнему порту. Может тут не будет проблемы с асинхронным CLK? В полном варианте схемы 9 корпусов с полным дешифратором (2 корпуса, в принципе у кого-то сократится на уже имеющийся) и 2 чипа на регистр выбирающий длину пакета и SPI-устройство от одного до трех (регистр дает выбрать длину пакета менее 8 бит, чтобы подключать устройства с пакетом не кратным 8 битам, например SPI-часы и датчики почти все такие). Если ограничиться только одной SD-картой (и на ИЕ7 фиксированно поставить предустановку в 7 ) и условно выкинуть дешифратор портов, то в контроллере остается 5 корпусов (против 10 в варианте с двумя регистрами - там же тоже нет дешифратора?).  ЗЫ. Какой нормальный редактор схем есть с библиотекой по ГОСТу, а не только с ужасными импортными безликими элементами? Upd. Поправил схему - чуть оптимизировал и на освободившихся элементах и разряде регистра управления ТМ9 сделал селектор скорости тактирования. Подпрограмму spi_sel надо переписать - инициализацию ИЕ7 (холостой прогон клоков чтобы сработал перенос и защелка предустановки из регистра) делать при невыбранных устройствах, но 2 лишние строчки кода не лезли в катинку. 
_________________ Всем добра!
Last edited by Error404 on 03 Mar 2017 07:54, edited 1 time in total.
|
13 Feb 2017 13:47 |
|
 |
PVV
Doomed
Joined: 12 Feb 2016 13:39 Posts: 461
|
Синхронный в данном случае, имеется ввиду, что надо установить на входах S0 и S1 режим записи с шины данных, а затем дождаться положительного перепада на входе CLK, только тогда произойдет сама запись, те синхронно. Как пример синхронного регистра - ИР10, а почти такой же ИР9 это асинхронный, те защелкивание у него происходит как только дергаем PL, вне зависимости от состояния CLK входа, чем я и пользуюсь в своей схеме. В схеме выше, похоже, организована цепи 'дерганья' CLK при установке режима записи, так что, возможно, это будет работать. Надо в протеусе моделировать, ничего сложного в нем нет, надо лишь захотеть в нем работать. ЗЫ по ГОСТовским библиотекам подсказать не могу, раньше в OrCad были свои, самосозданные, сейчас Altium, у него они есть, но не пользуюсь, устраивают 'буржуйские'.
|
14 Feb 2017 06:33 |
|
 |
Error404
Maniac
Joined: 05 Oct 2006 04:45 Posts: 269 Location: Moscow
|
Я в принципе читаю схемы "на буржуйском", но мозг противится, т.к. имеет возможность сравнивать с тем что легче читается (в мозг генетически и эволюционно заложена директива выбирать менее энергозатратный способ). Обозначение элементов спецсимволами (1, & ,=1, T, СТ, DC, и т.п.) куда как нагляднее чем вогнутый краешек (тут матюгаюсь) или все на один манер кубики с однотипными же подписями на входах-выходах.
_________________ Всем добра!
|
14 Feb 2017 14:32 |
|
|
Who is online |
Users browsing this forum: No registered users and 3 guests |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|