Pull to refresh
24
Karma
0
Rating
Константин @Costic

Программист-консультант

Разглядывая JTAG: идентификация

Любопытно было посмотреть на вашу реализацию. А диаграммы в чём вы рисовали?

MIDI2USB – музыка нас связала

Я заметил, что если в Cubase использовать программные звуки MIDI (что-то вроде GM DLS), то задержки ярко выражены. А вот другие звуки/инструменты Cubase воспроизводятся почти без задержек. Предполагаю, что проблема в древней mmsystem.dll, а именно функциях midiOut*** (например, midiOutCachePatches). Возможно, это такой legacy код из 20-го века, что в Microsoft мало кто сейчас что-то в нём понимает.

MIDI2USB – музыка нас связала

Спасибо за добрые слова.

Оригинальный CH345 действительно выпускается в микросхеме с 20-выводами, требует кварца 12МГц, а в схемах рекомендуется ставить опторон. А то, что мы видим в этом "китайском чуде" - неведомая зверушка. Использовать чужой VID/PID - не очень законно, но с технической точки зрения - оптимальное решение. Функционал и драйверы используются одни и те же. SysEx у меня сделан неизвестно как, т.е. не тестировал (не на чем), хотя пару месяцев назад выложил новую переработанную версию прошивки.

Корпус и mini-usb неудачно у меня получились. Слишком глубоко внутри и кабель тяжело втыкать. Но, в целом работает.

Управляем Windows пультом от телевизора или как передать сигналы через последовательный порт

Вы неаккуратно работаете с COM портом. Если не удалось открыть порт, то дальнейшая работа программы не имеет смысла и надо заканчивать работу. return 1;
А вы закрываете дескриптор, который не смогли получить.
if (Port == INVALID_HANDLE_VALUE)
    {
        printf("\nError to Get the COM state\n");
        CloseHandle(Port);
    }

И при настройке таймаутов у вас тоже ошибка. Вы закрываете дескриптор (порт), но продолжаете его использовать. Или не закрывайте порт или добавьте return код ошибки;

10 плат для начала разработки IoT в 2021

Вы каждый день по 3 статьи выкладываете. Кто-то их готовит, читает, деньги получает. А мне за вылавливание халтуры минусы.
P.S. И этот вариант статьи людям не очень нравится.

10 плат для начала разработки IoT в 2021

Всё очень интересно, но почему повторяете публикацию? Накручиваете рейтинг этим способом? Предыдущую статью скрыли, но в кэше она есть. Если вносите исправления, то зачем новую публикацию делать?
Boomburum «шо, опять?» (с)

Очередной Хабро-хак для накрутки рейтинга на сайте

Boomburum
13 марта 2021 в 20:57
К сожалению, такие ситуации иногда случаются, тем более что это контент компаний, а не редакционный. Но в целом же вроде в этом нет никакого криминала?

Windows Kernel Drivers — Стандартные ошибки – IRQL

goto в 21 веке? Я бы сделал развернутые блоки if и else.

Хабр ищет новостников, авторов и кураторов

Очень хорошая идея о снятии ограничении по времени. Попадаются статьи, которые давно написаны и хотелось бы им поднять рейтинг, но это невозможно. А счётчик просмотров говорит, что статья пользуется популярностью.
Ну, и хозяева ресурса за просмотры/рекламу/контент получают $$$. Как минимум и автор за каждые NNN просмотров должен получать "+" в карму.

Почему я перестал читать статьи «Как стать разработчиком»

Boomburum, почему Хабр не торт? Потому что его не внимательно читают и не листают редакторы? В погоне за количеством статей страдает качество.
habr.com/ru/company/productivity_inside/blog/544970
Баян опять.

Топ-10 экспонатов «Музея советских калькуляторов». Вольный рассказ по случаю переезда в музей Яндекса

У меня были разные калькуляторы. Примерно в 1988 году мне папа купил МК-85. Работает до сих пор, даже от батареек, хотя экран тусклый.
Мой экземпляр
image

Схема, если кому интересно.
image

Фитнес-трекер для скейта

Артиллерийский снаряд с наведением на цель. Ещё во времена СССР был сделан.

Как написать игру на C++

