Category: юмор

поумнеть

внезапно

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

то же самое, но многожильное в ПВХ или силиконовой изоляции - дофига сходу гуглится.

а нужно одножильное и без изоляции и луженое бессвинцом: буду мотать спиральки типа пищевой-градации (отсюда без свинца и сурьмы/антимония/Sb) для маленькой но удаленькой рект.колонки с не-хаотичным наполнителем.

ps: если у кого есть идеи по алгоритмике управления непрерывной рект.колонной - велкам в камменты тоже.
поумнеть

дыбр, изорнет-поверх-усб

внезапно узнал, что для сабжа есть примерно ТРИ стандарта.
в принципе предсказуемо для любого порождения консорциума, где в главарях интел с микрософтом, но.

первое, самое на слуху, RNDIS - частично проприетарно
Ethernet Control Model (ECM), Ethernet Emulation Model (EEM) - вроде открытые.
Network Control Model (NCM) - еще один.

а еще есть кучка проприетарной хрени с проприетарными вендор специфик (проверил три разные вифи-усб свистка - там еще страшнее).

собственно вопрос. уже самому стало интересно влезть поглубже и разобраться, что проще/удобнее/стандартнее, ECM, EEM, NCM? какие плюсы-минусы? перспективы поддержки итп?

делать буду переходник на клиенте (усб-раб) с усб на стандартный тцп-ип стек, плюс возьму стандартную реализацию dns/dhcp и простого вебсервера для управления железкой (итого, усб-клиент будет симулировать сеть, в которой есть вебсервер с управляющими страницами).

идею симулировать страдж девицу при аккуратном рассмотрении отверг -- проблемы и с внезапным кешированием на стороне ос, и с поддержкой, например, фат12/16/24 и длинных имен. там оно уж очень криво.
фик

Куда применить таймеры от стиральных машин ? :)

Разобрал пару советских стиральных машин. Стал обладателем трех тикающих таймеров. Теперь ломаю голову - что с ними делать ? Выкинуть - сердце кровью обливается. Хранить, чтоб выкинуть лет через 10 - гнилой вариант. А так чтоб вот прям щас и с пользой для народного хозяйства ?
(Можно, конечно, собрать имитатор взрывного устройства. Но боюсь, никто кроме меня самого, юмор не оценит :) Да и вряд ли таким образом удастся утилизировать больше чем пару, и после освобождения встанет вопрос об оставшемся:))

UPD: ПРИДУМАЛ !!!
Collapse )

Schematics: The Heroin Of Electronics Design

Доклад "Schematics: The Heroin Of Electronics Design" от Dave Vandenbout на KiCon 2019 заслуживает внимания. Вероятно не все видили этот пост от ramlamyammambam. Использовать Питон для создания принципиальной схемы с помощью утилиты skidl это свежо.



Находка дня: приёмник с усилителем класса D и питанием от антенны

Не могу не поделиться этим чудом:

http://zhurnalko.net/=sam/junyj-tehnik/2009-06--num77

Там схема радиоприёмника на усилителе класса D на КМОП инверторах с питанием от самой же антенны. Жрёт 100 мка.

PS: Сделал копию на я.диск: https://yadi.sk/i/wwwUgvAMR-y5Gg
DI HALT

Странные приколы с DMA

STM32F103C8T6

Работает на два канала RS485.

Отправка буфера через ДМА, прием через ДМА. Приемный ДМА работает в кольцо. Все традиционно. Написано вручную, без СПЛ, куба и прочих либ.

Код usart2.c сделан копипастом из usart1.c разумеется поправлены все каналы, адреса и все прочее. Так вот. уарт2 работает отлично. Принимает в буфер, передает из буфера. ВСе как задумано. А вот у уарта1 какие квантовые эффекты с ДМА. Зависимость от наблюдателя.

Т.е. когда я смотрю отладчиком внимательно по брейкпоинтам на настройки ДМА1 канал 5 (прием уарта1), то он принимает в буфер. Все как задумано.

Но стоит переключиться на что-то другое, поставить бряк в задачу, как уже не работает. Без отладчика тоже ничего не работает. Думал копипастнутый уарт2 мешает, где то что то не заметил и дублируется. Убрал его из проекта вообще. Не помогло О_о.

