← All posts tagged радиогубительство

stanislavv
лытдыбр радиогубительство Про то, что журнал "Радио" испортился в конце 90-х много кто говорил.
Похоже, "Elektor" тоже начал портиться, правда, в конце 2000-x, начале 2010-x — листаю подборку схем оттуда (с указанием номеров), наблюдаю ошибки, которые с большой вероятностью приведут к неработоспособности схемы. И это наблюдаю я, учившийся радиотехнике больше 25 лет назад и с тех пор не особо использовавший знания. Подозреваю, тот, кто этим занимается профессионально, найдёт проблемы в каждой третьей схеме.
stanislavv
лытдыбр программазм радиогубительство В свзязи с погоревшим usb-uart (не работает tx), задумался на тему запрограммить свой переходник. Не знаю, зачем оно мне надо при наличии в 10 минутах ходьбы магазина, где сиё лежит, но хочется. Надо будет закупиться мелкими контроллерами, пока есть возможность и потренироваться на них.
stanislavv
цитата радиогубительство "Если светодиод представить как -KI-, то со стороны К как раз катод."

Для меня не шибко актуально, я помню, что анод — там, где плюс, а катод — там, где минус. Впрочем, когда-то имел дело с радиолампами, так что, возможно дело ещё и в этом.
stanislavv
лытдыбр радиогубительство Пока москвичи не проснулись и не загрузили меня работой, решил заменить проводки аккуратным шлейфом, вырезанным из старого ide.
Выяснил, что слишком хорошо прибрался — не могу найти тот шлейф, откуда надо вырезать кусок...
stanislavv
· Edited
лытдыбр радиогубительство *лытдыбр *радиогубительство
lcd оказался тормозом и требует задержек между байтами, отчего с softspi работал, а с аппаратным — хрен, независимо от скорости передачи.
Теперь хоть что-то показывает. Но задержку придётся подбирать... И делать не системными функциями, а через пустой цикл, иначе будет вообще хреново со скоростью...

UPD: а вот хрен там... Не в задержке дело, а хз в чём именно...
Видимо, будет проще перейти на HAL и использовать готовую библиотеку, но хочется понять, какого хрена?
stanislavv
лытдыбр радиогубительство Ранее частота sck у spi была на 5% меньше, было очень похоже на то, что вместо HSE завёлся HSI с теми же множителями PLL.
Поменял делитель у spi и переложил плату в другое место на столе (меньше 10 сантиметров).
Теперь частота соответствует расчётной практически полностью.
Что это было и какого хрена?
stanislavv
лытдыбр радиогубительство От нехрен делать сдублировал shiftOut ардуины и сделал работу дисплея на нём, как в какой-то ардуиновой библиотеке.
Покрутивши дисплей в руках, увидел медленно появляющееся изображение.
Положил на стол — изображение прекратило обновляться.
Таки контакты в проводах... Нафиг, надо паять и забить на эти китайские разъёмы...
stanislavv
лытдыбр программазм радиогубительство Похоже, отпуск и его предчувствие на меня плохо влияют.
Закомметировал softspi, раскомментировал инициализацию железного spi, запустил тест — всё как надо на осциллографе
Что было — хз.
Правда, экран как не работал, так и не работает :-)
stanislavv
лытдыбр программазм радиогубительство Посмотрел осциллографом на свой softspi (реализована только передача на скорости tim4/3 и, похоже, можно подумать на тему tim4/2).
Пока есть следующие выводы про softspi:
1) Осциллограмма соответствует мануалу, что совершенно неожиданно неожиданно для меня, так как ранее подобных извращений не писал.
2) Пропусков тактов нет — это не успевают подаваться байты в процедуру, а не глюк логики.
3) Надо паять нормальные провода, а не эти недоразъёмы на штырьках.
stanislavv
лытдыбр радиогубительство От нечего делать решил померить частоту, на которой пропускаются такты в softspi. Начал с 5кГц по делителю, намерил 4.75кГц по показометру осциллографа (50 Гц меряет без такой погрешности, если что).
5% разницы дают понять, что кварц там только имеет маркировку, но нихрена не работает, похоже.
Либо я чего-то не понимаю, либо надо будет таки переделать инициализацию, чтобы этот случай отслеживать, а не полагаться на то, что рисует libopencm3.
stanislavv
лытдыбр программазм радиогубительство Паять не дают, мыслей по поводу аппаратного spi нет — делаю софтварный, на прерывании таймера. Делает вид, что работает, если верить осциллографу. Интересно, то, что длительность тактов там иногда удваивается — сильно помешает или нет?
stanislavv
лытдыбр радиогубительство После долгого перерыва решил всё ж поиздеваться над голубой пилюлькой и для разминки помигать двумя светодиодиками.
Помигать-то помигал (заодно выяснил, что загружать надо bin, а не hex, как было с другим набором софта), но сделал маааленькое открытие: мелкий светодиод отлично изображает из себя детектора и очень даже заметно светит, если одним концом ткнуть в питание платки, держась за другой.
Короче, питание надо более приличное, это — шумит-с...
stanislavv
лытдыбр программазм радиогубительство Обчитался статей про разработку и всякие тесты, отчего возник вопрос: как вообще тестировать фирмварь для небольших микроконтроллеров?
Если делать всякие ассерты на каждый чих в спецфирмвари с отладочной печатью в порт — не влезет в целевой контроллер или очень сильно замедлит выполнение, отчего тесты могут пройти, но вряд ли будут полезными.
Если тесты — на стороне компа, то накой они такие нужны, если основная проблема не всякие fft-функции из библиотек, которые тестами проверить можно, но смысла нет (библиотеки не мои), а работа с реальным железом, которого на компе нет и быть не может?

Ну то есть, юнит-тесты для алгоритмов я ещё понимаю — их можно проверить даже на стороне компа, если нет особенностей компиляции (если есть — см.выше про спецфирмварь). А вот как тестировать взаимодействие с железом? Скажем, что тот же АЦП действительно инициализируется в нужном порядке (некоторые виды оптимизации могут и переставлять команды), что работает с нужной скоростью, что есть взаимодействие с DMA, что прерывания от DMA таки идут, причём не только по окончании, но и по достижении половины буфера и т.п.

Вобщем, пока что вижу только, что отладочное дёргание выводом в прерывании (аналог print "буфер заполнен") и просмотр вывода осциллографом в прошлое не ушло, но это не тесты, это отладочная "печать" во время выполнения.
stanislavv
лытдыбр радиогубительство Попробовал интересу ради поискать на гитхабе алгоритм удаления шума из аудио, пригодный к реализации на микроконтроллере.
Не нашел, но таки охренел — очень много проектов удаления шума, основанных на глубоком обучении, нейросетях и т.п.