|
nedoPC.orgElectronics hobbyists community established in 2002 |
|
Магнитофонный интерфейс для PC
Author |
Message |
MC68k
Retired
Joined: 25 Jul 2011 00:14 Posts: 1331 Location: WWW
|
а, тогда ок.
ну а почему реалом нельзя сдампить ленту, а блоки сохранить как файлы? переименовывать все автоматом может не получиться.
|
06 Dec 2012 02:53 |
|
|
HardWareMan
Banned
Joined: 20 Mar 2005 13:41 Posts: 2141 Location: От туда
|
Загляни сюда. Там у каждого формата свои разметки и контрольки, а считать то хочется без ошибок. Сливать со спеца в комп - это лишняя ступень, хотя в принципе, сам Спец у меня есть и он рабочий.
Last edited by HardWareMan on 05 Jan 2014 07:12, edited 1 time in total.
|
06 Dec 2012 05:43 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
| | | | HardWareMan wrote: ОК, а теперь, мистер эмуляторщик, напиши прожку, которая под многозадачностью будет нормально отмерять временные интервалы (312мкс для 2400 и 625мкс для 1200) и не терять битики. Впрочем, под DOS это тоже довольно-таки проблематично, но более вероятно, если управлять прерываниями. Или ты думаешь, что я не изучал данный вопрос настолько глубоко? Я, между прочим, делал выгружалку под DOS, которая все делала верно за счет таймера (сбивая часы DOS лол). | | | | |
Я сразу увидел, что глубоко ты этот вопрос не изучал, хотя и вроде как программёр
на Дельфи... Ну ты посещай иногда ваше " Королевство Дельфи"...
Один ум - хорошо, но даже если он хардварный - много умов всё равно лучше.
На моей памяти вопрос измерения точных временных интервалов в многозадачном
режиме люди порешали совсем не вчера, мистер жестяньщик...
И предложили даже не единственное решение...
Да и таймером можно покомандывать, между прочим, совсем не сбивая часы DOS.
Так-то! :3
PS. Вот чего я, грешен, не изучал, поскольку нужды пока не было, но есть информация, что на современных двухядерных процах проблема решается ещё проще. Но это - только где-то слышал мимоходом, не поручусь...
_________________ iLavr
|
06 Dec 2012 07:10 |
|
|
HardWareMan
Banned
Joined: 20 Mar 2005 13:41 Posts: 2141 Location: От туда
|
Много текста и все не по делу. Впрочем, как обычно. Приводи конкретные варианты или проходи мимо. (с) Даже глубокий гуглеж выдает однозначный результат: никак. Только через команду RDTSC, которая должна крутиться в реалтаймовом приоритете (желательно в 0 кольце, но кто тебя туда пустит под виндами?), нагружая на 100% процессор. И измерять надо, кстати, не просто произвольные отрезки времени, а привязываясь конкретно к перепаду, приходящему с ленты вообще в любой произвольный момент времени. Вот, читани к примеру: | | | | Quote: Имхо нереально. Нужен проц реального времени. А здесь суперскалярный процессор, у него задача совсем другая. Выполнить, как можно больше инструкций за квант времени. И все под это заточено, кешь, очередь, предвыборка, не последовательное выполнение команд, а помере готовности операндов. Вобщем все для многозадачности, где время не критично для отдельных команд, главное - быстрый общий результат. Вернее, если сильно упереться, для одной конфигурации наверное можно добиться, более менее стабильного результата. Но новая конфигурация и делай все по новой. Без спец контроллера с процессором реального времени, мне думается тяжело реализовать.
| | | | |
Касаемо часов DOS: можно вызывать ее прерывание через требуемый интервал времени, эмулируя медленный таймер, но ее подпрограмма занимала слишком много тактов, что сбивала программу, которая должна была работать на 286 @16МГц.
Last edited by HardWareMan on 05 Jan 2014 07:12, edited 1 time in total.
|
06 Dec 2012 10:14 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
А у тебя топик не по делу:" я, Хардвермен - крутой железячник с вот таким шворцем (пруф.пик), а Лавр - жалкий эмуляторщик"...
Это то, что я в совокупности увидел. Конкретного - просто ничего.
Ни схем, ни программ... я бы и шел себе мимо, если бы ты не упоминал меня всуе...
Но я-таки пойду себе мимо, раз уж тебя не пускают в 0 кольцо защиты, где работают
драйверы устройств, то я не вижу дальнейших причин для продолжения этого разговора.
_________________ iLavr
|
06 Dec 2012 10:41 |
|
|
HardWareMan
Banned
Joined: 20 Mar 2005 13:41 Posts: 2141 Location: От туда
|
Драйвера работают в 1 кольце, вообще-то. В 0 работает обработчик исключений. Но в 9х, которые ты так любишь, да, 1 и 2 кольцо не используются: 0 для обработчика и драйверов, и 3 для всего остального. Да и кому нужен драйвер, вешающий процессор (или даже одно его ядро) на 100%. Пытайся еще.
Last edited by HardWareMan on 05 Jan 2014 07:15, edited 1 time in total.
|
06 Dec 2012 13:04 |
|
|
MC68k
Retired
Joined: 25 Jul 2011 00:14 Posts: 1331 Location: WWW
|
эээ... ну можно было бы запилить для спеца прогу-дампер с поддержкой всех форматов и контрольных сумм.(это я так подталкиваю допилить поддержку SD-card)
я помню, что первоначально идея была таскать девайс, а значит "project complete".
безумный вариант - заломать китайский MP3 плеер, который на разновидности Z80. там и накопитель встроенный и вход микрофона есть.
|
06 Dec 2012 15:36 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Плохому танцору - вечно что-то мешает... то Lavr, то DOS, то Венда, то кольца не те... Что-то читал я магнитофонный сигнал - безо всяких контроллеров и не делал из этого ни открытий ни проблем...
Действительно, информация есть, и она следующая: Real Time eXtension
_________________ iLavr
|
06 Dec 2012 15:58 |
|
|
HardWareMan
Banned
Joined: 20 Mar 2005 13:41 Posts: 2141 Location: От туда
|
Этот проект на полпути, ага. Единственное - это ручной выбор формата и скорости. Тем не менее, он работает. Собственно, да. Лавр не мешает, как это не странно звучит. Ну, во первых, мы так и не узнали теххарактеристики сигнала - может ты на 32бода пищал на своей 9х. Во вторых, так и смущает: А может этот вовсе и не гнусмас, а как раз другое (то, что ты указал в первом предложении этого поста)?
Знаю, что ты сразу прицепишься к словам, но скажу: а теперь покажи то же самое, но бесплатное и для моего ноута (iPIII 500MHz).
Last edited by HardWareMan on 05 Jan 2014 07:12, edited 1 time in total.
|
07 Dec 2012 00:56 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Да я не цепляюсь к словам, это ты что-то взялся цепляться ко мне, как собачка, которой на хвост наступили... Я не обязан показывать тебе бесплатное ПО для твоего ноута, поскольку ты мальчик взрослый, уже женатый и слово гугель знаешь... Не изображай из себя тут девочку-институтку... А во-вторых, что бы я тебе не показал, ты точно будешь недоволен, потому что ты один тут - " Дон-Кихот", а все стальные, мягко говоря, " погулять вышли"... Да нет, это как раз " Гнусмас", потому что с магнитофона и уж тем более с самого " Специалиста" никаких проблем не было... И если считать сам " Специалист" - машиной реального времени, тем более, что и протоколы - его оригинальные, то он и обнаружил, что " Гнусмас" даёт сбой. Я же говорю выше, что ты здесь единственный " Дон-Кихот", остальные, значит, " глубоко поисследовать проблему" - ну никак без тебя не способны... Так вот сбой " Гнусмаса" я потом нашел на логическом анализаторе. Что касается характеристик - то это типичные магнитофонные сигналы " Специалиста", или ты думаешь я изобретал другие? Я не делал из этой читалки никакой отдельной помпы, поскольку таких программ, как мне казалось, достаточно, тем более, что и я сильно не оригинальничал, а во многом советовался с Витей Пыхониным, чтобы не наступать на грабли, которые другие люди нашли и обошли... Другое дело, что я свою программу предложил для оригинального применения - читать сигнал из сотового, как из маленького диктофончика и реализовал возможность выдавать сигнал магнитофонной записи из мидлет-вариантов " Спецтрумов" и " Специалистов". Ну это на словах, а теперь смотрим, что на деле: А я слова критики не сказал, лишь отчекрыжил твой ЛУТ, как оффтоп. А многим другим - удалось, хотя они и не делали из этого фурора... Но значит тебе - что-то помешало? И это может быть... А много других людей делали такие штуки по DOS, успешно и не сбивая часов - примеров для того-же "Спецтрума" - навалом. Значит тебе DOS мешала? Тут тебе уж точно Вынь-Хрюша мешала... Или моя 9х - старушечка поперёк дороги встала? А я и говорю - любой другой вариант, кроме твоего собственного, тебя никак не удовлетворит! И нафиг бы мне оно сплющилось? Тролля никгда не удовлетворить желудочно...
_________________ iLavr
|
07 Dec 2012 04:30 |
|
|
MC68k
Retired
Joined: 25 Jul 2011 00:14 Posts: 1331 Location: WWW
|
ололо! еда! набигаем!
а разве по пилот-тону нельзя определить скорость?
|
07 Dec 2012 06:23 |
|
|
HardWareMan
Banned
Joined: 20 Mar 2005 13:41 Posts: 2141 Location: От туда
|
Текстовые редакторы используют двухтональный раккорд. Можно, конечно, добавить алгоритм определения таких раккордов.
Оставь. Собака лает - караван идет.
Last edited by HardWareMan on 05 Jan 2014 07:12, edited 1 time in total.
|
07 Dec 2012 11:30 |
|
|
MC68k
Retired
Joined: 25 Jul 2011 00:14 Posts: 1331 Location: WWW
|
|
07 Dec 2012 15:24 |
|
|
HardWareMan
Banned
Joined: 20 Mar 2005 13:41 Posts: 2141 Location: От туда
|
Я же давал ссылку:
А по манчестеру, чередование 0 и 1 дает нам чистый тон, равный половине несущей частоты (0AAH звучит так же, как и 55Н, но по исходникам выгружается именно 0ААН). Пожалуй, ты прав, устройство данной ветки работает как задумывалось, а я все же переключусь на оригинальную железку. Буду пилить поддержку SD.
Last edited by HardWareMan on 05 Jan 2014 07:13, edited 1 time in total.
|
07 Dec 2012 19:19 |
|
|
HardWareMan
Banned
Joined: 20 Mar 2005 13:41 Posts: 2141 Location: От туда
|
Ища порядок бит памяти для Ориона нашел вот такой безмозглый убердевайс в Радио ¹6 за 1990 год.
Идея основана на том, что одновибратор после запуска нельзя перезапустить, поэтому, выделенные фронты автоматически синхронизируют одновибратор так, как надо. Думаю, это тоже интересно.
Некоторое время назад я так же рассчитал еще один способ декодирования манчестера. Суть его заключается в том, чтобы измерять время между перепадами. А логика заключается в следующем:
1. Начальное состояние исходного бита = 0.
2. Есть константа времени, равная как раз 3/4 времени передачи бита. Как у обычного метода.
3. Если время интервала между перепадами короче константы - считаем интервал. Когда набирается 2 интервала - записываем старое значение исходного бита в регистр приема и сбрасываем счетчик. Т.е., маленькие интервалы считаем попарно. Правильный манчестер другого не позволяет.
4. Если интервал длиннее константы, то инвертируем исходное состояние бита и записываем его сразу в регистр.
Соль в том, что код всегда будет прямым, по раккорду можно будет измерять на константу чтения, а синхросигналом считать следующую последовательность: первый длинный сигнал после серии коротких + первый байт равен синхробайту. И при этом не будет мешать двухтональный раккорд. Я уже делал программку и она работает. Учитывая, что у контроллеров есть прерывание по перепаду - для них вообще это будет не сложно.
Как-то так. Я понял, что основная проблема это именно в преобразовании аналога в цифру, т.е. начальный компаратор. После подключения компаратора из устройства из первого поста к звукокарте все ранее написанные программы стали работать стабильно.
Last edited by HardWareMan on 05 Jan 2014 07:13, edited 1 time in total.
|
16 Dec 2012 02:50 |
|
|
Who is online |
Users browsing this forum: No registered users and 46 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
|
|