Как стать автором
Обновить
53
0.5

Пользователь

Отправить сообщение

Эмулятор CD-Rom для SonyPlaystation который я писал больше десяти лет. Часть 2

Время на прочтение16 мин
Количество просмотров8.5K
В первой части. Мы поверхностно посмотрели, как работает микросхема CXD2545, которая является частью контроллера CDRom и стоит между данными считываемые лазером и остальной частью приставки. Я для себя поставил задачу проэмулировать чтение оглавления диска. Это то, что делает приставка, когда пытается понять, что за диск в ней вставлен. А главное результат сего действа достаточно просто можно наблюдать во встроенном CD плеере приставки. Зная, что во время попытки чтения оглавления она не дает двигать курсор, а по окончании показывает, сколько треков было найдено.

(Также здесь будут описаны ошибки, которые я допустил, пытаясь сделать этот эмулятор, может, кого-то это убережет, от необдуманных поступков)
Итак у нас есть PS1 с платой SCPH-5502, DE1 с CycloneII на борту, клон DSLogic Plus и большое желание проэмулировать CDRom.
Читать дальше →
Всего голосов 56: ↑56 и ↓0+56
Комментарии17

Эмулятор CD-Rom для SonyPlaystation который я писал больше десяти лет. Часть 1

Время на прочтение6 мин
Количество просмотров20K
Давным-давно у нас в городе был игровой клуб на несколько SonyPlaystation. Где я очень по многу зависал. Там я полюбил PS1 и игры на неё. Использование CD-Rom в качестве носителя позволила привнести в игры ошеломительные по тем временам видео вставки, CD музыку в качестве оформления игрового процесса, возможность делать игры многодисковыми(с картриджами такого вроде не проворачивали), что был несомненный плюс. Но и привнесло один минус, а именно деградация лазера привода. И если в домашних условиях, возможно, это была и не большая проблема, то в игровом салоне умирали они раз в 2-3 месяца. Вот ещё там у меня родилась идея сделать эмулятор CD-Rom. И через очень много лет я таки исполнил свою мечту.

В статье могут встречаться страшные картинки, не оптимальные схемы, неверные решения. Если вы к этому готовы и вам это интересно добро пожаловать под кат.

PS. я знаю про существование psio, и эмуляторы консолей, но мне был интересен процесс.
Читать дальше →
Всего голосов 61: ↑59 и ↓2+78
Комментарии26

Суждения о безопасности мудреца Инь Фу Во, записанные его учениками

Время на прочтение3 мин
Количество просмотров6K
Такие интересные, с моей точки зрения, IT-притчи были опубликованы в Компьютерре №39 от 21 октября 2008 года.

#1
Однажды в курилке пользователи стали возмущаться, что Сисадмин закрыл всем доступ на сайт «Одноклассники». Инь Фу Во услышал об этом и нахмурился.

— Почему ты закрыл людям доступ? — спросил он Сисадмина, когда они после перекура пили кофе.

— Потому что такие сайты не нужны для работы.

— А курить нужно для работы?

— Вообще-то нет…

— А кофе пить?

— Ну…

— Ну тогда, — сказал Учитель, — открой людям доступ.


Читать дальше →
Всего голосов 46: ↑38 и ↓8+30
Комментарии10

Настроить программный модем — поможет minimodem

Время на прочтение2 мин
Количество просмотров6.7K

Можно сказать, что модемы перешли в разряд ретротехнологий. Но чтобы поработать с ними сегодня, необязательно приобретать физический девайс. Для установки соединения по аудиоканалу достаточно звуковой карты и open source утилиты minimodem.

Читать далее
Всего голосов 13: ↑11 и ↓2+14
Комментарии30

Выходим в Интернет с помощью модуля на SIM800L

Время на прочтение14 мин
Количество просмотров82K