Наверное на С++ нужно создать абстракции, например, Screen или Window. Внутри спрятать весь вывод, закадровый буфер (если есть) и вообще всё рисование. Создать объект абстрактный Input, а к нему, например, добавить наследников InputKeyboard, InputJoystick, InputMouse. Ну, и ко всему этому уже прикручивать игровые сущности — Player, Map, Item, Unit, на что фантазии хватит.
Многое зависит от того, чего изучать. Если изучать введение в программирование под Windows, то ваш подход годится. А если уже на С++ замахнулись, то предполагается что основы всем известны и больше внимания надо уделять проектированию, декомпозиции и т.д. В целом сейчас WinAPI редко где можно встретить, кроссплатформеность важнее и формошлёпство востребовано.
P.S. GetTickCount(), GetKeyboardState(), GetAsyncKeyState() вам в помощь.

Как «Ревущий Котёнок» с Reddit заработал 28.500% на акциях GameStop: объясняю простым языком

Тема очень интересная.
Чисто теоретически тут не очень сложно — модель с обратной связью (с двумя). В курсе «Теории автоматического управления/регулирования» и т.п. изучают многие студенты. Система идёт в разнос или наоборот затухает, «устаканивается» около какого-то значения. Без исходных данных (инсайдера) вряд ли бы такую операцию провернули.

Бесконтактный, оптический выключатель освещения со звуковым эффектом на Arduino

Вы вспомните как работает биполярный транзистор и как он рассчитывается. Может быть сообразите, что я написал и откуда взял 500мА. Потом язвите.
Дальнейший диалог считаю бесперспективным.

Учимся работать с USB-устройством и испытываем систему, сделанную на базе контроллера FX3

1)
«Проще взять драйвер, который будет работать с любым чипом.»
Не так много контроллеров с поддержкой USB 3.0+. Я кроме Fx3 не знаю ничего доступного. Ну, а если ограничиться USB 2.0, то согласен с вами.

2) Посмотрите этот пример от Microsoft.

Учимся работать с USB-устройством и испытываем систему, сделанную на базе контроллера FX3

1) Я не совсем понял зачем вам WinUSB, почему CyUSB не использовать, тем более что исходники и примеры для Streamer и CxControl доступны. Кроссплатформенность?
2) Драйвер вы загружаете при старте ОС или как службу? Надо бы его выгружать и все хуки отключать в нём даже при аварийном завершении приложения.
3) А чтобы с буферами и FIFO не было переполнений, то там же флаги есть, они аппаратно рулят и могут просигналить/тормознуть при заполнении или GPIF настроить (не помню).

Бесконтактный, оптический выключатель освещения со звуковым эффектом на Arduino

У меня не сохранилось лучшего разрешения. Могу посоветовать посмотреть ссылки, которые я приводил, там есть осциллограммы. Я могу показать, что стало после установки параллельно диода и светодиода (я проводил эксперименты) с пищалкой.
Должен быть ШИМ примерно 90%, сигнал от 0 до 0.5 В

Бесконтактный, оптический выключатель освещения со звуковым эффектом на Arduino

Энергия, которая накопилась в индуктивной нагрузке будет «выброшена» назад, в сторону коллектора и в сторону линии питания. Сколько именно? Давайте прикинем. В базе транзистор 1кОм, коэф.усиления h21 примерно 100, т.е. ток коллектора будет 5В/1000 * 100 = 500мА. Вы указываете в статье об этом. Мощность 500мА * 5В = 2.5Вт, это норма для типичного магнитофонного динамика.
Всё устройство питается от «телефонной зарядки», предположим 500мА. Дальше мне рассчитать слабо. Надо или модель строить, или вам проще измерить свою схему. Аналогия в том, что если у вас работает сварочный аппарат, то в сети заметны всплески и помехи, но всё работает до поры до времени.

Бесконтактный, оптический выключатель освещения со звуковым эффектом на Arduino

Измерения я делал несколько лет назад, когда наступил на эти грабли.
Нагрузка — китайская пассивная пищалка.

У меня в линии питания были иголки в пределах нормы (милливольты), но проект и питаные совсем другие были.
На stackexchange Olin Lathrop хорошо комментирует.

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity

Specialization

Software Developer, Embedded Software Engineer
Lead