> Вот подобное в терминале через ж..Worksforme. Вполне можно околореалтаймно трекать что фирмвар делает. А если DMA запрячь даже тайминги не испортятся особо, в том смысле что надо только сетапнуть транзакцию (это быстро) а железо само блок в уарт пошлет не клиня фирмвар.
> Разве что лог посмотреть, для чего незаменимо.
Реалтаймный лог/трейс/простой анализ.
> Но watches в терминале смотреть? Наверное здорово, со структурами и
> массивами работа организована, и правка параметров.
Да вот как-то накодил показ DMA-buf отсчетов ADC. Оно само по себе живет, загребает на автомате железом кучу параметров, околореалтаймно кажет. И вот так...
1) Я вижу эволюцию параметров. Околореалтаймно. Лимитирует в этой схеме человек.
2) Можно и сразу фильтрацию обыграть, визуально хорошо видно "где я".
3) Я визуально вижу как работает ADC (и подсистема питания) джиттер LSB и все такое.
4) Это не требует ничего кроме терминалки, так можно орудовать в поле или у других людей с минимальными пререквизитами. Я даже с мобилки (в режиме хоста) FTDI зацепить к терминалке могу.
> Но незаменим он, только когда требуется работа с консолью.
В моем случае это дефолтный modus of operandi. Я юзаю гуй только если это что-то радикально улучшает. Потому что консольные операции проще оптимизировать, автоматизировать, "букмаркать" в виде скриптов и проч.
> а с чужим объёмистым куском кода поди ка разберись, с тем
> что бывает и авторы победить не могут.
Бывает. Но я иногда обыгрывал это дополнительными бонусами типа git bisect. Даже если я в коде профан и он огромный, поиграв в мини игру я локализую проблему до 1 комита и возможно очень небольших изменений. Это сильно повышает шансы. И меня и автора. Я так чинил даже совсем незнакомый код. Это довольно странное ощущение но это работает.
> местах, стороних зависмостей нет вовсе, и простого редактора и mc таки хватит.
Для heavy lifting лучше все же взять тул помощнее. Вон то я обычно дял чего-то лайтового. Ну там DTS немного отрихтовать например, если вы понимаете о чем я. Да, я могу например кастомизнуть DVFS под реальные возможности охлаждения ВОТ ЭТОЙ железки а не семейства процов/SBC в вакууме.
> ничего критичного не содержат. Да и дома, ноутбуки раздельные для работ, и для фигни.
У меня разделение скорее функциональное. Работа и фигня бывают довольно тесно переплетены, в том плане что я реюзаю код, схемы, etc.
> Это если за даром, или урасть, то untrusted,
Я плотно работал с MS и знаю что они такое. Такие вещи для меня untrusted хоть там как.
> а не "я художник, я так вижу". Привет авторам Гнома и КДЕ.
Я ни тем ни другим не пользуюсь. А еще если я могу перетрясать структуру системы от и до - очевидно что она будет такой какой этого хочу я, плюс-минус. А вот с виндой это не катит. Почему-то. Наверное отсутствие модульности и сорцов мешает.
> Когда в семье только одна жена, она становтся эгоисткой.
Я нашел с пингвинами общий язык, мне нормуль :)
> Так оно не массовое. Даже известные профессиональные программы не всякий
> обычный пользователь назовёт. А если это для астрономии, или лучше химфизики, так про
> них не всякий профессионал слышал.
Ну да. И мне в общем то нужны только программы которые и в опенсорсном варианте есть. Мне для моих нужд хватит.
> работу делает хорошо. Смешно, что исходники от последней есть, но.. там
> такие исходники в стиле "чукча не читатель, чукча писатель",
Китайцы вообще не очень хорошие кодеры. В майнлайне их толпой строят еще, а сами по себе они ужасны.
> Настоящий программист всега говорит, что может, а потом думает как.
Я обычно сперва оцениваю скиллы и силы. Так факапов меньше.
>> В виндусе нет "apt source"
> А разве проекты не из репозиториев берут и ОТПРАВЛЯЮТ назад?
В конкретном релизе стабильного дистро я оперирую тем что есть. Это многофакторная проблема. Такой подход например гарантирует что я сегодня рисую в каде как планировал а не чиню факапы распоследней либы сломавшей мне кад. У меня конечно есть машины времени и мультивселенные, но "просто порисовать в каде" проще чем "затеять откаты".
> И любом соременном IDE на всех ОС это интегрировано или есть плагины,
> даже консоль не нужна.
А потом такие прогеры шагу ступить не могут в продвинутых аспектах руления DVCS... я так не хочу и ворочаю все ключевые операции с гитом через его нативный интерфейс. Поэтому могу вон тем показать мастеркласс сделав bisect на штуке с линукскернел размером. Фиг его знает сможете ли вы так вообще через IDE.
>> низкоуровневый сервистул забацал - "любому" лучше держаться от него подальше,
> От подобнои ПО и держатся подальше. Все.
Такое ПО делается либо для себя и внутренних целей, либо по очень явному запросу кастомера оплачивающего такой банкет и точно знающего что он хочет. "Всем" такое ПО не надо, их девайсы целее будут.
> А теперь сделайте portable вариант. Если осилите, то кроссплатформенный.
Логин по ключу вполне кроссплатформенный: ssh есть под кучу платформ.
Но если кастомер особо душный я могу показать фокус с "репликаторами". Дать пару одноплатников с специальной фирмварью, которая позволит делать копии вон тех, нарезая им sd карты или флешуя внутреннюю память - с вообще полным пофигом какая там у них предпочетаемая ОС, потому что на "репликаторе" ос правилььная, все настроено как надо, пермишны есть, и - вот - может сделать +1 копию вон той штуки, если договоренности вот такие, вопрос подключения карты или самого девайса в допустим usb той штуки. Это от оси кастомера не зависит, она выпадает как фактор. Пингвин крут в его кастомизабельности. А вот такую штуку из винды я не сделаю.
> Десктоп, это не игрушка для пары гиков, а инструмент и для обычных пользователей,
Вот пусть корпорация Майкрософт их и ублажает, я не возражаю. При чем тут я?
> которые должны решать свои задачи простыми очевидными и удобными способами.
А меня интересует эффективность моего взаимодействия с машиной. Это повод юзать Linux а не Windows. Скатываться на тот уровень я не планирую и мой интерес к нему как максимум побочный.
> И замечу, что обычных пользователей большинство.
А многим людям и компьютер не требуется особо.
> консоли, пользователь не осилит.
Я не таргетирую "совсем глупых" пользователей. Это просто занятие для других людей.
> Как пример, с Маком справятся и бабушки и блондинки, и гикам тоже
> много чего отанется.
Мне от мака ничего не нужно. И я рад за их пользователей, но чего от них ждать показал iPhone. Да, круто, удобно, технологично. А еще тоталконтрол. Эпл лучше вас знает даже какие иконки вы любите. И вы даже апдейт откатить с ненавистными новыми иконками не можете, о как. Это то чего на самом деле хочет фирма Эпл. По факту они делают симпотные цифровые ошейники. Да и майкрософт совсем не против что-то такое, если что.
> Сейчас есть тенденция к десктопному интерфейсу Linux с человеческим лицом, но уж
> очень медленная.
Вон андроид есть. Мало? Это конечная точка эволюции чего-то такого. Но мне ЭТО даром не надо.
> Хотя, на производстве рабочие места на _десктопном_ Linux появились
> задолго до культа импортозамещения, и речь не об офисах, а о
> управлении производственным оборудованием.
В таких вещах несколько проще. И я совсем не против симпатичных и юзабельных интерфейсов но к сожалению не все так просто в этом мире. И как показывает пример андроида и проч, более разумное существо заботится о корове не просто так.
> Саму консоль похоронили. Скролл с помощью костылей - это не серьёзно.
Оно на UART висит и потому отрисовывается в обычной терминалке. Особенно удобно на одноплатниках, штуках типа роутеров и, вот, VM.
> Можно, но если нет пары сотен обменов по каждому SPI интерфейсу в
> секунду, и других критичных прерываний.
У STM32 кроме всего прочего есть...
1) Приоритет прерываний и nested IRQ. Нечто важное может вышибить нечто менее важное.
2) DMA. И пара сотен IO по SPI внезапно совсем не проблема. Можно даже жестко реалтаймный битстрим сделать, совсем без пропусков, независимо от того чем проц занят. Лишь бы шин на все хватало.
> А вообще, даже совсем мелкие процессоры сечас все больше двухядерные идут.
Это по своему удобно но и сложность системы сильно повышает.
> Из баловства, esp8266 может на этом LED сформировать цветной видеосигнал вместе с несущей,
Теперь попробуйте esp8266 что-нибудь на LED принять... у него не факт что analog IO вообще хватит на такое.
> а stm32 может используя этот LED как антенну, принять и
> демодулировать радиосигнал. Побаловаться, это я всегда пожалуйста.
Из LED никакая антенна, кусок провода/дорожка лучше и надо иметь какой-то план для демодуляци. Но вот ФОТОДАТЧИК из него относительно работающий - на короткие дистанции. Любой PN переход чувствителен к свету. Даже LED.
> Это оно, и при интенсивном обмене, точно оно.
Факап с неустановкой бауда - был всегда. Просто просим бауд который не работает. Врут что все збс. Даже на обычном RS232 @ 16550. Просим на нем 921600 которые он не умеет. Апи никаких ошибок не выдает. Круто, а как вообще узнать смог он такой бауд или нет? В линухе - апи отлупляет если драйвер вон то не умеет.
> Кривой драйвер вляпался в свою блокировку,
Да какая блокировка в установке бауда? Это до начала активных коммуникаций обычно. Т.е. косяк или в апи или в драйвере или в их взаимодействии. Драйвер уж простите 16650 точно винда предоставляет. Вопросы так и сяк к MS. Но писать MS то же самое что в спортлото. Ну почти. В лине же запросто починят - или я сам патч закину если смогу.
> или автор забил на обработку ошибок, ибо "что может пойти не так?".
Автор драйвера 16550 (самый типовой олдовый RS232) - внезапно корпорация майкрософт и там это все тоже было. А у FTDI можно и вот клонопроблем вообще познать.
> А в открытых драйверах по дружески бы ткнули носом, и проблема исчезла.
Там культура самообслуживания развитее.
> заведомо кривые правила udev. ;)
Там так по крайней мере можно. А в винде какой-то оверрайд обработки того VID/PID это вообще хз, наверное нерешаемо. Вон libusb умееет детач ядерного драйвера в лине, а в винде так не смогли. Актуально если прога хочет напрямую с usb девайсом поработать сама а не через ядерный драйвер. В итоге в лине она сама спихивает вон тот драйвер и вон тот девайс флешится. А в винде надо мануально драйвер дисаблить.
> Я Вам одну вещь скажу по секрету. Работа с com портами в
> отличии от сокетов в Windows и Linux отличается не кардинально.
Вы это сказали тому кто несколько "кроссовых" программ такого плана написал. Откуда и узнал о тех соотношениях. И вот имея возможность сравнить, линь репортит что не смог в тот бауд, а винды - нет. Хотя полей в апи для этого - есть.
> и тот же файл , всего то несколько #ifdef.
Да оно так и есть - но в случае виндов пришлось совсем зарубить попытку апгрейда бауда на максимальный. Потому что апи не изволит отлупить что нишмагло в запрошенный бауд. Ну, юзеры винды не ленивые, подождут в эн раз дольше, пехая на 115200 - не понятно как я должен узнать что их железо могло больше не уронив линк. Можно конечно продвинутый хендшейк сделать с таймаутами но это код в разы сложнее и фирмвар толстеет.
> Nfc тоже дальностью не увлекается. Была б идея, а применение найдётся.
Ну вот мне понравилось делать прикол с волшебным фонариком, когда LED на самом деле процом рулится и не просто светит а модулирует это. А светодиод паршивенький фотодетектор, но если на лапке есть ADC, и он не совсем г, ту модуляцию можно таки выловить и получается "неожиданный" инверсный канал. При том по деталям как таковое ничего не требует. На самом деле довольно неизведанная область. Представьте реконфиг или рефлеш чего-то ... фонариком :D
> Но тогда и все деньги ему. А если с этого и Вам бы оставалось, пришлось бы пересмотреть.
Да, но тасков на этом глобусе много разных. А я не могу быть крут во всем и сразу. Вот я и решил специализироваться в пингвинах. А еще я не очень крутой повар и я бы не рекомендовал мою выпечку, допустим. В линухах я значительно лучше чем в этом. Даже если и не получу часть денег.
> Ну плавить то и я не буду,а контроллеры для горного и металлургического
> оборудования, и металлобработки кто делать будет? Инженеры или сами рабочие? ;)
А это разделение труда уже в обратную сторону. Я лишь намекал что не могу знать и уметь вообще совсем все. Поэтому на данный момент предпочту лучше знать линух и мк - в ущерб знанию виндов.
> Да, технологической спецификой занимаются профессионалы из соответсвующих областей,
> но в какой то мере вникать и самим приходится.
Разумеется. Сделать подобный контроллер совсем без понимания специфик тот еще впрыг на грабли.