Привет всем неравнодушным! Сегодня предлагаю поговорить о миниатюрных GSM-модемах на базе чипа SIM800L. Области применения таких модулей весьма обширны: охрана дачи или дома, сигнализация в машине и многое другое, где требуется удаленная связь, а возможности подключиться к Wi-Fi нет. В том числе они прекрасно подходят для проектов IoT, потому что с их помощью можно не только отправлять сообщения или управлять телефонными звонками, но и подключаться к Интернету.

В данной статье рассмотрим:

- подключение модулей к переходнику USB-TTL для проверки и отладки;

- подключение модулей к платам Arduino для выхода в Интернет в условиях, когда нет доступа к Wi-Fi;

- код, который позволяет подключиться к объекту на платформе Rightech IoT Cloud, публиковать данные и получать команды.

Хочу узнать больше >>>
Всего голосов 21: ↑19 и ↓2+22
Комментарии29

Турель из Portal своими руками

Время на прочтение9 мин
Количество просмотров24K

А вы играли в Portal? Даже если нет, сборка личной автоматической турели с детекцией движения и оригинальным голосовым сопровождением наверняка окажется как минимум любопытной, ведь такая диковина может не просто украсить интерьер, но и стать, к примеру, отличным подарком для детей.
Читать дальше →
Всего голосов 65: ↑64 и ↓1+87
Комментарии21

Пишем драйвер для самодельного USB устройства

Время на прочтение13 мин
Количество просмотров175K
Целью этой статьи является пошаговая демонстрация процесса разработки всего набора программного обеспечения необходимого для организации связи самодельного устройства с компьютером посредством USB.

На данный момент, большинство радиолюбителей реализуют такой тип подключения используя чипы переходники USB в RS232 таким образом организуя связь со своим устройством посредством драйвера виртуального COM порта поставляемого с чипом переходником. Минусы такого подхода думаю понятны. Это как минимум лишний чип на плате и ограничения накладываемые этим чипом и его драйвером.
Мне же хочется осветить весь процесс организации такого взаимодействия так как оно и должно быть сделано, и как делается во всех серьезных устройствах.
В конце концов, сейчас 21-й век, модуль USB есть почти во всех микроконтроллерах. Именно о том, как наиболее быстро воспользоваться этим модулем и будет эта статья.
Читать дальше →
Всего голосов 152: ↑149 и ↓3+146
Комментарии29

Реализация алгоритма Краскала на С#

Время на прочтение6 мин
Количество просмотров13K

В данной статье для реализации алгоритма будут рассмотрены:

1. Система хранения графа на основе List<>

2. Сортировка рёбер графа по весу

3. Система непересекающихся множеств

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

План действий

1. Сортируем имеющиеся рёбра по весу.

2. Создаём новое множество и добавляем в него первое ребро.

3. Затем пытаемся добавить каждое новое ребро в имеющееся множество, если возникает цикл - пропускаем.

4. Итоговое множество рёбер и есть искомое минимальное остовное дерево.

По сути, это и есть формулировка алгоритма Краскала. Звучит совсем просто.

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

Но для начала давайте рассмотрим систему хранения графа в программе.

Читать полностью
Всего голосов 11: ↑9 и ↓2+7
Комментарии6

Измерим гармонию — анализатор звукового спектра на STM32L4 Discovery

Время на прочтение7 мин
Количество просмотров17K
В предыдущей публикации мы подключали дешевый китайский LCD экран к плате STM32L4 Discovery. Теперь мы попробуем реализовать на этой комбинации что-то выходящее за рамки традиционного моргания светодиодом, а именно анализатор звукового спектра, который использует имеющийся на плате микрофон. Заодно я расскажу, как пользоваться операционной системой FreeRTOS, и зачем она нужна, а также почему в нотной октаве 12 нот, и чем 53 ноты лучше, чем 12.



Читать дальше →
Всего голосов 17: ↑17 и ↓0+17
Комментарии14

Разводка регулярных структур в KiCAD: путь лентяя

Время на прочтение11 мин
Количество просмотров4.8K
image

