неплохо, но слишком уж наворочено. ( не хватает только встроенного просмотра картинок и прожига принимаемых данных на CD/DVD :) )
99% потребностей обычно закрывается возможностями Termite, а там где нужно что-то поверх проще открыть порт в lua/питоне/"подставьте сюда свой любимый скриптовый язык", чтобы распарсить какую-нибудь сложную посылку данных, выдернуть часть строки и спихнуть в какой-нибудь gnuplot для отображения.
Такое только с изотропными магнитами вроде может получиться (типа тех же AlNiCo но там и намагниченность и коэрцитивная силы никакие по сравнению с редкоземельными магнитами).
При этом не уверен что вообще есть материалы у которых точка Кюри выше температуры плавления, соответственно кристаллизация при застывании будет какая попало, вне зависимости от того какое магнитное поле приложено во время застывания.
Поэтому все редкоземельные магниты, насколько знаю, делаются вот так, через перемалывание в порошок до размеров доменов и потом выстраиванием уже отдельных песчинок в магнитном поле. Отсюда и заданное при прессовании направление только вдоль которого и можно потом намагнитить.
не обязательно за один раз весь магнит целиком магнитить. можно несколько раз с разных сторон неоднородным полем, чтобы противоположную часть не перемагничивало.
направление задаётся при начально прессовании неодимовых магнитов, и если неодимовый магнит поместить под углом 45 градусов к намагничивающему полю он всё равно намагнитится вдоль своей оси, поле только надо будет в 1.41 раза больше.
ну или можно создать именно радиальное поле, две катушки навстечу друг другу включенные, в плоскости посередине между катушками как раз радиальное поле и сделают.
круглый виток тока радиусом 1см с током 1А создаёт в центре как раз 6.28мкТл, если там 10кА - 62мТ, если витков 20 - 1.2Тл, чуть меньше для ненулевой по высоте катушки, раза в два наверное если высота ~ радиусу.
Нормально, они же все в одну сторону направлены, в ту же что и до размагничивания.
Есть, кстати, способы пайки магнитов, во внешнем магнитном поле (т.е. обложившись дополнительными магнитами), чтобы размагничивающие поля снизить и тем самым до Hcj не доходить при этой повышенной температуре, но это температуры лишь слегка отодвинет, на какую-нибудь сотню градусов, для расплавленного стекла не поможет. Но вот с самарий-кобальтом может такой фокус и получится, чтобы градусов 400, а может и 500 смогли пережить. не знаю правда есть ли стекло с настолько низкой температурой плавления.
А если не принципиально именно неодимовые магниты, то до их появления были всякие сплавы AlNiCo, там точка Кюри была чуть ли не выше температуры плавления, но как магниты они заметно слабее.
В том же или в противоположном направлении всё там нормально перемагничивается с ничуть не меньшей коэрцитивной силой. Поперёк или хотя бы под углом к изначально заданному направлению не получится, это да.
А для того чтобы «перекристаллизовать» это его придется обратно перемолоть в микронную пыль, «перепрессовать» во внешнем магнитном поле в нужном направлении, заново спечь и только потом намагнитить.
Магнитный момент можно измерить поместив магнит в катушку ну или повернув катушку вокруг магнита (и необязательно именно Гельмгольца, для них просто аналитически коэффициенты посчитаны, для произвольной катушки надо пересчитать) и проинтегрировав наведённое при этом по ходу помещения магнита напряжение, измеренное любым достаточно аккуратным АЦП.
А пару Тл в небольшом объёме можно и из постоянных магнитов собрать в цилиндр/сферу Халбаха, там правда проблемы с тем что в такой конфигурации они способны создать поля чтобы самого себя размагнитить.
Магнитная проницаемость неодимовых магнитов ~1.05 и от воздуха не особо отличается.
И что-нибудь с проницаемостью отличной от 1 будет обладать ещё и проводимостью, что мс импульсы наведёнными токам заэкранирует гораздо сильнее чем усилит проницаемостью.
А у каких-нибудь ВЧ ферритов насыщение довольно небольшое и в полях 2Тл отличия от воздуха по проницаемости будет опять же не сильно много.
Но вот какие-нибудь опилки нормального железа или пермендюра в эпоксидке замешанные возможно помогут, чтобы объёмной проводимости для токов Фуко не было, но магнитная проницаемость хоть какая-то ещё осталась при этом, даже на 2Тл.
у таких сегментных ЖК индикаторов довольно неприятное управление с кучей уровней,
и если нет возможности перехватить данные до контроллера (а они бывают встроенными в МК) то перехватывать напряжения управления непосредственно сегментов довольно гиблая затея, решаемая конечно, но при очень уж большой необходимости, нынче проще камерой будет распознавать что нарисовано. Или поверх дисплея печатную плату наложить повторяющую дисплей smd фотодиодами в нужных местах и читать уже их.
а протокол USB blaster давно разобран и очень простой, ну и прикидывается он тем же мостом от ftdi, так что грубо говоря нужна только единственная функция FT_Write.
для этого есть адаптеры от ftdi, с человеческим mpsse, который почти что угодно изобразить может, не только spi.
либо китайские клоны usb blasterов, за те же пару $$ что и программаторы на СН341, и с простым как валенок протоколом.
а с китайской документацией на заре появления данных поделий от wch у меня как-то не очень сложилось и были какие-то грабли с драйверами, сейчас уже возможно поправили.
к сожалению уже обычная практика и у производителей (сенсоры изображений, радиотрансиверы, всякие датчики положения с обработкой внутри), вместо нормальной документации выкладывать аппноуты вот ровно с такими портянками: для инициализации вот этого режима - пишите вот этот набор магических циферок по вот этим адресам, !описания которых иногда просто нет вообще!
если так уж не хочется использовать сторонние приложения (хотя sed при этом всё равно зачем-то вызывается из С), можно было гораздо немногословнее одним только компилятором и обойтись.
в пиксельном шейдере дорисовать круг в конце каждой линии, диаметром в её ширину
неплохо, но слишком уж наворочено. ( не хватает только встроенного просмотра картинок и прожига принимаемых данных на CD/DVD :) )
99% потребностей обычно закрывается возможностями Termite, а там где нужно что-то поверх проще открыть порт в lua/питоне/"подставьте сюда свой любимый скриптовый язык", чтобы распарсить какую-нибудь сложную посылку данных, выдернуть часть строки и спихнуть в какой-нибудь gnuplot для отображения.
https://github.com/tsoding/good_training_language
Такое только с изотропными магнитами вроде может получиться (типа тех же AlNiCo но там и намагниченность и коэрцитивная силы никакие по сравнению с редкоземельными магнитами).
При этом не уверен что вообще есть материалы у которых точка Кюри выше температуры плавления, соответственно кристаллизация при застывании будет какая попало, вне зависимости от того какое магнитное поле приложено во время застывания.
Поэтому все редкоземельные магниты, насколько знаю, делаются вот так, через перемалывание в порошок до размеров доменов и потом выстраиванием уже отдельных песчинок в магнитном поле. Отсюда и заданное при прессовании направление только вдоль которого и можно потом намагнитить.
не обязательно за один раз весь магнит целиком магнитить. можно несколько раз с разных сторон неоднородным полем, чтобы противоположную часть не перемагничивало.
направление задаётся при начально прессовании неодимовых магнитов, и если неодимовый магнит поместить под углом 45 градусов к намагничивающему полю он всё равно намагнитится вдоль своей оси, поле только надо будет в 1.41 раза больше.
ну или можно создать именно радиальное поле, две катушки навстечу друг другу включенные, в плоскости посередине между катушками как раз радиальное поле и сделают.
сделать мультипольную линзу. возможно не обязательно импульсную. а поля поднять за счёт проницаемости железа.
где тут?
круглый виток тока радиусом 1см с током 1А создаёт в центре как раз 6.28мкТл, если там 10кА - 62мТ, если витков 20 - 1.2Тл, чуть меньше для ненулевой по высоте катушки, раза в два наверное если высота ~ радиусу.
Нормально, они же все в одну сторону направлены, в ту же что и до размагничивания.
Есть, кстати, способы пайки магнитов, во внешнем магнитном поле (т.е. обложившись дополнительными магнитами), чтобы размагничивающие поля снизить и тем самым до Hcj не доходить при этой повышенной температуре, но это температуры лишь слегка отодвинет, на какую-нибудь сотню градусов, для расплавленного стекла не поможет. Но вот с самарий-кобальтом может такой фокус и получится, чтобы градусов 400, а может и 500 смогли пережить. не знаю правда есть ли стекло с настолько низкой температурой плавления.
А если не принципиально именно неодимовые магниты, то до их появления были всякие сплавы AlNiCo, там точка Кюри была чуть ли не выше температуры плавления, но как магниты они заметно слабее.
В том же или в противоположном направлении всё там нормально перемагничивается с ничуть не меньшей коэрцитивной силой. Поперёк или хотя бы под углом к изначально заданному направлению не получится, это да.
А для того чтобы «перекристаллизовать» это его придется обратно перемолоть в микронную пыль, «перепрессовать» во внешнем магнитном поле в нужном направлении, заново спечь и только потом намагнитить.
Магнитный момент можно измерить поместив магнит в катушку ну или повернув катушку вокруг магнита (и необязательно именно Гельмгольца, для них просто аналитически коэффициенты посчитаны, для произвольной катушки надо пересчитать) и проинтегрировав наведённое при этом по ходу помещения магнита напряжение, измеренное любым достаточно аккуратным АЦП.
А пару Тл в небольшом объёме можно и из постоянных магнитов собрать в цилиндр/сферу Халбаха, там правда проблемы с тем что в такой конфигурации они способны создать поля чтобы самого себя размагнитить.
https://www.amtc.org/en/production/permanent-magnet-systems/highly-intensive-halbach-type-magnetic-field-systems
при этом можно часть, сколько получится, пару Тл, создать постоянного поля, а поверх ещё добавить импульсного от катушки.
>магнитопровод из тех же отожжёных магнитов,
Магнитная проницаемость неодимовых магнитов ~1.05 и от воздуха не особо отличается.
И что-нибудь с проницаемостью отличной от 1 будет обладать ещё и проводимостью, что мс импульсы наведёнными токам заэкранирует гораздо сильнее чем усилит проницаемостью.
А у каких-нибудь ВЧ ферритов насыщение довольно небольшое и в полях 2Тл отличия от воздуха по проницаемости будет опять же не сильно много.
Но вот какие-нибудь опилки нормального железа или пермендюра в эпоксидке замешанные возможно помогут, чтобы объёмной проводимости для токов Фуко не было, но магнитная проницаемость хоть какая-то ещё осталась при этом, даже на 2Тл.
у таких сегментных ЖК индикаторов довольно неприятное управление с кучей уровней,
и если нет возможности перехватить данные до контроллера (а они бывают встроенными в МК) то перехватывать напряжения управления непосредственно сегментов довольно гиблая затея, решаемая конечно, но при очень уж большой необходимости, нынче проще камерой будет распознавать что нарисовано. Или поверх дисплея печатную плату наложить повторяющую дисплей smd фотодиодами в нужных местах и читать уже их.
без описания регистров - один хрен, уж лучше закрытый блоб, чтобы это "некоторое дерьмо" лишний раз не видеть.
у ftdi есть человеческая документация и нормальные драйвера, ну и куча io на чипселекты, подключал 8 штук ацп. с оберткой в луа для удобства https://github.com/pavel212/uffi/blob/master/example/ads1263.md
а протокол USB blaster давно разобран и очень простой, ну и прикидывается он тем же мостом от ftdi, так что грубо говоря нужна только единственная функция FT_Write.
для этого есть адаптеры от ftdi, с человеческим mpsse, который почти что угодно изобразить может, не только spi.
либо китайские клоны usb blasterов, за те же пару $$ что и программаторы на СН341, и с простым как валенок протоколом.
а с китайской документацией на заре появления данных поделий от wch у меня как-то не очень сложилось и были какие-то грабли с драйверами, сейчас уже возможно поправили.
к сожалению уже обычная практика и у производителей (сенсоры изображений, радиотрансиверы, всякие датчики положения с обработкой внутри), вместо нормальной документации выкладывать аппноуты вот ровно с такими портянками: для инициализации вот этого режима - пишите вот этот набор магических циферок по вот этим адресам, !описания которых иногда просто нет вообще!
да всё равно придётся
https://github.com/ataradov/mcu-starter-projects/tree/master/rp2040
если так уж не хочется использовать сторонние приложения (хотя sed при этом всё равно зачем-то вызывается из С), можно было гораздо немногословнее одним только компилятором и обойтись.
version_auto.h:
#ifndef AUTO_VERSION_H
#define AUTO_VERSION_H
#define GIT_BRANCH "main"
#define GIT_LAST_COMMIT_HASH "0d47eb16"
#include "build_counter.h"
#endif
build_counter.h:
#define BUILD_COUNTER 16
inc_counter.c:
#include <stdio.h>
#include "build_counter.h"
void main(){printf("#define BUILD_COUNTER %d",BUILD_COUNTER+1);}
после сборки выполнить:
cc inc_counter.c & inc_counter > build_counter.h
>44 КБ в UTF-8
KOI8-R же!!!