Беглым тестированием понял, что у меня почему то самопроизвольно выключается бит ENable у дма1 канал 5 при приеме данных по уарту. Причем по аппаратному приему, гдето на этапе заполнения. Код же буфер трогает только по таймеру и вообще пока этот все выключено.

Да, вращается все на FREERTOS, но ее апи не задействовано нигде вообще в этом коде.


Апдейт:
Короче, кажись разобрался. У ДМА где то зарыта аппаратная защита(!!!) от неправильных настроек. Есть там регистр CCR вот первый бит его это EN. B вы хрен его поставите если не настроите остальные параметры. Причем если вы запишите остальные биты ВМЕСТЕ с настройками, единым числом. То на одном канале это может прокатить, а на другом нет. Или прокатит, но как то частично и свалится в другом случае. Когда ДМА вдруг поймет, что ее наебали, загрузили все биты сразу и сбросит бит ЕН и даже вручную его взвести будет нельзя пока заново не перенастроишь ВСЕ остальные биты. Вот шиза то...

АПдейт2
Нет, нифига. Дело не в этом. Хм...

Апдейт.
Все, кажись нашел. Тут кроме правильного порядка еще важно вручню приводить все типы данных и маски в размер.

Т.е.
Channel->CCR |= 1<<5;
и
Channel->CCR |= (uint16_t)(1<<5);

имеют значения. Т.к. важен порядок записи битов в регистр. EN должен сниматься первым и записываться последним. Одновременно нельзя. В результате оптимизатор может решить запихать биты побайтно и перепутает порядок.

Контроль, такой контроль

И по мотивам предыдущего поста.
Имеем - 4 подстанции с 3-5 фидерами 0.4 на каждой. А как вот удаленно узнать, чего там и как? Вставки сгорели, автоматы отрубились, вот это все.
Посредством тех же СМС или звонков туда. Ну и ключевое слово - бюджетно, то есть телеметрия из желудей и шишек.
Рахмат.

Пятничное.

сижу, вожусь с одним дивайсом. Нашёл к нём позорнейший баг, исправил, запустил. Выключил. Пью чай.
Смотрю в терминал - и вижу, что с ВЫКЛЮЧЕННОГО устройства идёт поток данных
Collapse )

Не иначе, рептилоиды с Нибиру вышли на связь
hand

Субботняя байка старого электронщика

В далекие 80-е я был дуб-дубом в аналоговой технике работал электронщиком в типографии; но самые ответственные работы выполняли более взрослые дядьки. Вот прихожу я однажды утром, а они там сидят в полном составе, в грязных белых халатах (это была наша спецодежда) и с красными глазами. На столе полная пепельница окурков, а рядом - коробка с таким же количеством выкушенных из платы мертвых ОУ К140УД1. Сдохла машина, печатавшая ночью тираж главной городской газеты; их вызвали чинить. Неисправность тиристорного привода главного двигателя. На малой скорости печати стартует нормально, а когда начинаешь её увеличивать - при достижении некоторого порога горят все ОУ в блоке управления.
Короче, что оказалось. Запускать машину можно только на минимальной скорости, а потом очень плавно добавлять или снижать. Поэтому управление скоростью было реализовано кнопками + и -, а они включали сервомотор, который перемещал движок регулировочного резистора. Причем последний был огромный и какой-то самопальный, как и весь привод: производство печатных машин в СССР было гражданской (а значит - бедной) отраслью.
Сервомотор был асинхронник на 220 вольт с редуктором. С ДПТ тогда тоже была напряженка. И вот движок этого переменного резистора терся о проходивший мимо провод питания его мотора. Ну и перетер изоляцию, в конце концов! При добавлении скорости движок в определенной позиции наезжал на провод и подавал на схему 220B))))
К тому же там имелась защитная схема, которая при следующем включении питания возвращала движок в начальное положение, "заметая следы"; и эта схема не пострадала.
Смонтировано это было так тесно и неудобно, что найти причину смогли только в середине дня.
Сроки печати газеты были сорваны, так что потом в типографию приходила комиссия из комитета коммунистической партии)