Я в одной из предыдущих статей писал — я, фактически, безработный. Юридически — нет, во-первых я пенсионер, но вполне мог бы и работать. Во-вторых, вроде как и работаю в одной маленькой фирме из двух человек, но последний год у нас с контрактами напряженка. С голоду не умираем, пенсии вполне достаточно на жизнь, но ведь развлекаться как-то надо?
Время от времени от скуки публикую статьи-обзоры на сайте шопоголиков, администрация сайта даже денег довольно-таки регулярно за это дает. Очень хорошая отмазка для супруги — нет, я не шопоголик, это я, вроде как, при деле. И вот здесь взялся публиковать статейки — если на том сайте такие публиковать, только минусов нахватаешь — типа ты что, слишком умный, что ли? — а вот на тебе минус и не балуй. И в следующий раз пиши про какую-нибудь мыльницу.
Читать дальше →
Всего голосов 32: ↑31 и ↓1+40
Комментарии13

Как разработать микросхему, от идеи до результата. Часть 4. DRC/LVS/PEX

Время на прочтение12 мин
Количество просмотров5.8K
В прошлой статье мы сделали Layout, а в этой части мы проведём LVS/DRC/PEX и исправим ошибки из прошлой статьи. Для тех, кто пропустил прошлые части, вот ссылки на них.




В этой части мы:

  1. Запустим Design Rule Check, чтобы проверить возможность произвести нашу схему
  2. Запустим Device Extraction для сравнения нашего Layout с целевой схемой.
  3. Произведём сравнение наших компонентов из Layout и нашей схемы, которую мы нарисовали в XSCHEM.
  4. Сгенерируем netlist с паразитными конденсаторами и резисторами (PEX).
  5. Просимулируем netlist с паразитными конденсаторами и резисторами.
  6. Сгенерируем LEF файл.
  7. Подведём итоги этой серии статей.
Читать дальше →
Всего голосов 38: ↑37 и ↓1+55
Комментарии8

Как разработать микросхему, от идеи до результата. Часть 3. Схемотехническое представление и Layout

Время на прочтение14 мин
Количество просмотров8.5K
В прошлой статье мы установили все программы, а в этой части, мы наконец приступим к практической части. Готовьтесь, эта часть будет очень большой. Для тех кто пропустил прошлые части — ссылки ниже.



Как разработать микросхему, от идеи до результата. Ссылки на все статьи։

В этой части мы:

  1. Будем рисовать схему, используя XSCHEM
  2. Произведём симуляцию нашей схемы, используя NGSPICE
  3. Поймём цикл производства микросхемы
  4. Нарисуем Layout, используя KLayout

Предполагается, что вы уже прочитали предыдущие материалы. Если мне удалось вас заинтересовать, прошу под кат!
Читать дальше →
Всего голосов 59: ↑59 и ↓0+59
Комментарии18

Как разработать микросхему, от идеи до результата. Часть 2. Установка программного обеспечения

Время на прочтение9 мин
Количество просмотров9.7K
В этой статье мы поставим все необходимые инструменты для того, чтобы начать разработку микросхемы. Также мы установим Process Design Kit, про который мы говорили в предыдущей статье.

Напоминаю, что я продолжаю идти к цели — сделать свой собственный Отечественный Процессор (TM). Продолжение процесса разработки можно посмотреть под катом.

Читать дальше →
Всего голосов 66: ↑66 и ↓0+66
Комментарии18

Как разработать микросхему, от идеи до результата. Часть 1. Теория

Время на прочтение19 мин
Количество просмотров24K
Пока наши соседи по цеху спорят о конкурентоспособности Эльбруса, я продолжаю идти к своей заветной цели — склепать свой собственный Отечественный Процессор (TM). Ранее я рассказывал про программу, финансируемую Google, которая позволяет энтузиастам бесплатно получить прототип их разработок в кремнии. Если вы хотите увидеть всю подноготную процесса производства современных чипов, то этот туториал точно для вас!

Читать дальше →
Всего голосов 79: ↑78 и ↓1+111
Комментарии62

Передача телевизионного сигнала через HackRF

Время на прочтение4 мин
Количество просмотров14K
Всем привет. На этот раз я хочу рассказать о том как можно превратить старый телевизор в монитор компьютера. Для этого требуется лишь сам телевизор, HackRF и немного софта.
Читать дальше →
Всего голосов 51: ↑51 и ↓0+51
Комментарии6

Фильтрация шума сигнала

Время на прочтение7 мин
Количество просмотров42K

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

Читать далее
Всего голосов 34: ↑29 и ↓5+35
Комментарии38

Создание аналога посмертного сore dump для микроконтроллера

Время на прочтение8 мин
Количество просмотров4.7K


При разработке программного обеспечения любого класса и назначения, зачастую приходится заниматься поиском ошибок, которые привели к краху всего приложения. И если в случае обычного компьютера, анализ логов и core dump`ов как правило не вызывает сложностей, то для устройств на основе микроконтроллеров бывает сложно получить «посмертную» информацию, необходимую для изучения проблемы.

Конечно, при подключенном программаторе и при постоянном выводе логов в какой нибудь отладочный порт можно достаточно комфортно вести отладку, но что делать, когда требуется искать причину сбоев устройства во время штатной эксплуатации устройства, когда инструментальные средства для отладки не подключены и нет внешней памяти для хранения логов?

В продолжение серии статей про различные полезности для STM32 (1 и 2), предлагаю вашему вниманию решение для сохранения посмертной информации микроконтроллера при возникновении различных критических ситуаций с целью последующего анализа ошибки.

Ну и в соответствии с собственным наблюдением Хабр — ума палата, буду рад любым комментариям и предложениям, которые помогут протестировать или улучшить предлагаемое решение.
Читать дальше →
Всего голосов 8: ↑8 и ↓0+8
Комментарии11

Симметричные НЧ-ВЧ фильтры

Время на прочтение12 мин
Количество просмотров23K
В задачах обработки сигналов часто возникает необходимость фильтрации сигналов, когда сигнал разбивается на узкополосные диапазоны. В бытовом плане мы с этим сталкиваемся при воспроизведении музыки через акустические системы, в которых каждый громкоговоритель (динамик) воспроизводит свою полосу частот, которых обычно три — низкие (НЧ), средние (СЧ) и высокие (ВЧ); для воспроизведения сверхнизких частот иногда выделяют отдельную акустическую систему под названием «сабвуфер». Конкретные границы частот зависят от реализации и ориентировочно находятся на границах 100 Гц, 1 кГц и 5 кГц. Для того, чтобы не было резких скачков громкости между динамиками, используют частичное перекрытие — когда амплитуда воспроизводимой полосы частот плавно спадает на одном, одновременно нарастая на другом.

Наиболее популярными фильтрами для такого разбиения являются фильтры Линквитца-Рейли 4-го порядка, представляющих из себя два последовательно соединённых фильтра Баттерворта, изображение АЧХ которых многим хорошо знакомо:

Читать дальше →
Всего голосов 74: ↑74 и ↓0+74
Комментарии21

Пишем терминальный сервер для микроконтроллера на С

Время на прочтение13 мин
Количество просмотров13K

Всем привет! В процессе работы над гексаподом AIWM я все чаще задумывался о каком-нибудь удобном интерфейсе для общения с ним. В результате тесной работы с Linux через терминал я подумал, а почему бы не использовать такой же интерфейс и в гексаподе? Я был очень удивлен, что по запросу "STM32 terminal" я не нашел готовых реализаций. Ну раз нет готовых, то напишем свою реализацию терминального сервера, которую можно использовать в микроконтроллерах. Сделаем это без использования динамической памяти и прочих опасных радостей.

Читать далее
Всего голосов 25: ↑24 и ↓1+33
Комментарии19

Информация

В рейтинге
1 686-й
Откуда
Павлодар, Павлодарская обл., Казахстан
Дата рождения
Зарегистрирован
Активность