Началось все с того, что мы почти случайно договорились с Межрегиональной компьютерной школой в подмосковной Дубне о проведении для их слушателей чего-то вроде лекции о проектировании микропроцессоров. Тема эта известна мне не понаслышке, два десятка лет в ней варюсь. Довелось поработать и в отечественных, и в зарубежных фирмах. Ну и почему бы подросткам не рассказать, в чем состоит работа инженеров, выдумывающих внутренности «процов». Это не среди таких же зануд на конференции выступать — перед детьми просто оттарабанить текст не получится. Если им будет совсем не интересно, то плевать им на почетные седины, блистательные лысины и надутые щеки. Будут зевать, не стесняясь, и ерзать на стульях в надежде сбежать поскорее. Но есть и плюсы — всякие вольности, шутки, неточности и упрощения не вызовут негодования и требований сжечь еретика-докладчика. В общем, судя по количеству вопросов в процессе общения, первый блин вышел не комом, стало интересно двигаться дальше.
А дальше после подобного занятия со школьниками и преподавателями уже в лагере Goto Camp возникла идея дать попробовать детям самим собрать на макетке разнообразные «запчасти» для процессоров и пощупать их вживую. Благо в лагере среди разнообразных программистов было и логово робототехников, у которых можно было разжиться микросхемами, проводами, светодиодами и кнопками. Такой подход в тысячу раз лучше, чем разглядывать схемы и диаграммы на бумаге. Увидеть своими глазами, как нолики и единицы бегают внутри схемы, потыкать в логические вентили пальцем — что может быть надежнее для освоения материала. А то они программируют свои микроконтроллеры, как черные ящики, вообще не представляя, что у тех внутри шуршит. И даже ПЛИСы не решат задачу сделать электронику наглядной. Ну, написал ребенок на Verilog'е логическую функцию, ну, закачал ее через программатор внутрь — результат тот же, вся логика скрыта в недрах микросхемы. Поэтому — только вентили. А еще лучше — транзисторы.
Набор «рассыпухи», доступной в лагере на момент озарения, был небогатым. Но главное — он был. Нужно было на этой базе придумать нечто, что могло призывно мигать лампочками или чем-нибудь жужжать. Ситуация осложнялась тем, что я провел теоретическую беседу о микропроцессорах и уехал к себе домой за 50 км от лагеря. То есть я был тут, а детали — там.
Поэтому с одним из преподавателей пришлось устроить сеансы телеэлектроники. Я придумывал схемы, рисовал их на промокашках и пересылал фотографии ему. А он пытался разобрать эту клинопись, собрать ее на макетке и добиться правильной работы. Описывал мне результат в ответных сообщениях, а я старался определить причину неполадок и глюков, чтобы их устранить. Удивительно, но в итоге все же нам удалось победить две схемы: дешифратор адреса и мультиплексор. Еще не было ясно, как это понравится детям, но уже было что им показать.
В лагере был устроен опрос, есть ли желающие посетить уже не лекцию, а семинар с лабораторкой на тему работы внутренностей цифровых чипов. Нашлась дюжина отважных пятнадцатилетних, которым не страшно было попробовать понять материал, который, между прочим, на третьем курсе института обычно рассказывают. Сразу было ясно, что из изложения надо к черту исключить ТТЛ, ЭСЛ и прочие замшелые типы логики, которыми профессура конопатит мозг студням. Только КМОП, только мейнстрим! На свой страх и риск включил туда объяснения принципов работы МОП-транзисторов в цифровых схемах. Но без физики полупроводников и прочих ужасов.
Здесь лирическое отступление в адрес тех, кто ругает современную молодежь за лень и глупость. Пусть они не бухтят, вот что. Нормальная у нас молодежь, не слушайте старых ворчунов, парни и девчонки. Лирическое отступление окончено.
Дети так ловко схватывали материал, после объяснений и примеров смело выходили к доске, установленной прямо на лужайке под открытым небом, и рисовали по таблицам истинности вентили на транзисторном уровне — это было прекрасно. Потом вместе на этих вентилях мы «изобрели» сумматор, дешифратор и мультиплексор. А после этого — тадам! — преподаватель и добрый волшебник Алексей вынес макетки с результатами наших с ним телемучений. Это вызвало некоторый ажиотаж среди слушателей — можно потрогать руками то, что только что рисовалось на доске фломастерами, и понажимать кнопки, наблюдая за переключением светодиодов на выходах. Лучшая реплика при этом была: «Ааааа, теперь я понял, куда подевались почти все провода из лаборатории!»
После этого дети задали много вопросов по электронике. На них мне, к счастью, хватило квалификации ответить. Кроме одного: «А где почитать про то, что вы рассказывали?» А ведь и негде. Старые советские книжки, по которым мы паяли свои цветомузыки и радиоприемники, устарели с точки зрения «цифры». Институтские буквари своими формулами отобьют всякое желание изучать электронику. Есть прекрасная книжка Харрисов, но там нет экспериментов на макетке. Есть отличные наборы компонентов с макетками, но там обычно нет подробных объяснений, как все эти устройства работают. Опять пришлось уезжать с чувством, как будто что-то не доделал.
Как известно, если тебя не устраивает то, что есть, не ной, а сделай сам, как считаешь нужным. Пришлось засесть за написание и издание учебно-практического курса для толковых школьников. Для этого, конечно, потребовалось купить детали, макетку, провода и начать играть в работу дома. Внезапно это оказалось страшно увлекательно.
Вот, например, игра «кто быстрее» на двух МОП-транзисторах:
Мы эту игру потом собрали на печатной плате с младшеклассником, и она вызвала живой интерес у его школьных товарищей, которые целую неделю на переменах азартно жали кнопки, отложив смартфоны в сторону. Кто там говорит, что детей от телефонов за уши не оттащишь? Ну а герой паяльника и канифоли потребовал придумать что-нибудь еще, чтобы можно было поразить товарищей.
А вот это — вентиль XOR (исключающее ИЛИ) на дюжине транзисторов:
А вот это D-триггер, срабатывающий по уровню (триггер-защелка). На нем прекрасно отрабатываются идеи запоминания и хранения данных:
Разобравшись с работой всех видов логических вентилей на транзисторном уровне, можно перейти уже к микросхемам малой степени интеграции серии CD4000. Никаких чудес и магии в их работе уже не будет после возни с транзисторами на макетке. Вот, например, полный сумматор:
А вот, не поверите, макет оперативной памяти. Он, конечно, убогий — четыре регистра по два бита. Но это честная память с дешифраторами адреса, битовыми шинами, запоминающими ячейками и прочими узлами и проводами, в каждую точку которых можно ткнуть щупом логического пробника и по загорающимся и гаснущим светодиодам увидеть беготню нулей и единиц по схеме, разобрать в деталях процессы чтения и записи данных.
Всего в новом варианте курса для летней школы насчитывается три десятка схем, развлекательных и образовательных, которые последовательно от одного транзистора до десятка микросхем помогают детям узнать цифровую электронику, даже не умея программировать.
В общем, нынешним старшеклассникам точно по зубам освоение премудростей проектирования компьютерного железа с самого низкого уровня. Нет там ничего такого, что недоступно пытливому уму при современных компонентах и возможностях. Есть надежда, что удастся расширить и углубить пропаганду микроэлектронных ценностей среди населения.
Комментарии (184)
tormozedison
24.03.2019 08:48На одном сайте встречал критику именно игры «Кто быстрее»: «даже советские дети не стали бы в это играть, а уж современные — тем более». А вы показали на практике, что критик неправ. Успехов вам!
truebest
24.03.2019 10:05+1Чтобы не ломать судьбы детей, начните новый лагерь с обзора зарплат, электронщиков, микроэлектронщиков, программистов плис, мк и тд. И сравните их с Go, Java, Python, Anrdoid, IOS, С/С++, а направлении ИИ и Data Scientist. Она в 1,5-3 раза выше. Даже элементарный запрос (stm32) в hh выдает 124 вакансии, против 5800 у Java. Если там еще останутся ребята, то можно продолжить работу. Еще не понятно? Разработки электроники в России почти нет, а уехать, не у всех хватит сил, ресурсов и тд.
А если мы говорим про микроэлектронику где изучаются все переходы, дырки, электроны и кулоны, то с этим еще сложнее. Вчера у меня был в гостях приятель, закончивший университет по направлению микроэлектроника, просил помочь ему со схемой. Говорит, понимаешь, я все знаю, как это устроено, как там все внутри работает и тд, но в схеме я не понимаю как мне это все применить. Мы с ним познакомились на производстве, он управлял техпроцессом автоматического монтажа и сборки печатных плат.
Напишите компаниями типа Nordic Semiconductor, возможно они скажут, какие знания нужно иметь чтобы можно было попытаться устроиться Digital IC Designer. Вот это, может хоть как-то помочь сделать их жизнь качественной.pgkirich Автор
24.03.2019 10:31Зачем бы мне кому-то писать, я сам на Интел несколько лет отработал. С теми знаниями, что в МИФИ получил и за три года работы в отечественной фирме приобрел.
truebest
24.03.2019 12:48Только правда посмотрите на самый первый комментарий от tehnolog. Человек хорошо знаком с Андройд несколько лет. И только после этого он пошел и купил ардуино как хобби. Хобби занимаются когда все хорошо.
Я надеюсь что для большинства тех детей, все это направление останется только как хобби.
Я надеюсь что они не потратят кучу времени на это, чтобы как основная часть моих друзей (по всей стране, я очень много выступал на конференциях по железу и софту), не переучивались потом на Java и Go, столкнувшись с объективной реальностью.
Скажите а почему же ты этим занимаешься? Мне скорее не повезло, из-за дикой любви к электричеству с 4-х лет. Мелкого не пустили на радиокружок. А как заставить примата заниматься чем-то? Показать, завлечь, а потом запретить.
beduin747
24.03.2019 11:35+2Вы ребенку футбольный мяч купите только потому, что у футболистов зарплаты большие? И лекцию про это устроите?
Все новшества и разработки тянут на своих плечах увлекающиеся люди, а не манагеры, для которых важна только личная прибыль. Именно манагерский подход убил (и убивает) и творчество, и идеи, и стремление к улучшению.
И ни кто не говорит, что дети после этих занятий сразу побегут поступать в институты. Для кого-то это может стать работой жизни, для кого-то хобби, для кого-то просто останется приятным опытом из детства. И очень приятно, что есть люди, которые предоставляют возможность сделать этот выбор.truebest
24.03.2019 12:18+1Все-таки есть другая сторона. Вот пример, недавно недополитик говорил, что дети гранату не умеют бросать и оружие в руках держать, надо что-бы их этому обязательно учили, да и со школы или в спорт лагерях и тд. Вопрос, зачем учить тому, что в нормальном цивилизованном обществе ненужно? Проводя аналогию, ну так вот цифры «выдает 124 вакансии, против 5800», как раз говорят что обществу это ненужно. Я бы не хотел чтобы метание гранат в людей, для кого-то стало работой жизни, хобби, и тд. Мы все прекрасно понимаем, что если вы даете такой урок малому, он отложится на подкорке в качестве опыта. Любой опыт, хороший плохой, неважно. Может сразу все-таки человека направить туда, где с высокой вероятностью он станет как минимум программистом, с хорошей ЗП, а как максимум добьется успешного успеха в Google, Microsoft или других компаниях, а потом, если захочет, станет основателем например как это случилось с memsql?
Все разработки тянут на себе увлекающиеся люди, да и компании, я посещал все хакатоны Intel Edison в Питере и Москве, там действительно много умных и талантливых ребят было, делали проекты, ребята из emlid посути сделали первый RTK GNSS устройство на Edison и у них получилось сделать стартап, большие молодцы.
Но больше Intel не делает хакатоны, и проект Intel Edison закрылся. Я тоже попробовал сделать свое устройство, сделал, даже образцы продал, год тестировали, почти 2 года на все ушло, более 2,5 млн.руб, и всем все нравилось, но манагерский подход руководителей, убил проект. Скоро расскажу о нем на хабре. Пока еще осталось немного денег, попробую продвинуть проект.
А когда денег не останется, то скорее всего я пойду на работу, где мое творчество, врят-ли кому-то нужно будет, а нужно будет выполнение конкретных задач.
Да и сами вы не будете думать о творческих задачах, если вам банально поесть нечего или заплатить за квартиру.Int_13h
24.03.2019 13:33+4Не знаю как насчет микромикромикроэлектроники, а вот просто электроника это реальный хлеб, иногда даже с маслицем, даже в самые мрачные времена. Меня она как начала в 7 классе кормить, так и кормит вот уже 22 года, несмотря на полный писец по всем моим профильным и не очень специализациям на местном рынке труда.
КонечноGo, Java, Python, Anrdoid, IOS, С/С++, ИИ и Data Scientist
вероятно более востребованы на рынке, даже на локальном, но вот лично мне тяжело заниматься более прибыльными, но абсолютно не интересными мне вещами. Но если решиться заниматься неинтресным делом, то есть еще более выгодные (и востребованные рынком труда!) позиции, чем Го-программист — менеджер по продажам например :)
Ну и в случае полного упадка экономики уже и программировать ничего не придется, и продвать друг другу будет нечего, а вот на отремонтировать что-нибудь сломавшееся всегда будет спрос, а значит будет и хлеб, и масло, и ресурсы на квартплату. В крайнем случае, можно будет паять айфончики в каморке под лестницей за доширак в странах первого мира :)truebest
24.03.2019 14:24-1Хлеб иногда с маслицем это хорошо, и меня она кормит но…
Востребованы и работники клининговых компаний, их тоже это кормит…
Но есть конкретный измеримый результат, в электронике это устройство работает, потребляет определенный ток, и тд.
В биологическом представлении, вы потратили N своего времени (невозобновляемого ресурса), поменяли его на деньги. Купили дом, машину, квартиру и тд.
Я все понимаю когда, ребята вот есть Go, Java, Python, Anrdoid, IOS, С/С++ и там вы будете зарабатывать X2-4. Вы сможете работать в крупных компаниях, над крупными проектами, в худшем случае в частных компаниях писать приложения, либо свои, а есть вот электроника, там вас в лучшем случае ждет КБ, X1 зарплата, а в худшем будете чайники и телевизоры со стиралками ремонтировать. Если вы согласны, значит это осознаный выбор. Если человек готов к этому, то я не против.Int_13h
24.03.2019 15:06+2Есть работа интересная, есть работа высокооплачиваемая, не всегда они совпадают. Вопрос приоритетов.
Вот можно в одной и той же компании можно копаться в железячках АСУТП за х1, а можно программировать 1С за х2. Почему то у нас в городе 95% вакансий программиста это как раз 1С, с очень вкусными предложениями по зарплате, но спрос не рождает предложение, так как вакансии эти висят годами.
Ну и в электронике можно найти свою нишу, с достойной материальной компенсацией потраченного времени. А вот как раз ремонт чайников в эту категорию не попадает, но на черный день сгодится.
Pyhesty
24.03.2019 12:00+1запрос не верный, ищите "радиотехник", в отличие от программистов, радиотехник более широкая профессия, он не имеет право узкоспециализироваться…
нас в городе зп радиотехника выше программиста и вакансий в разы больше…truebest
24.03.2019 12:32-1Радиотехник -в hh 440 по России. Здесь еще включены ребята, которые занимаются ремонтом телефонов и ноутбуков, в магазинчике или ларьке возле метро, или менеджер по продажам. А так, профессия широкая, не спорю.
Зп радиотехника выше программиста — да ладно, это где?gFanis
24.03.2019 18:59+1Зарплата флотского электромеханика — в среднем по России 220, за бугром — до 7000 евро. Но при соответствующем образовании — здесь от дизеля, локатора до последних автоматов навигации. И на пенсию в 55 :-)
truebest
24.03.2019 19:34-2Ого, это много. Ну на любых досках объявлений такой вакансии никогда не увидишь. Да и этот корабль должен плыть куда-нибудь в сторону Сирии, с крайне непростой командой.
Есть еще одна большая разница между бугром и нашими. Например, за бугром не очень круто делать работу, за другого человека. Тоесть если вы старший инженер, вы не будете делать работу за электромеханика. У нас же, руководство так поставит вопрос, что у тебя неостанется выбора.
Кроме того я видел как технический директор, крупнейшев в России компании по производству мяса, давал задание главному инженеру подыскать электрика за 15-20 тысяч.
Потому в россии многие мамкины инженеры, и в различных пабликах постят как и дом построил, и розетку починил, и холодильник, и свет провел, машинку подключил и плитку уложил, и тд. В европе же, есть специальный человек, которому нужно заплатить и все будет сделано. Э-экономияgFanis
25.03.2019 10:57Есть такое понятие — крюинг. Ищите там. А так, на всякий случай, у знакомого сын проходил практику после 3-го курса на Лене электриком танкера с зарплатой 70-90.
И существенный плюс в этой системе — получить ллойдовский диплом в Лондоне стоит 300 фунтов, наш диплом признается.
Pyhesty
25.03.2019 09:5058°?31.2885'?0" с.ш. (N), 31°?16.5285'?0" в.г. (E)
радиотехников занимающихся действительно разработками больше чем Сколково,
приезжайте, хотя зп в общем ниже чем в мск, но радиотехники больше ценятся, тк их не хватает
avost
24.03.2019 12:03+2Чтобы не ломать судьбы детей, начните новый лагерь с обзора зарплат, электронщиков, микроэлектронщиков, программистов плис, мк и тд
Давайте-ка я вам судьбу сломаю и намекну обозреть зарплаты американских лойеров… Страдайте теперь всю оставшуюся никчёмную теперь доя вас жизнь. :)
truebest
24.03.2019 12:25-1У нас тоже, всякие Жорины, разводящие Петросянов хорошо зарабатывают.
Да и обычные адвокаты по семейным делам, отлично зарабатывают и в РФ, тут можете послушать истории Джанго
Юристы, все же, это другой слад ума, не требующий сильных знаний физики, математики и тд.
Я говорю о тех сферах, где применимы знания, программиста, электронщика или радиотехника.
truebest
24.03.2019 13:04Молча поставить минус, мда.
Я как человек с детства занимающийся электроникой, от схемотехники до программирования, с опытом более 12 лет, пишу вам как все из-нутри выглядит, получаю минусы, пишите хотябы с чем не согласны, приводите доказательства, сссылки и тд.Karlson_rwa
24.03.2019 18:38+1Software Engineer, Hardware Engineer.
А вообще, всё очень сильно зависит от страны. Ваше мнение ни к чему, кроме коллапса на рынке труда не приводит. Перекос в любую сторону дестабилизирует систему. Специалисты всякие нужны.
Тенденция да, есть, что на одного реально работающего электронщика нужно 2-3 программиста (по крайней мере в embedded-системах). Но это не говорит о том, что работа электронщика никому не нужна.
Следуя вашей логике, в нашей стране кроме мастера и помбура вообще больше никто не нужен.truebest
24.03.2019 20:04+1Конечно, очень сильно зависит от страны, о чем я и говорю.
Моя мама работает операционной мед.сестрой с зп ~22 т.р. в районной больнице. Стаж овер 30 лет. Недавно от-туда уволилась бригада скорой помощи целиком и пошла работать в индюшатник (индилайт), потому что зарплата на скорой 15 тысяч, а в индюшатнике 45 тысяч. Таже бригада скорой помощи в США или Европе, получала бы другие деньги.
К коллапсу на рынке труда приводит не мое мнение, а экономика посути, кто требуется, на того и спрос, там и оплата больше, сейчас спрос на backend/Frontend/mobile, потому больше вакансий, большие ЗП.
Специалисты то всякие нужны, это так, но кто-то нужен больше, а кто-то меньше, только время жизни одних стоит на рынке занятости больше, а других меньше. Россия это капиталистическая страна, а значит мы здесь меняем один ресурс на другой, и у всего есть цена. Мы не живем с вами в Швеции например где «социал-демократия», и вроде-бы все получают примерно поровну.
Электронщик может вытянут спокойно 2 проекта, или даже на две команды 1 электронщик. От старта проектирования схемы, до получения опытного образца, обычно проходит до 1 месяца у опытного электронщика, заточненного под embedded системы, и дальше его работа, в допиливании найденных косяков (если такие будут), а вот писать код, это реально гораздо дольше, особенно если проект большой.
Я разбираюсь и в проектирование схем и печатных плат, так и в коде. Последнее мое устройство, около 150 компонентов схемы, ARM + ADC + GSM + GPS + RS485 + CAN, сложная система питания, DC/DC и тд. Первую версию платы выкатил уже через 3 недели, в следующей поправил косяки и отдал на тесты заказчику, в третьей еще пару нюансов исправил и продал небольшим тиражом. На все провсе на плату ушло 1,5 месяца. Но код к этому устройству, с бутлоадером и прошивкой, сейчас более 80 тысяч строк, я его менее полгода писал каждый день по 12-15 часов, чтобы успеть в срок.NordicEnergy
24.03.2019 21:15Ахахаха, 3 недели на плату со 150 компонентами?)) Я вас спешу огорчить — эта задача выполняется за 2 рабочих дня по 8 часов. Как можно было это растянуть на 3 недели — загадка…
Электронщик может вытянут спокойно 2 проекта, или даже на две команды 1 электронщик.
Ну с уровнем ваших проектов вероятно один злой хардварщик вытянет целую компанию)) У нас почему-то некоторые железные проекты (сварочные инвертора) разрабатываются командой в 2-3 человека по несколько месяцев, правда компонентов чуть больше… тысяч 6-7.
Не стоит примерять свой «опыт» разработки электроники и уровень зарплат ко всему рынку труда. Да, в железе вакансий меньше, т.к. это производственная отрасль и компаний попросту меньше, т.к. тут недостаточно для организации компании арендовать пару кабинетов, купить компов и нанять пяток программистов.
Говорить, что в железе меньше зп тоже глупо, т.к. вы как минимум не знаете и 10% рынка, вы не видели сложных проектов, а деньги именно там, ну и наивно думать, что все софтописатели получают оклад в 180к и выше. Основная масса даже в Мск сидит на 80-120к, а про «замкадье» и говорить не стоит, в моем родном миллионнике зп у синьора всего 100к, эти же 100к я зарабатывал АСУшником и потом схемотехником.truebest
24.03.2019 21:38+2Ахахаха, 3 недели на плату со 150 компонентами?)) После такого крайне смешной выглядит фраза:
Я разбираюсь и в проектирование схем и печатных плат, так и в коде.
Я вас спешу огорчить — вы не разбирайтесь ни в электронике, ни тем более в конструирование ПП, иначе бы эта задача заняла 2 рабочих дня по 8 часов. Как можно было это растянуть на 3 недели — загадка…
Если мы говорим о задаче, предварительно проработанной то:
Несколько дней мы проектируем схему, несколько дней мы делаем дизайн PCB, далее производство печатных плат, закупка компонентов, сборка опытного образца. Это занимает в среднем 3-4 недели. Я об этом сроке говорил.
Проект инвертора это куда сложнее, там без опыта необойтись, подбора зачастую правильных компонентов, в том числе и выбора компонентов, одного наименования но разных производителей. Множество расчетов и тд. Тут точно работы больше.
Я показал пример из ХХ, он простой и наглядный, как EMC2. Это говорит о том что такие проекты недоступны либо обычному соискателю, либо в России. А процессы и производственные процессы у всех разные, и говорить что ты этого и того не знаешь это странно. Пока не погрузишься — не узнаешь.
вы как минимум не знаете и 10% рынка
Вы потратив 3-4 года на каждого работодателя, даже пусть по 2-3 проекта в год, вы все равно не узнаете всех проектов. Вы никогда не выпьете весь алкоголь и не попробуете всех женщин в мире. Это плохой аргумент.
Основная масса даже в Мск сидит на 80-120к, а про «замкадье» и говорить не стоит, в моем родном миллионнике зп у синьора всего 100к, эти же 100к я зарабатывал АСУшником и потом схемотехником.
Что и требовалось доказать. У меня есть приятель с вуза, я пошел в программирование под железки, он пошел в андройд, в 500к население городе, 150к поднимает.NordicEnergy
24.03.2019 21:52далее производство печатных плат, закупка компонентов, сборка опытного образца. Это занимает в среднем 3-4 недели. Я об этом сроке говорил.
Резонит и компел = 14 дней, если умеете таможить или можете притащить прототипы на физика, то 5 дней LCSC + JLCPCB + Fedex. 3-4 недели это если экзотику в ДКО Электронщик пытаться купить, ну или отдел за купок гнать в шею. Серьезно, я тоже раньше такие сроки считал нормой, пока не попробовал закупиться самостоятельно.
Вы никогда не выпьете весь алкоголь и не попробуете всех женщин в мире.
Вот поэтому я не люблю заявлений в стиле «все плохо», «везде мало» и в таком духе. Например, схемотехник/конструктор ПП способный в Arria 10GX и DDR4 получает в РФ 180-200к. Проблема, что компаний с такими задачами мало, например, Т8.
Что и требовалось доказать.
А что требовалось? Изначально речь шла, что зп в железе ниже, а вакансий меньше. На практике их не сильно меньше, а зп не ниже. Просто если мы сравниваем топовых java senior, то их надо сравнивать с аналогичными топовыми схемотехниками/железячниками. Действительно профессиональный специалист, хоть программист, хоть строитель, хоть агроном получают в среднем очень высокую зп в РФ на которую можно прекрасно жить. Я вот больше к этому вел :))truebest
24.03.2019 22:42+1А что требовалось? Изначально речь шла, что зп в железе ниже, а вакансий меньше.
На практике их сильно меньше, HH показывает это.
Т8.
Опыт Arria 10GX и DDR4 этого мало, потребуют еще знание DWDM систем, сети связи, коммутации, проводные, оптические, интерфейсы, а у программистов помимо знаний ПЛИС еще и теорию массовго обслуживания обслуживания и спецовые алгоритмы. Знать будешь ВООО, и считать себя умнее других, а получать будешь как сеньер у джавы.
И получается ты должен быть выпускником Бонча, кафедры СС где как раз эта DWDM от T8 стоит, ну и паралельно ходить на плис. Это слишко узко.
Из джавы легко уйдешь в другой проект, а там тебе весь мозг вынесут типа, тыже с альтерой работал, а у нас зайлинкс.
Фигня короче, будьте программистами высокоуровневыми и будет счастье, спокойная семейная сытая жизнь, с доступной работой, и без гемороя, со всяким DWDM.
Karlson_rwa
24.03.2019 22:23кто требуется, на того и спрос, там и оплата больше
Мне представляется, что ЗП программистов выше (у нас) в основном из-за того, что многие люди с такой профессией могут спокойно (по сравнению с железячником, например) работать удаленно на заказчика с оплатой за доллары. Из-за этого, компании, которые хотят привлекать к своей работе качественные кадры, вынуждены платить равноценную зарплату в рублях.
От старта проектирования схемы, до получения опытного образца, обычно проходит до 1 месяца у опытного электронщика, заточненного под embedded системы
Ха-ха, повеселили. Сферический проект в вакууме. Как, впрочем, и NordicEnergy со своими рассуждениями о двух рабочих днях.
Я разбираюсь и в проектирование схем и печатных плат, так и в коде.
Код, фото плат встудию!? :)NordicEnergy
24.03.2019 22:28(по сравнению с железячником, например) работать удаленно на заказчика с оплатой за доллары.
А что мешает то железячникам работать удаленно? Магазины с компонентами такие же, есть доступ к многим забугорным магазинам, так что проблема надумана.
2 года жил на фрилансе с Европой и было реально проще работать, чем с отечественными конторами, например, какой нибудь xilinx там могли купить за 2 дня и еще через 2 дня курьер мне его домой приносил. Из минусов тут только необходимость покупки минимального оборудования (осцил, лог. анализатор, мультик, ЛБП и подобное), но оно обычно у железячника хорошего уже и так дома есть. Если нет, то покупается с одного заказа, уж 150-200к потратить (можно и в 50к смело уложиться, если не брать Keysight и Fluke) и тут же отбить не самая велика трудность.Karlson_rwa
24.03.2019 22:37+1150-200 можно было потратить лет эдак пять-шесть назад. Сейчас минимальный ценник в два раза выше получается.
А мешает как раз физический гемор (паяльное место, хранение комплектующих и прочее). Программисту для работы нужен только компьютер. Железячнику — куча физически существующего барахла, которое не всегда есть где разместить.truebest
24.03.2019 23:05+1Покупал в течении последних нескольких лет из недорогого домой.
Анализатор DSA832E-TG - 150к
БП DP832 - 30к
Полевой осцил SDS1202 20к
Полевой БП Manson 10к
Норм осцил DSOX2012A 100к
Антенный анализатор 10к
Паяльник Ersa 25к
Фен 8к
Fluke мультиметер за 10к
Два стелажа с компонентами бесценно!
Генератора не хватает, последний встал на таможне, и уехал назад.
Надо бы два, DDS до 100мгц, за 30к от сиглента, и что-то типа Anritsu MG3700A за 150кPyhesty
25.03.2019 10:01хороший вкус ;)
одобрям-с)
ps: из осциллов не плох MSO2302A-S, жабу душили, но взяли
truebest
24.03.2019 22:47Сферический проект в вакууме
Согласен, все проекты разные. Там где я варюсь, IoT и автоматизация, у меня столько уходит. При 100% доступности на складе в компеле получается быстрее. Максимальный срок получения собранной или самостоятельно собранной железки 3-4 недели, без мыльной попы, в спокойном режиме.
Код, фото плат в студию!? :)
Скоро будет статья, обязательно увидите.
SergeyMax
24.03.2019 19:37Я как человек «с опытом более 30 лет» имею возразить. Вы просто на первое место ставите деньги. Такой подход тоже возможен. Но например лично я считаю, что лучше заниматься тем, чем нравится, нежели тем, чем не нравится. А деньги… ну всегда найдётся тот, у кого зарплата больше и автомобиль чернее. Да и фиг с ним. Счастье не в этом.
truebest
24.03.2019 20:10Лучше заниматься тем, что нравиться и получать за это хорошие деньги. Пример номер раз.
Я считаю что в деньгах счастье, и не я один, психологи тожеSergeyMax
24.03.2019 20:17+1Вы (и часть людей) считаете так, а я (и другая часть людей) — по-другому. Не вижу темы для дискуссии.
NordicEnergy
24.03.2019 21:20Капитализм изнасиловал разум многих людей, так что бесполезно рассуждать о «нравится заниматься». По обсуждениям на том же хабре заметно насколько сильно ценности одной группы людей непохожи на ценности другой. Мне тут на днях доказывали, что работать в Яндексе по 6 дней в неделю 10-12 часов это не рабство, а «болезнь за компанию» :))
olartamonov
25.03.2019 09:03работать в Яндексе по 6 дней в неделю 10-12 часов это не рабство, а «болезнь за компанию»
Ну, что-то нездоровое в этом действительно есть, трудно спорить…
CorneliusAgrippa
24.03.2019 13:37+9начните новый лагерь с обзора зарплат, электронщиков, микроэлектронщиков, программистов плис, мк и тд. И сравните их с Go, Java, Python, Anrdoid, IOS, С/С++
Я изучал микроэлеткронику, «переходы, дырки, электроны и кулоны» на физико-техническом факультете, из Go и Python знаю только названия, 15 лет отработал в Европе в полупроводниковом производстве, сейчас директор небольшой МЭМС фабрики в России. Зарплата устраивает (больше, чем я получал в Европе). Что я сделал не так?
Считаю, что автор поста все делает правильно. Если интересно, могу для школьников организовать экскурсию по МЭМС производству. Лекции по технологии производства тоже можем прочитать.truebest
24.03.2019 14:04+3Ого, здорово, вы большой молодец!
Но вы сами сказали что поехали реализовываться в европу. А быть Embedded или Design инженером, на территории США, Европы это другой разговор и другие цифры, я же приводил HH в России.
А после того как опыт и контакты были собраны, организовали это в России. Сколько у вас специалист в 3-5 летнем стажем зарабатывает, который непосредственно дизайном ИС занимается? Сильная ли разция с европейскими зарплатами? Есть ли разница по спросу и предложению в России и Европе? По масштабу проектов?CorneliusAgrippa
24.03.2019 15:09+3У нас не ИС, у нас МЭМС (чувствительные элементы различных датчиков: акселерометры, гироскопы, датчики давления и т.д.). Дизайна нет, только производство (модель фаундри). Специалист с 5 летним стажем зарабатывает более 100 т.р. Это меньше, чем в Европе, согласен. Зарплаты руководителей подразделений уже сравнимы с европейскими. Мы — небольшая фабрика, поэтому проекты у нас небольшие. Но в Европе небольшие проекты тоже реализуют. Некоторые наши клиенты раньше заказывали производство МЭМС в Европе, теперь заказывают у нас.
Смысл моего предыдущего комментария в том, что не надо молодежи говорить: «Вот это деньги приносит, а это нет. Программирование высокооплачиваемая профессия, а схемотехник (или технолог) — нет.» Нужно показывать все варианты, кому-то одно интересно, кому-то другое. Кто-то найдет работу в России, кто-то за границей. Кроме того, сегодня сложно предсказать, какие специалисты будут востребованы через 20 лет, когда нынешние школьники достигнут карьерной зрелости. В 90-х, когда я учился в ВУЗе, самой популярной и высокооплачиваемой профессией были бухгалтеры и экономисты, на студентов технических вузов смотрели с сожалением. Мой друг пошел на радиотехнический факультет и специализировался на антеннах. Казалось бы — вообще тупик, кому сейчас нужны антенны (конец 80-х начало 90-х)? А потом вдруг появилась мобильная связь и спецы по антеннам стали на вес золота — как правильно рассчитать покрытие сигнала и расположение базовых станций таким образом, чтобы минимизировать их количество?truebest
24.03.2019 21:11МЭМС в России это просто космос! Здорово, успехов вам и вашей фабрике. И поддержки от государства))
Я с вами полностью согласен, что наша задача показать максимально большое количество вариантов применения себя (раскачать маятник восприятия). Вот я от автора и хотел чтобы он в том числе показывал и разность зарплат, и чем богатый от бедного инженера отличается.
pgkirich Автор
24.03.2019 22:05Я бы и сам сходил на такую экскурсию. И детей сводил бы. Однажды в поисках работы я получил предложение на позицию по этой тематике, но остался в микроэлектронике пока что. А тематика интересная.
NordicEnergy
24.03.2019 19:12Да вы что? Вас не смущает, что вы выбрали изи кортексы, которые может освоить любой школьник за месяц? Откуда быть большой зарплате у эмбедера, основной скил которого именно stm?
В РФ есть 2 пути:
— идти в эмбедед линукс и DSP, тогда спокойно заработок на уровне явистов;
— удаленка со Европой и Штатами, а там электронщики зарабатывают как минимум столько же, а люди, пилящией проекты под космос и энергетику сильно выше, чем те же явисты.
Основная причина низких зп у большинства электронщиков:
— в СНГ нет настолько сложных задач за которые можно платить много, большинство это обоссаный IoT на модулях и тому подобное, но не единым СНГ живем однако;
— в СНГ у электронщиков низкая квалификация, 95% фирмварщиков не могут собрать проект и прошить камень без IDE. Я на собеседованиях просьбой помигать светодиодом с помощью gcc и блокнота отсеял сотню людей точно :))truebest
24.03.2019 20:50+1Нордик, я вас уважаю за ваши статьи, вы крутой, продолжайте их писать, да и успехов вам во всем!
Прежде чем освоить stm32, пришлось пописать и под атмеги, под пикушки, at91 и nxp, ad blackfin, и только потом stm32. Потому, что именно этого требовал рынок, покрайнее мерее от меня. Это UM LPC1768 Там 851 страница, это только проц UM, а вы используете еще периферию, а там своя немалая документация. Помимо этого, нужны базовые знания: программирование, алгоритмы и структуры данных, логические элементы, принципы работы периферии и тд. Документация на SIM800C для IoT ох какая немаленькая. Школьник за месяц не выучит точно, а вот помереть от скуки в поцессе обучения это вполне реально.
Что нужно для программирования на Go? 2 книги: — Язык программирования Go (Алан А. А Донован...), Алгоритмы (Род стивенс), каждая по 500 страниц, и вуаля, ты программист Go, пару лет назад туда без опыта брали людей.
Кросс-компилить я могу, а вот пошить без IDE или софта программатора, Segger или st-link, через OpenOCD или GDB нет. Не понимаю, зачем изобретать велосипед, если есть простой, правильный и рабочий метод. Все современное программирование под android например, это давно достижение целей методами, предусмотренными google программистами. Для gcc можно использовать как make, cmake так и msbuild. Я сейчас последним посльзуюсь, он многопоточную компиляцию тянет, купил рязань 2700x проц, и на нем все бысnро компилю. А прошить контроллер можно и без GDB, через встроенный загрузчик например. Ваше требование к кандидатам странное, это как знание ассемблера в 2к19, вроде знять круто под конкретный проц, но практической ценности 0, так как все пишут на с/с++. Вообще у меня есть идея написать плагин для intellij idea для работы с arm, тогда разберусь как ocd и gdb работают. Люди просто так многие не изучают это, тк это на практике ненужно. Для чего вам нужно просить помигать светодиодом с помощью gcc и блокнота? Какая в этом практическая ценность?
В СПБ будет семинар по i.MXRT1050, будете присутствовать?NordicEnergy
24.03.2019 21:32От части вы конечно правы, но много компаний и проектов, даже большинство, где разработчики документацию не читают, они лезут на форумы и тащат чужой код. У нас уровень электроники в стране крайне низкий, отсюда и средняя зп не очень высокая, т.к. платить за просто так никто не будет. До такого уровня надо реально месяц. Проверено. Я одного паренька натаскивал и он после школы сразу пошел работать джуном в местную IoT-контору и этих знаний ему хватило, чтобы вполне себе писать софт.
Я немного неверно выразился сказав кортекс, правильнее сказать stm32, как самые популярные. Потому, что если человеку даешь те же LPC или XMC, то он начинает грустить и приходить в ужас.
Две книги по Go круто, но на выходе будет такой же «школьник и месяц МК» :)) Все таки программирование как и железо это опыт, это сложившийся склад мышления, это умение искать решения. Изучение инструментов это важно, но не главное.
Знание ассемблера это хорошо, хотя бы в базовом уровне, чтобы уметь где надо написать вставку быструю, а в случае проблем понять во что компилятор перегоняет ваш код. Так что вы зря на него :)) Касательно «gcc+блокнот»… У меня есть канал в телеге, где одни разрабы и сочувствующие, 400+ человек и блин, столько нытья постоянно типа «ребята, срочно! Сломалась TrueStudio/keil! Выдает ошибку, проект вчера собирался, а сегодня перестал, что делать?». То есть у многих нет понимания что они делают, когда создают проект, для чего они прописывают пути к файлам и линковщику, все это на автомате или даже создается IDE. Вот чтобы такого не было у меня в отделе я просил собрать проект без всего.
На семинарах увы не побываю, т.к. перебрался в Финку с концами, поэтому посещаю местные мероприятия в универе. RT1050, кстати, недавно приобрел для небольшого заказа, для моей силовухи штука бесполезная оказалась, но супер решение для HMI и автоматизации. В ближайшее время может быть переделаю свою панель с F746 на RT1050/truebest
24.03.2019 22:22+1У нас уровень электроники в стране крайне низкий, отсюда и средняя зп не очень высокая, т.к. платить за просто так никто не будет.
Я так несчитаю. У нас кто этим действительно плотно занимался, работают и успешно в своих направлениях. Обычно такие ребята крайне вредные и на остальных как на идиотов смотрят, но они молодцы в своих направлениях. Я считаю что у нас одни из самых лучших программистов и электронщиков. Последних крайне мало, тк нет инвестиций, нет интересных проектов, сложность, необходимость оборудования, в компаниях его-то нет, а дома не каждый готов выделить в квартире комнату под оборудование. Я с вами согласен, что в россии нет крутых проектов, нет проектов — нет денег, потому вы и считаете что все кто тут этим занимается — балбесы, ничего не знающие. Кто не балбес, работает либо с европейским рынком. Что и требовалось доказать, в России сейчас электронщики ненужны.
это сложившийся склад мышления, Изучение инструментов это важно, но не главное.
Тогда бы тех-же самых программистов с/с++ брали в embedded, но нет просят и linux kernel знать и bare-metal и тд. А значит просят конкретный опыт. Да вы и сами на него обращаете внимание. А склад ума и мышление, о котором вы говорите ставят в наших вузах это точно.
Я же говорил про Go, где несколько лет назад брали с опытом программирования но без опыта Go. Один мой приятель, закончивший вуз с красным дипломом, поработав embedded разработчиком пару лет, после рождения 2х детей понял что денег не хватает, ушел в Go в Wildberries, чему безмерно рад. А я был не рад, потому что показал ему embedded и завлек в него, на который он впустую потратил лет 5 своей жизни.
Сломалась TrueStudio/keil!
ну бывает сломалась. Поноет, поноет, да и разберется что не так. Почитает про препроцессор, компилятор и линковщик. Просто у вас галочка определенная, человек может быть талантлив но не знать именно этого, подсистему Makefile например, и не сможет собрать проект в котором больше одной main функции. И не устроится на работу, тк просто не потратил пару вечером на то чтобы разобраться как, там все собирается. Вобщем это не првильно отбирать человека по знаниям, которые можно получить по одному клику из википедии или за вечер. Важно мышление и опыт.
truebest
24.03.2019 21:01ad blackfin хотел добавить. Когда писал под него, у нас в комманде был алгоритмист и математик. Задача программиста DSP в большой команде, превратить алгоритм в код под конкретный проц, запустить и проверить на плате. Easy easy…
В тоже самое превращалась работа плисовиков, реализовывать механизм из алгоритма и математики. Эти ребята, вообще постоянно в тенис играли и кофе пили, у них проект компилился 3-4 часа, даже на самых мощных ПК. Пару раз за рабочий день, в лучше случае они его собирали.
Karlson_rwa
24.03.2019 22:39а там электронщики зарабатывают как минимум столько же, а люди, пилящией проекты под космос и энергетику сильно выше, чем те же явисты
Какие ваши доказательства? Особенно про космос.
FForth
24.03.2019 10:39Чем понимание логических элементов микросхем реализованных на КМОП лучше для понимания «замшелых» микросхем ТТЛ? (В популярном справочнике под авторством Шило и те и другие представлены).
P.S. Кто то Flprog даже на логике делает «программы» для МК AVR (Ардуино). :)pgkirich Автор
24.03.2019 11:23Логика на КМОП предельно легко собирается и объясняется на дискретных транзисторах, в отличие от других типов. Поскольку я считаю это краеугольным камнем курса — все схемы должны быть доступны к построению на макетке и пониманию детьми, то у КМОП просто нет альтернативы.
Если кто-то после этого захочет двигаться дальше, то все пути открыты.FForth
24.03.2019 11:29А какие сложности собирания логики на TTL? (теже ZX-Spectrum собирались легко и непринуждённо на ТТЛ микросхемах серии 1533/1534) :)
pgkirich Автор
24.03.2019 11:36Сам вентиль на биполярных транзисторах собрать гораздо больше возни. Работа на уровне вентилей разницы не имеет, а вот уровнем ниже — на транзисторах — еще какую!
FForth
24.03.2019 13:41Какие книги из «советского» периода по цифровой схемотехнике можно рекомендовать для прочтения школьникам? (и какая библиография в Вашей книге)
P.S. Вспоминается, например, Р.Тонхейм «Основы цифровой электроники».pgkirich Автор
24.03.2019 14:14У меня именно Токхейм из старичков в списке литературы. Очень хорош для своего времени. Но он тоже не лезет внутрь вентилей, что мне не нравится. Именно вот книжки с разбором кишок вентилей в железе я не нашел нигде. Счёл это неправильным. Ну и исправил этот недостаток.
K1804
24.03.2019 18:59Есть прекрасная более общая книга для широкого круга читателей — «Посвящение в радиоэлектронику» Полякова.
LAutour
24.03.2019 18:03И легче убивается статикой.
pgkirich Автор
24.03.2019 19:01Ну это надо сильно постараться. Я вот свои схемы делал-переделывал много раз, пока вытанцовывалось то, что мне нужно. И ни одного транзистора, ни одной микрухи так и не убил. Сейчас в компоненты схемы защиты от статики пихают повсеместно. Если задаться целью, то убить можно, безусловно. Но случайно коснувшись пальцем это не так-то просто.
vortupin
24.03.2019 11:11Прекрасная инициатива, отличная работа проделана! Хорошее и правильное дело делаете, всецело одобряю!
А Вашу книгу можно в электронном варианте купить или получить?pgkirich Автор
24.03.2019 11:15Я не могу ответить на ваш вопрос, потому что передал права на публикацию материала издательству. Это им теперь решать, будет она в электронном виде или нет. Я могу продолжать ездить с гастролями, пользуясь всеми своими наработками, но не могу выкладывать рукопись или оригинал-макет в сеть. Все что я могу — это предложить желающим написать им самостоятельно о потребности в электронном издании. Но гарантировать положительный ответ, как вы понимаете, я не могу.
vortupin
25.03.2019 01:32Жалко, если честно: shipping с «оЗона» обойдется в несколько раз дороже самой книги (цену Вы поставили поистине «христианскую», и это правильно!), вдобавок, ничего из России уже лет как пятнадцать-двадцать не покупал, не уверен, работает ли еще :( Думал, старшую дочку «завлечь», хотя она не очень «ведется», к сожалению (ну, девочка, что тут поделать?!).
P.S. И жалко, что иллюстрации в книге не цветные — этого я, если честно, совершенно не понимаю. Неужели, по нынешним времена, есть какая-то ценовая разница между «полноцветом» и «черно-белой» печатью? Мне казалось, что сейчас это совершенно eliminated (я немного знаком с технологиями печати XX и XXI веков).pgkirich Автор
25.03.2019 08:08По поводу иллюстраций. Вверху есть мой комментарий со ссылкой на бесплатный цветной ПДФ с иллюстрациями. Почему издательство выпустило книгу без цветных вклеек, я не в курсе. Мне как никому не известному новичку в этом деле не с руки было выпендриваться: книга вышла, и прекрасно. Дальше жизнь покажет.
tirus
24.03.2019 13:39Спасибо за книгу, с большим удовольствием её прочёл. Смело рекомендую её школьникам и кружководам. Издательство, как всегда, сэкономило на цветной печати, это единственный минус бумажной книги. Пишите ещё!
pgkirich Автор
24.03.2019 14:21+1Спасибо вам и другим комментаторам за добрые слова. Минус книги является ее диалектическим плюсом при этом — она получилась дешёвой, то есть доступной даже небогатым семьям. Это тоже одна из задач была, которую перед собой сам ставил. С этой же целью прорабатывал все схемы с точки зрения минимизации зоопарка деталей.
tirus
25.03.2019 08:58Я оценил минимизацию используемого набора компонентов, равно как и выбор 4000-серии микросхем. Спасибо, это действительно важно при работе с группами школьников в кружке или на мастер-классах. Я редактировал русскоязычное издание детской книги «Электроника для детей» — вот там действительно зоопарк из 7400 и 4000 серий микросхем. Даже с автором книги переписывался, пытаясь понять его логику выбора компонентов… И буду ждать вашей следующей книги в продолжение начатой темы — надеюсь, она не заставит себя долго ждать :)
pgkirich Автор
25.03.2019 09:22А какие темы из книги требуют продолжения по вашему мнению?
tirus
25.03.2019 09:35Тема ПЛИС для школьников (особенно с дешевыми CPLD) всё еще не раскрыта в литературе, на мой взгляд. Именно так, популярно — практически на пальцах, как у вас в книге. Если у вас будет возможность побывать на мастер-классах Юрия Панчула в Москве, в апреле, можно было бы там обсудить очно.
Pafnutyi
25.03.2019 17:14Хорошо бы такую же книжку про «нутро» операционников и различные датчики которые к ним подключают термо/тензо/мемс и тд Видел кучу забавных опусов при реверсизучении устройств/схем, и ведь удивительно даже работают/продаются, однако видно что разработчик неособо понимал что он там «напроектировал»
PS. Только в качестве пожелания,пользы от этого конечно будет не много в нашей стране, но вдруг
tehnolog
Вот вы пишите, что книг по этой теме практически нет. Сами вы написали курс, но его мы тоже не видим. А потом удивляемся на этот счёт. А ведь это интересно не только школьникам, но и взрослым, которые хотят побольше узнать об электронике. Например, я какое-то время назад заинтересовался Arduino. В интернете достаточно информации и можно самостоятельно разобраться, да и литературы хватает. Но иногда хочется узнать что-то побольше о схемах без участия платы, а как у вас на фотографиях. Вот здесь уже начинаются проблемы — доступных материалов мало. Может будете делиться информацией на Хабре или где-то на своей площадке?
pgkirich Автор
Пожалуйста: http://www.bhv.ru/books/book.php?id=201192
Никаких секретов, весь упомянутый курс вышел в виде книги. Доступен всем желающим.
Timka21213
спасибо за книжку, уже используем!
pgkirich Автор
У меня тогда будет к вам и к другим пользователям книжки просьба. Если заметите какие-либо неточности, неясности, занудности в материале, сообщите мне, пожалуйста. Нет предела совершенству, возможно, можно будет какие-то темы развить и дополнить. Не обязательно в новом издании (издательство может и не захотеть), а прям тут на Хабре можно будет выложить доработки. Например, один пытливый школьник уже нашел досадную опечатку в числовом ответе на контрольный вопрос. И это несмотря на то, что текст вычитывался раз тридцать, наверно!
Timka21213
Обязательно! Я бы предложил выложить цветные фотографии примеров из книжки — в черно-белом варианте картинки плохо читаются и отдельными файлами списки необходимых компонент: пришлось набивать их в Excel для заказа. Идеально — наборы с деталями для сборки (и тут есть много нюансов из практики). Есть возможность запустить в серию подобный конструктор? Нам здорово помогает Василий Зуйков (sotvorimvmeste.ru), но не у всех педагогов есть такая возможность. Не хотите зайти в гости к нам в АЦТ (http://adtspb.ru)?
pgkirich Автор
Насчет цветных фотографий: в книжке и на сайте издательства есть ссылка с бесплатным цветным ПДФом. Вот она: ftp.bhv.ru/9785977540100.zip
Список деталей с артикулами из ЧИП и ДИП — вот он: yadi.sk/i/L9DZRGzA1C0TFg
Наборы с деталями — лично я не заинтересован. Много возни, а выхлоп маленький.
Будет сильно мешать основной работе, а я ее люблю и не хочу лишиться.
За приглашение спасибо!
Timka21213
А как издательство отнесется к выпуску такого конструктора другой компанией?
pgkirich Автор
А вы у них напрямую и спросите, лично я отнесусь только положительно, но права-то у них.
DmitrySpb79
Я как-то работал с ними давным-давно, в итоге пришел к выводу что проще книгу самому написать и самому на бесплатный файлообменник выложить, возни меньше, а чтобы что-то реальное заработать, тиражи и объемы должны быть как у Донцовой.
pgkirich Автор
Мне с ними работать понравилось. Все быстро, четко, по делу. И замысел не предлагали корежить вообще, что для меня было критично.
YuriPanchul
Вот для сравнения набор деталек, который покупаю я, чтобы разогреть детей с помощью CMOS 4000 перед упражнениями с ПЛИС.
Timka21213
Мы в школе используем расширенный набор микросхем от Киберфизики cyberphysics.ru/product/osnovy-elektroniki-nachalo про кототый на Хабре уже писали. Но он, к сожалению, сейчас недоступен для заказа. Поэтому работаем и с аналогами, см. сайт sotvorimvmeste.ru/viewforum.php?f=9
pgkirich Автор
Отличный, без шуток, набор для группы, которую снабжает сам организатор. У меня же фокус смещен на одиночек, занимающихся дома самостоятельно. Поэтому надо было оставить минимум миниморум компонентов, чтобы потянул даже скудный бюджет обычной российской семьи из глубинки. Из-за этого у меня нет ни мультиметров, ни большого набора рассыпухи. И изложение поэтому тоже максимально подробное, без расчета на то, что будет кому дообъяснить непонятое.
Если рядом будет преподаватель, разбирающийся в теме проектирования на вентилях и микросхемах средней степени интеграции, то он может и сам двинуть учеников дальше, чем в книжке материал дается. А вот на транзисторном уровне дать верное базовое понимание в состоянии далеко не каждый кружковод. Мне-то проще, я всю жизнь в заказном проектировании IP-блоков варюсь, транзисторы — мое родное :) Вот и поделился с общественностью знаниями таким образом.
Timka21213
Здорово, когда знание идет вот так — из первых рук! А чем не нравится схемотехника вентилей на диодах? proiskra.ru/library/shemotehnika Дети в состоянии сами придумывать подобные схемы.
pgkirich Автор
Во-первых, я не могу охватить все вообще, электроника слишком обширная наука. А во-вторых, КМОП — это мейнстрим в цифре. От МОП-транзисторов к вентилям и далее со всеми остановками можно перейти к тому, что реально находится внутри мозгов смартфонов и десктопов.
Timka21213
Я спросил в порядке обмена опытом, мы ещё делаем стандартные вентили на кнопочках и тоже через задание придумать схему, поведение которой соответствует таблице истинности.
pgkirich Автор
Так любой подход хорош, который дает желаемый результат. Если вас самих и ваших подопечных все устраивает — это отлично.
Timka21213
Про транзисторы тоже думаем, пока закупаемся по спецификации к вашей книге. Мультивибратор дети знают, но сборка требует поэтапного прохождения с промежуточнными проверками работоспособности по частям. Иначе очень им трудно отловить все возможные ошибки с полярностями, перепутанными выводами, етс.: не хватает настойчивости и внимания охватить все связи в схеме сразу.
tehnolog
Спасибо. Обязательно посмотрю. Успехов в ваших начинаниях.
amartology
Практически все, что нужно для начинающих, есть на русском в прекрасном учебнике, известном как «Харрис и Харрис» аккуратно, по ссылке начнется скачивание pdf на 37 Мегабайт.
x8core
Ну, сомнительно. Считаю вот эта книга получше раскрывает тему для новичков. 1553.ru/lessons/uploaded/CODE_-_Charlz_Pettsold.pdf
YuriPanchul
А вы не могли бы написать развернутое, по пунктам, объяснение, почему вы считаете «Харрис и Харрис» «сомнительным», а Петзольда — нет?
Вот что я написал пару лет назад в некоей переписке с обсуждением преподавания по Петзольду:
FForth
Скажите, а почему в цифроввых книжных курсах почти не встречается разбор стековых процессоров MISC архитектуры и в качестве их программрования одного из языков Форт (Forth) могущего представлять и ассемблерный уровень?
Стековые процессоры и занимают мало ресурсов FPGA и достаточно эффективны для задач реального времени.
P.S. Тот же процессор RTX2010, вроде, достаточно широко использован в разработках NASA. У Atmel был и стековый контроллер MARC4, но его развитие не состоялось.
vortupin
Imho, давать детям Fort для обучения программированию — это уже повод для возбуждения судебного преследования омбудсменом по правам детей :) Нет, не то, что «польскую запись» нельзя донести для детей, нет; но для этого нужен талант, и не менее, чем у Михаила Пухова (светлая ему память!), известного советского писателя-фантаста, а по совместительству, еще и редактора раздела фантастики и программируемых микрокалькуляторов в журнале «Технике-Молодежи» (был в советское время такой «блокбастер»).
P.S. Plain С + Arduino IDE (ну, или его аналоги) — практически идеальный вариант для обучения, как мне кажется. Еще есть пресловутый BasicSTAMP, но он проиграл «ардуине».
YuriPanchul
*** P.S. Plain С + Arduino IDE (ну, или его аналоги) — практически идеальный вариант для обучения, как мне кажется. ***
Только при этом нужно иметь в виду, что ардуино IDE — это не обучение электронике. Это своеобразная форма обучения программированию встроенных систем, причем даже для этой цели ардуино IDE не годится для будущих профессионалов из-за чрезмерной изоляции от memory-mapped I/O registers и прерываний, а также (до недавних времен и сейчас частично) отсутствия RTOS-а, совместимого с ардуино IDE. Чтобы проиллюстрировать гуманитарию, что внутри робота или кофеварки небольшой компьютер — ардуино IDE пойдойдет.
vortupin
Я и не имел ввиду обучение электронике; про обучение именно электронике Павел великолепно написал в своей статье, под которой мы комментируем. Я отвечал на вопрос "почему не использовать для обучения язык Forth" (кстати, если мы говорим о детях, то нельзя язык отрывать от удобного и понятного IDE — самый распрекрасный язык, если в качестве редактора и оболочки к нему предложат vim, например, вряд ли будет принят детьми).
И, кстати, вы как-то уж больно пренебрежительно про неприемлимость Arduino IDE для профессионалов отозвались (будущих или настоящих) — весьма многие проекты вовсе не требуют real time, и бинарный код, собранный что под Arduino IDE, что под любым другим (лично я предпочитаю Visual Studio + VisualMicro) будет работать также эффективно, как и собранный под «каструбатым» IDE от Nordic Semiconductors.
P.S. И, кстати, иногда «настоящие профессионалы», игнорирующие свысока «любительский» Arduino (с огромной базой open source кода на «все случаи жизни»), дают estimate на простенький проект, в котором (к сожалению для них), требуется поддержка BLE, WiFi direct, TCP/IP + HTTP stack, порядка года, а проект делается (до стадии бета) за пару недель, садятся откровенно в лужу. Случай взят из real life; проект, реализованный на ESP32, уже два года пашет, без сбоев и ошибок, в самом, что ни на есть, production.
YuriPanchul
Я просто не вижу чем изучение Ардуино принципиально проще использования профессионального IDE. Да, в профессиональном IDE больше опций в settings, и нужно заглядывать в datasheet, то есть он действительно несколько отпугивающий для совсем начинающего. Но с хорошим профессиональным курсом, разница в начальном освоении мигания светодиодом и интерфейса к сенсорам ну может пара уроков, а потом становится все равно.
Если человек собирается когда-нибудь получать за программирование микроконтроллеров зарплату, ему неизбежно прийдется изучать профессиональный IDE. Например чтобы правильно использовать прерывания при приеме и передаче данных из нескольких устройств. И для проектов, где нужна RTOS. Я не вижу, зачем сначала учить Ардуино, а потом переучиваться на профессиональное IDE, вместо того, чтобы выучить профессиональное IDE сразу.
Вообще я занимаюсь разработкой микросхем на верилоге, но в 2012-2013 написал пару введений в использование IDE, вы можете оценить, что порог входа не выше, чем в Ардуино — panchul.com/2013/02/27/microchip_pic32_1
Например, что сложного при работе с memory-mapped регистрами без объектов-аксессоров, напрямую?
char spi_put_get_char (char c)
{
SPI2BUF = c; // send data to slave
while (SPI2STATbits.SPIBUSY); // wait until SPI transmission complete
return SPI2BUF;
}
vortupin
Я не согласен с большей частью ваших тезисов, да, и, в конце-концов, что означает «профессиональный IDE», с вашей точки зрения? Например, для меня Visual Studio — вполне профессиональный IDE, «кроющий», по некоторым параметрам, «как бык овцу» Embedded Studio IDE от NS? да и еще кучу всевозможных IDEшек. Вообще, этих «профессиональных» IDE — как собак нерезанных, практически у каждого производителя свой «велосипед» (а иногда и с квадратными колесами). Изучать их все досконально — вряд-ли кто осилит.
И, уж поверьте моему опыту, я за программирование микроконтроллеров получил изрядно денег, притом один из проектов делался для пресловутого BasicSTAMP-а (это Parallax-овский, PIC-based SoC, типа «пре-ардуины» — по крайней мере, его тогда так пытались позиционировать), на их PBASIC-е (который, по сути, просто макроассемблер — BASIC-овский код практически один в один транслировался в машкод). И что — весьма сложные дивайсы со всевозможной «машинерией» (там и управление серьезными step motors, и куча сенсоров, и прецизионный нагреватель и куча всего) уже годами работают в обсерваториях Аресибо, в Мексике и еще во множестве мест, как пчёлки, без сбоев.
Я скажу так: однозначно утверждать, что «экскаватор лучше лопаты» не стоит. Да, при необходимости вырыть котлован, экскаватор эффективнее, но вот огород он вскопать не сможет (а лопатами, кстати, котлован таки можно выкопать, без эксаватора).
Заявлять «раз используешь Arduino (BasicSTAMP, ESP32 etc.), а не голый SoC на уникальной PCB, с обвязкой в кастомной PLC, значит ты не профессионал» неверно. Если задача надежно решена за выделенный бюджет и назначенные сроки, значит и исполнитель профессионал.
Что же касательно приведенного пример, то, как припоминаю, в Arduino есть весьма удобные для подобных целей PORTD, PORTB и PORTC.
truebest
Visual Studio + Visual GDB + Resharper рвет любую IDE для микроконтроллеров.
YuriPanchul
Я на самом деле имел больше в виду не ардуинное IDE как таковое, а его подмножество языка с объектами классов для обращения к memory-mapped регистрам и примитивно сделанные прерывания. См. мой коммент ниже.
YuriPanchul
*** Я не согласен с большей частью ваших тезисов, да, и, в конце-концов, что означает «профессиональный IDE», с вашей точки зрения? ***
Я неправильно выразился. Я имел в виду не IDE, а библиотеку и настройки. Мне не нравится Ардуино по трем причинам:
1. Он «заворачивает» обращения к регистрам в вызовы методов объекта. Из-за этого заворачивания пользователю доступна только часть функциональности memory mapped registers, которая есть в datasheet. То же самое в еще большей степени относится к обработчикам прерываний.
Помимо ограничения доступа к функциональности, это уменьшение эффективности и скорости реакции системы. Одна инструкция ассемблера (uncached memory write) превращается в вызов функции, который компилятор не всегда inline.
Я не вижу, как «заворачивание» существенно облегчает программирование.
2. Напишите на ардуино код двух параллельно работающих задач, которые без глюков выводят свои данные в две разные области экрана. Если использовать скажем FreeRTOS, задача пишется запросто, с использованием задач и семафоров.
3. У меня есть претензии к лидершипу Ардуино коммьюнити. Я знаком с ардуинским офисом в Калифорнии и с тем, как они ведут себя в рамках образовательных программ, взаимодействуя с университетами, школами и городскими властями. Они постоянно стараются, чтобы любые конкурирующие с ними хоть в каком-то виде инициативы задвигались, не упоминались и всюду было сплошное ардуино.
Пока это касалось только микроконтроллеров, это еще вписывается в какие-то рамки. Но когда они решили сделать официальное ардуино-совместимое FPGA — это просто смешно — мало того, что он дорогой для заявленной функциональности, так он еще и используется в качестве сопроцессора к ардуино. Ну это как купить мотоцикл и ездить на нем только прицепляя его к телеге с лошадью.
hackaday.com/2018/07/30/hands-on-with-new-arduino-fpga-board-mkr-vidor-4000
olartamonov
Юра, главная проблема с ардуиной в образовании даже не в перечисленном тобой — в принципе, любая RTOS или даже просто промежуточная библиотека типа libopencm3 занимается в основном тем, что «заворачивает обращения к регистрам».
Главная проблема — в том, что ардуина всю эту механику стремится максимально спрятать от пользователя, по возможности так, чтобы он её не нашёл, даже если очень захочет.
Из этого моментально вырастают две вещи, регулярно наблюдаемые в ардуино-проектах:
1) полное отсутствие понимания, как делать правильно, которое позволило бы осмысленно выбирать между, например, loop(), тредами, прерываниями и прочими средствами обеспечения условной многозадачности, а тем более — сочетать их для получения нужной функциональности.
2) магическое мышление, для которого многое происходит «само» — программа сама компилируется под нужный контроллер, библиотеки сами опрашивают датчики, и так далее. При возникновении любых проблем с этой магией не только сам разработчик, но всё доступное ему комьюнити тупо не понимает, что теперь делать.
Всё это кое-как работает на проектах из дерьма и палок, но как только эти люди начинают пытаться свои поделия продавать — а они начинают — быстро становится страшно.
olartamonov
А теперь давайте сравним с числом проектов на ардуине, в том числе продаваемых за деньги, но при этом сляпанных на коленке из готовых библиотек, вызовы которых просто засунуты в любимый Arduino-профессионалами loop() в том порядке, в котором им виделось выполнение программы — с плохо предсказуемыми таймингами выполнения, с абсолютно никаким риалтаймом, с абсолютно никакой надёжностью, и главное, с абсолютно минимальным пониманием, что там вообще под капотом происходит. Сданных по принципу «у меня всё работает».
Arduino в её текущем виде предельно плоха для обучения не потому, что на ней из дерьма и палок нельзя быстренько слабать проектик, а потому, что Arduino не даёт понимания правильных концепций работы с микроконтроллером и правильных навыков написания встраиваемого ПО.
На этом обсуждение роли ардуины в образовании можно завершить.
Что же касается профессионалов, то для любого человека, имеющего какой-то вменяемый опыт программирования микроконтроллеров, Arduino просто не несёт никакой ценности, а несёт одни проблемы. И с тем же ESP32 вы в следующий раз запросто вляпаетесь в проблему, критичную для проекта, на которую всё т.н. опенсорс-сообщество на форумах поддержки будет только молча шлёпать ртом и советовать «попробовать другую плату с другой либой».
vortupin
Извините, но это абсолютно бездоказательно, и основано лишь на голословных допущениях. «Вляпаетесь», «молча шлёпать ртом», «у меня все работает», а также безапелляционность утверждений, не говорят о вашей правоте, отнюдь…
можно лишь имея какую-то статистику, иначе это просто голословное утверждение.Вы опять утверждаете, что «экскаватор однозначно лучше лопаты» (см. выше), а это вовсе не так. Упомянутые вам «правильные концепции и навыки» это вовсе не «закон природы», а лишь привычные или нравящиеся вам технологии. Далеко не для каждой задачи нужна полноценная RTOS; иную задачу можно решить задачу простым bare metal кодом (со скопипащеной инициализацией), или «ардуиной» (или любым бэйсик-стэмпом).
Arduino значительно понизил уровень «вхождения» в бизнес, сделал мир программируемых микроконтроллеров дешевым и доступным практически любому, позволил решать конкретные прикладные задачи без отвлечения на всевозможные datasheets от производителей чипов, резко снизил уровень труда и увеличил скорость создания проектов.
В конце-концов утверждать, что
olartamonov
Вы будете далеко не первым, кого я в ответ попрошу показать эти замечательные Arduino-проекты, написанные красиво и аккуратно.
И тоже, полагаю, не покажете.
Нет. Это технологии, которые позволяют писать надёжный, предсказуемо работающий код. Точно так же, как мытьё рук — оно может нравиться или не нравиться, но от инфекционных заболеваний спасает очень хорошо.
А гвоздь в стену можно забить не только молотком, но также пассатижами, кирпичом и вообще любым твёрдым тяжёлым предметом. И он даже будет в стене держаться.
Это является поводом на уроках труда вместо молотка дать детям гвоздь и пассатижи?
В бизнес? Можно примеры этих компаний, созданных благодаря Arduino, и при этом не занимающихся продажей ардуинщикам готовых модулей?
Чушь. Выше объяснено, почему.
vortupin
Приведу лишь ссылки на вебсайты компаний, о которых я тут упомянул: sci-sol.com и www.shell.com/energy-and-innovation/innovating-together/shell-techworks.html
Если вы так уж мне не доверяете, то могу вам дать телефоны, и можете позвонить менеджерам этих компаний, и, представившись работодателем, навести обо мне справки (но вам нужен будет достаточно fluent English).
В упомянутых случаях речь идет о мелкосерийных, но достаточно дорогостоящих (для покупателей ;) ) проектах.
P.S. Я посмотрел ваши статьи, но ваш подход, который, утрируя, можно описать как «даже чтобы просто помигать светодиодом, профессионалы должны использовать только SoC с RTOS!» не разделяю, и, более того, считаю его неверным. Средства выполнения определяются поставленной задачей, сроками и бюджетом. То, что хорошо для mass production в миллионы единиц, может быть абсолютно неприемлемо по затратам и срокам для мелкосерийного производства. Всевозможные RTOS, со всем богатством предоставляемых API, для некоторых применений, будут самым, что ни на есть, overhead-ом — управлять светофором можно через 40 строк bare metal кода для i8008 (если и не i4004 — если удастся его найти).
olartamonov
Но ведь наверняка же на гитхабе есть сотни и тысячи прекрасных проектов на Arduino с прекрасным кодом внутри?
Вроде того проекта для Boeing, который два самолёта с пассажирами в землю вогнал? Или кардиоимплантов, в которых забыли сделать защиту от постороннего подключения? Или кода автомобилей Toyota, в котором более 80 тысяч нарушений MISRA C нашли?
Понимаете ли, к несчастью для вас, все присутствующие здесь в курсе, что громкое имя не говорит о качестве примерно ничего.
vortupin
Работает беспроблемно и непрерывно больше года (в частности, и код FastLED) ;)
Касательно ваших примеров: вы можете подтвердить, что Boeing, производители кардиоимплантантов, и Toyota использовали Arduino? Я бы поставил цент против тысячи долларов, что в вышеприведенных случаях «фирмварь» писали гордые профессионалы, разработка стоила миллионы долларов, а вот результат оказался… таким, каким оказался.
Я не пытался «давить громкими именами» (а сай-сол вообще махонькая компания, но весьма smart), я просто привел последние, по времени, проекты, что пришли на память. Вообще, я не занимаюсь «чисто» фирмварью, и «ардуинщиком» себя не считаю; я software контрактор, но умею делать «всякое разное». В свое время мне приходилось, правда, программировать «профессионально» Интелловские 196 контроллеры, и DPS от Motorola (потому, что другого тогда не было); не могу сказать, что от всей этой мешанины bare metal C/asm, плюс отладки, пусть даже и через «внутрисхемный эмулятор», у меня остались приятные впечатления. И я ничего не имею против RTOS (скорее, я «за»), но только для каждой задачи нужно выбирать соответствующие инструменты, вот и все. Палить «из пушки по воробьям», чтобы утвердиться в своем «профессионализме», не стоит, и тому примеров море.
olartamonov
А вы вообще пытаетесь как-то вдумываться в смысл того, что я вам пишу?
Вы тут пытались потрясти регалиями — так вот, я вам сообщаю, что место трудоустройства не всегда код украшает. Независимо от того, на ардуине он или нет.
Совершенно согласен с вами, что Arduino полностью адекватна для решения задачи «соорудить на коленке из дерьма и палок».
Для других задач она не нужна, а для образовательных — попросту вредна.
vortupin
P.S. Кстати, хотелось бы узнать про судьбу Black Swift, и для чего вы его сделали: сколько единиц вам удалось реализовать, и насколько успешным был этот проект? Так, чисто в плане «потрясти регалиями»…
olartamonov
Нет, вы не ответили. Вы выпятили грудь и сообщили нам, что вы необычайно круты.
Ок. Расскажите нам, почему именно при обучении программированию микроконтроллеров не надо изучать многозадачность, не надо изучать правильное структурирование проекта по файлам, не надо изучать принципы работы HAL…
4,5 тыс. штук примерно. Делал его не я, а другой человек, у него были свои причины — я эти причины находил неинтересными, в связи с чем проект закрыл.
Я смотрю, этот вопрос вам всё же не даёт покоя.
vortupin
Давайте сделаем так: я кину вам в личку линк на свой профиль на гитхабе (правда, в паблик там особо интересного мало, за исключением пары-тройки вещей, но активность в private repos вы вполне сможете увидеть), а вы, в ответ, мне свой профиль? Посмотрим, «какой вы Сухов» ;)
Перед тем, как на это отвечать, прошу привести мои слова, где я именно это утверждал. Либо — извиниться за голословные обвинения и ложь.
То есть, другими словами, этот проект failed, не окупив даже затрат на разработку? А в своей статье вы что-то про «другого человека» умолчали — все «мы, да мы».
Ну, «потрясите, наконец, регалиями» (заметьте, ваше выражение, не мое!), «похвастайтесь» хоть чем-то интересным и успешным — мне просто стало любопытно.
olartamonov
Господи. Бурное сотрясание воздуха регалиями продолжалось.
Да на кой чёрт мне вообще знать, что у вас там какие-то NDA где-то существуют, если к теме беседы они не имеют никакого отношения?
Не можете свой код показать — ну так просто промолчите про него (хотя, впрочем, его качество из ваших слов примерно понятно).
Давайте попробуем медленнее.
1) Вы не согласны с тем, что Arduino нельзя использовать в образовании — следовательно, вы считаете, что Arduino можно использовать в образовании.
2) Платформа Arduino не имеет нормальной организации структуры проекта, тщательно прячет от программиста HAL, не имеет средств организации многозадачности, etc.
3) Ergo, для использования платформы Arduino в образовании необходимо, чтобы со всеми этими вопросами учеников знакомить не требовалось, потому что при использовании в образовании платформы Arduino ни с чем из этого их познакомить не получится.
Это несложное логическое построение вам под силу?..
vortupin
А на кой чёрт вам спрашивать про проприетарный код? Может, вам лучше промолчать, чем «козырять» этим в качестве аргумента? Жду линк на ваш персональный профиль на гитхабе в личку.
1) Платформа Arduino, из-за простоты и дешевизны, просто must have в образовании! И это не отдельное мое, «непрофессиональное» мнение, а текущий тренд в образовании, поддерживаемый многими всемирно знаменитыми коллеждами, включая MIT и CalTech!
2) Платформа Arduino имеет абсолютно нормальную структуру организации проекта; если ваше невежество и отсутствие практического опыта не позволяют в этом убедиться, то это ваши личные проблемы, которые мало кого интересуют. Многозадачность, равно как и hard real time — это весьма специфические подзадачи; наличие или отсутствие их поддержки «из коробки» не говорит абсолютно ни о чем!
3) "Ergo" тут может увидеть лишь человек, бесконечно далекий от аристотилевой логики. Легкость создания прототипов на Arduino (и подобных платформах) отнюдь не означает «ненужность» углубленного изучения! Но спор то ведь не об этом!
Грубо говоря, вы, с вашими «пальцами», сроками и прайсом и нах никому не нужны в современном мире; столь презираемые вами «уроды, ваяющие из говна и палок», заработают миллионы, а вы… будете дальше постить на хабре :)
olartamonov
А ведь без регалий вы всё-таки не можете.
Миллиарды, чего уж там. Забавно, кстати, у вас крышку с чайника стало напором пара приподнимать.
Запостите, пожалуйста, прямо сюда скриншот Arduino IDE, в которой одновременно открыты два файла исходников и два заголовочных.
То есть учить в 2019 году тому, что на микроконтроллерах бывает многозадачность, всё-таки не надо?
vortupin
У меня? Вы себе льстите, я и не к такому троллингу привык. Да, все-таки жду ссылку на гитхабовский профиль «гуру», потом продолжим.
Если бы вы дали себе труд прочесть эту дискуссию более внимательно, то узнали бы, что я предпочитаю Visual Studio 2017 + Visual Micro. Если вы когда-нибудь слышали про такое «чудо» для «криворукого ламерья», то и без скриншотов, думаю, сможете представить себе картинку ;)
Касательно многозадачности: ей нужно «озабачиваться», когда она стоит в requirements. Если же можно обойтись простым loop, то и RTOS, и ваша «возлюбленная» многозадачность и нафик никому не нужна.
P.S. Я сейчас с этими «пацанами» работаю (в подробности вдаваться не могу): tymewear.com. Я уверен на 99%, что никто из их команды не знает, что nRF52840 можно использовать с RTOS, пресловутой «многозадачностью» и прочими фичами — они там никому не нужны! Но ребята, не далее, как в прошлую «тяпницу», получили «лям» investments. Вытирайте губы, «это другой человек» ;)
olartamonov
Почему мне кажется, что если я вас попрошу сейчас попродробнее рассказать, где, как и в каких учебных программах Калтех использует ардуину, у вас не получится?
Ваши личные предпочтение меня волнует столь же сильно, как количество подписанных вами NDA.
Дискуссия — про Arduino, а не про Visual Studio 2017.
Requirements в школьном учебном курсе — это, простите, как?
Но ведь вы же не знаете, сколько и когда получил я.
vortupin
Не в «школьном учебном курсе», а в конкретной прикладной задаче. В конце-концов, никто от JS front end-а не требует знаний, как работает загрузчик OS, как kernel взаимодействует с драйверами — это никому не нужно, и знание это, в данном конкретном случае, просто лишнее. Вы, почему-то, вбили себе в голову, что системное программирование сейчас важно, но это абсолютно не так! От «смарт- дивайсов» требуется решение вполне определенных проблем real life; взаимодействие с «облаками» и социальными сетями, а как правильно проинициализировать DRAM — это, уж извините, не проблема прикладных программистов IoT!
Дык, уже который пост безуспешно пытаюсь узнать! А вдруг вы — тот самый человек, который сумел «распилить» пресловутый госзаказ на «Байкал», а? Да я
рукуклавиатуру мыть не буду после знакомства с таким «светилом» :Dolartamonov
Вам не кажется удивительным, что за всю дискуссию вы не сказали от своего имени по теме вообще ничего, кроме ряда банальных глупостей?
У вас удивительная способность бурно дискутировать с радио, громко играющим в вашей голове, при этом перескакивая с темы на тему так, как вам хочется.
Дискуссия была про использование Arduino в образовании.
Всё больше убеждаюсь, что та сложная цепочка, по которой я должен был пройти, чтобы познакомиться с вашим творчеством, привела бы меня к колекции наколенного говнокода, который вы умудрились впарить заказчику.
В отличие от вас, я не очень люблю публично потрясать своими NDA перед малознакомыми людьми.
vortupin
Бездоказательные глупости, притом, преисполненные чувством собственной избранности изрекать «всеобъемлющие истины», по моему разумению, писали как раз вы.
О чем я умоляю уже три или четыре сообщения подряд: позвольте мне, «криворукому ламеру», ознакомить «всемирного гуру» со своим вонючим, копипащенным «говнокодом», и приобщиться к великому, исходящему из под десниц гения! :D Жду линк на гитхаб билгейца-вирта-возняка-гроува-кто-там-еще-в-одном-лице?!С темы я не перескакивал; я логично и аргументированно доказал свое мнение, которое подтвердил реальными фактами. А вы, как мне кажется, по прежнему сильно сомневаетесь в существовании в MIT курса про программированию Arduino? Вот вам, для затравки, ссылочка.
Надеюсь, что навыков «настоящего профессионала» хватит, чтобы самостоятельно прогуглить текущее положение вещей в образовании top ten вузов в США?
Вы, похоже, только оскорблениями любите потрясать. А про зафейленные проекты сразу перескакиваете «так это не мое, а того парня», хотя любой может подсчитать количество «мы» (а в вашем изложении смахивающем на «я») в вашей статейке ;)
olartamonov
facepalm.jpg
Кстати, я правильно понял про Tymewear — вы нам сообщили, что во всей команде проекта нет ни одного embedded-программиста с какой-то минимально вменяемой квалификацией?..
vortupin
«Не, ну, реально тупые!» (с) покойный Задорнов (или как там его?)
Ваши услуги им не требуются, если до вас не дошло ;) У ребят есть реально работающий (и хорошо работающий) продукт. «Вложиться» в них у вас тоже не выйдет (даже если у вас есть «деньги»), с Россией, боюсь, никто дел вести не будет в обозримом будущем.
olartamonov
Нет-нет, я услуги не предлагаю, про моих инвесторов и возможности вложения вы тоже знаете примерно ничего.
Просто, конечно, рад, что вам удалось присосаться к какому-то фонду, но третий год разработки и при этом ни одного минимально опытного программиста в команде — полагаю, если мы этот продукт вообще когда-либо увидим в продаже, то это будет явление краткое и печальное. Но скорее всего так и будут прототипы показывать следующие года два, пока деньги не кончатся.
vortupin
С вами, реально, тяжело. Про вас я знаю только, что пресловутое ЧСВ превысило допустимые пределы и застит вам глаза. «Опом'ятайтеся, панэ!» Остальная «информация» фактически равна нулю. «Сосете» ли вы из российского бюджета, или выживаете еще каким-либо мошенничеством, меня это мало интересует, если честно.
Что вам непонятно в слове «investments» — вы, того, не стесняйтесь, спрашивайте, я объясню. «Присосаться» — это слово явно из вашей реальности; опасения «если мы этот продукт вообще когда-либо увидим в продаже» вы можете рассеять буквально за несколько часов (в Бостоне сейчас ночь, так что чуть-чуть попозже), но, боюсь, «нищебродство» и жадность помешает доказательству, что «пиндосы все тупые» ;)
P.S. Вам-то есть что показать? Уже в четвертый раз спрашиваю… Ну, что-то реально существующее, а не «тот парень продал 450 штук».
olartamonov
Зачем? Зачем мне в дискуссии о том, пригодна ли ардуина для образования, показывать какие-то свои контракты, устройства и всё остальное, не имеющее вообще никакого отношения к теме дискуссии? Почему мне не показать, например, свою квартиру или машину, и если она окажется больше и дороже вашей, то мы признаем, что про Arduino я прав, а вы — нет?
Ну то есть я заранее знаю, что мой инвестор — он жирнее вашего, мои контакты и клиенты — они лучше ваших, но на кой чёрт мне размахивать этим в дискуссии про Arduino?..
Чтобы что?
FForth
Вставлю сюда свои пять копеек.
В MIT есть и курс по Scratch, но как ни удивительно поиск по их сайту по слову Forth дал только 1-2 малоинтересных упоминания связанных с Форт языком.
P.S. Даже в Российских вузах Форт можно больше найти. :)
olartamonov
Вообще в таких случаях факты без контекста попросту не имеют смысла. В том же MIT, например, есть курс «Collaborative Design and Creative Expression with Arduino Microcontrollers», про который даже по названию понятно, что это такая развлекушка для студентов нетехнических специальностей, из которой никак не следует, например, что «программистам встраиваемых систем важнее учиться творческому самовыражению, чем тонкостям работы DMA» — он для них просто не предназначен.
Причин появления таких курсов — их вообще масса, начиная с того, что Arduino — это вполне себе баззворд, так что если курс сделать недорого и ненапряжно, то его подготовка окупается хотя бы чисто с маркетинговой точки зрения (в России это менее привычно, но цель западного вуза — продавать себя, и те же онлайн-курсы в первую очередь появились как эффективный способ эту задачу решать).
Надо смотреть, кому курс читается, сколько времени, какие курсы читаются до и после — в общем, целостную картину.
FForth
Возможно Вы правы, но только где в Форте обратная «польская запись»?
Конканетавивные языки программирования
P.S. Про обучение на Форт программированию, это Вы сами придумали (моё сообщение не об этом) :) Хотя, школьники, могут и данное языковое направление понять и использовать т.к. много примеров его использования для программирования микро контроллеров (и не только)
vortupin
Сорри, я не эксперт по Форту, но, как мне припомнилось при написании комментария, это одна из его особенностей (в добавок к многим другим). Впрочем, вики говорит, что я таки прав (Особенности языка Forth, пункт 3).
FForth
В качестве некоторого ликбеза по основам Форт языка :)
Андрей Черезов: «Слово о Форте». (Попытка формализации сути языка 29.07.1999)
P.S. Википедия не достаточно адекватный источник информации. Форт — построен на обобщённом использовании понятия СЛОВО.
А.Черезов автор SP-Forth (системы используемой русскоязычными Форт программистами)
vortupin
Спасибо, конечно, но особого интереса архаичные языки программирования у меня не вызывают. И, если Википедия так грубо ошибается, отчего бы Вам, как любителю Форта (судя по нику) ее не поправить?
P.S. Не то, чтобы я вам так сильно не верил, но все же (чтобы убедиться, что мы говорим об одном и том же): т.е. в Форте «постфиксной нотации», aka «обратной польской записи», все же нет? Т.е. вместо 7 2 3 *, там пишут, как обычно, 7 ? 2 * 3?
FForth
То, что Вы привели это форма записи алгебраических выражений с приоритетами операций. Если бы в Форт не было возможности заменять (или переопределять) семантику использования конкретного слова (в том числе и переменной) то использование понятия «обратной польской записи» ещё можно было бы допустить. Но Слово также может возвращать более одного
параметра. При замене семантики имени слова переменной на слово процедуру достаточно сохранить только контекст количества и понимания параметров после выполнения выбранного слова.
P.S. Если есть необходимость в алгебраической форме записи программного кода, то данное расширение Форт языка добавляется к системе. (также как и если есть необходимость в ООП)
7 2 3 * — (но в С, например, есть операторы ++ — )
Проектов с задействованием «архаичного» Forth языка достаточно на Github. :)
vortupin
Давайте не будем «юлить», все таки, мы взрослые люди. Если вам настолько важно «сказать свое правильное последнее слово» — так вы так и скажите, я не буду тратить свое время, я вовсе не страдаю синдромом «в интернете кто-то неправ».
— это правда или ложь? Давайте без возможных переопределений и извращений с семантикой Форта (как я понял, бывшей чуть ли не главным объектом критики данного «ископаемого» языка) — вот, прямо «искаропки», как мне просчитать значение арифметического выражения 2 * 2?Вот данная цитата, из раздела «Особенности языка Форт» на википедии
Я почему запомнил про «польскую нотацию»: сам я начинал с программирования микрокалькуляторов БЗ-21 и БЗ-34, и там использовалась такая нотация (весьма нестандартная), и прочие «трики» со стеком. Как я понимаю, и в калькуляторах, и в Форте это использовалось не от «хорошей жизни», а от простоты реализации на тогдашней элементной базе (так было дешевле и быстрее). Собственно, и Форт возник, как припоминаю, в качестве необходимости чего-то, более высокоуровневого, нежели макроассемблеры, но такого же эффективного.
FForth
2 * 2 в Форт будет 2 2 *
но можно : 2 3; 2 2 * (будет 6)
Форт язык, это далеко не язык программирования используемый для БЗ-34 (МК-54) и имеет много особенностей выводящих его в отдельное направление программирования.
P.S. Здесь есть и например расширение Форт языка — транслятор формул.
Про «ископаемое» — это Вы немного погорячились, но
oн, конечно, отличен от того чему учат в школе.
В моих сообщениях из профиля можно найти ещё некоторые полезные ссылки для ознакомления с Форт. :)
Если Вы в знании о нём не заинтересованы, то это только Ваш выбор.
vortupin
Спасибо, значит, я все-таки был прав на счет «польской нотации». Я прекрасно понимаю, что Форт — вовсе не машкоды калькуляторов, но, надеюсь, вы согласны касательно использования стека, и причин, послуживших созданию Форта?
P.S. Касательно «ископаемого языка» — это была гипербола, в определенном смысле. Даже сегодня, в 2019 году, в Штатах есть сложные системы, написанные на Коболе и PL/M для мейнфреймов, которые продолжают поддерживать (кстати, отец одного из моих молодых знакомых, приехавший сюда, как «отец гражданина», неожиданно нашел очень высокооплачиваемую работу по программированию на Коболе, и получает, даром, что «пенсионного возраста» и в Америке не так долго, намного больше, чем сын-программист). Я, скорее, о том, что развитие микроэлектроники сделало применение Форта чрезвычайно дорогостоящим и малооправданным; современные SoC, с десятками, а то и сотнями мегабайт, «бегающие» на сотнях мегагерц, с Linux-ами и QNX-ами внутри, могут быть запрограммированы (прикладные задачи) хоть на Java script. Ну, а применение его для обучения молодежи — см. мой первый пост :) Хотя, можно рассуждать и от обратного — если таки «осилят» Форт, то уж точно «разберутся» и с менее сложными задачами.
FForth
В упрощённом «обывательском» смысле, да правда.
Tакже, например, как в ассемблере сначала формируется условие, а потом команда перехода по этому условию. (тоже «обратная польская запись» :)
P.S. Стек в Форте, это прежде всего кэш и использование его в чём то более оправдано чем именованных локальных переменных. (в Форте они тоже есть) таким образом нет необходимости в создании связи формальных с фактическими параметрами слов (функций в классике языков программирования) + компактность решений на данном языке.
Знакомство с Форт у меня началось с прочтения книги авторов Баранова, Ноздрунова «Язык Форт и его реализации» в возрасте недалеко ушедшем от школьного (параллелльно читал и про Аду, Пролог, Лисп ...)
vortupin
Переход по условию — это прямая причинно-следственная связь, привычная нам и в общежитии (но в современных архитектурах CPU с предсказанием ветвления все не так просто), но вот вычисления по «польской записи» идет «вразрез» с привычным нам «алгоритмом». Да, «трюки» со стеком позволяли на БЗ-34 делать эффективно некоторые вещи, но от этого легче для понимания они не становились.
P.S. Да, и Forth не входит даже в список 50 популярных языков программирования, проигрывая даже таким архаичным «монстрам», как Фортран, Кобол, и ПЛ/М (PL/I), не говоря уж про языки, о которых я вообще ничего не знаю.
FForth
Входит по версии рейтинга IEEE (48 место ) spectrum.ieee.org/static/interactive-the-top-programming-languages-2018 (там вкладки фильтров приоритетной области использования)
P.S. Вот эта причинно-следственная связь и есть прямой порядок слов Форт языка! Привычная запись алгоритма и выражение алгоритма в заданном языке немного разные вещи. Когда программы записываются на языке математиков? У Форт тоже достаточна обширна библиотека реализованных алгоритмов.
В БЗ-34 фактически нет нормального стека и также нет второго стэка-возвратов.
vortupin
FOR(mula)TRAN(slator), что и обусловило его мировую популярность на протяжении десятков лет.
FForth
Задачи для решения изменяются и под них есть более или менее удобные языки. Для Формул, Фортран, наработал большую вычислительную базу.
P.S. Но, почему то, такой проект Forth for Artificial Intelligence in Robots реализован не на Фортране, а на Форт. :)
vortupin
Я ответил на ваш вопрос
Что же касательно упомянутого вами проекта на Форте, то, не вникая в суть (нет времени на это):
— хостинг на sourceforge, imho, говорит о том, что, во-первых, проект явно любительский, во-вторых, о том, «бобик давно сдох»;
— как вы понимаете, подобных проектов множество, на всевозможных языках — чем именно этот, на полузабытом и устаревшем Форте, уникален? Есть какие-то успехи, промышленное, может, применение? С первого взгляда не нашел, сорри.
— на Fortran-е существуют проекты во множество (добавлю, в неизмеримое множество!) раз сложнее, чем упомянутый вами проект. И таки да, в современном мире Форт не используют по той же причине, что и Фортран :)
FForth
Боюсь, что упоминание каких то разработок с Форт участием увы не будет доказательной базой.
P.S. @ «Видишь суслика? А он есть!» :)
Один из
сусликовпримеров:В платe Pololu Maestro Servo (PIC18F4550) в качестве скриптового языка применён Forth.
FForth
RoboForth в манипуляторах St robotics
Mosaic Industries inc: Embedded multitasking RTOS supports programming in the Forth and C languages
ES-ForthLogic ПЛК контроллеры
…
P.S. Не для всех данный язык устарел и забыт. :)
vortupin
Процитирую вас же:
Я не пытаюсь вам доказать, что не существует людей, не разрабатывающих на Forth, отнюдь нет! Уверен, что возможно найти разработки даже на brainfuck. Я лишь попытался (как я понимаю) ответить на ваш вопрос: «Почему не использовать Forth для обучения?», и, как мне кажется, раскрыл этот вопрос полностью. Нет никакого смысла использовать устаревший, сложный и непопулярный язык.
FForth
Да, он не для всех школьников, если даже их «наставники» имеют нулевые знания о нём.
И зачем Вы пытаетесь отнести Форт к brainfuck? (почему не к Befunge)
P.S. Тот, кто его использует может наоборот сказать — применяющийся и простой язык и для его использующего — популярный. :)
Может проще понять где его реально использовать и для каких задач? Начав с прочтения данной «устаревшей» книги Л.Броуди «Cпособ мышления — Форт язык и философия для решения задач»
vortupin
Вы, похоже, потеряли нить дискуссии. Оригинальный ваш вопрос звучал так:
, притом в контексте «Микроэлектроника для школьников от самого истока».Как мне показалось, я дал ответ — то, как я понимаю «а почему?»
Brainfuck я упомянул в том контексте, что, какой-бы «замороченный» язык программирования не был придуман, обязательно найдется кто-то, кто его использует, в том числе и для практических целей. Вполне вероятно, что эти люди считают и brainfuck «применяющимся и простым». Но нужно ли всем следовать этому примеру? Ответ: безусловно, нет.
Timka21213
Детям вполне можно вложить знание Forth (я сам на нем программировал игры в школе, пока интеллектуальный терминал ждал переподключения к ЕСке), но в жизне на практике все эти полученные аж с 1984 года знания не пригодились — пара зачетов в уже студенческие времена не в счет. Осталась только любовь ко всякой экзотике в виде хобби.
Pyhesty
у меня ребенок 11 лет маньячит на скретче набивая за один час
по одной игрушке за раз )
для базового уровня скретч вполне, а потом можно переходить на более тяжелые наркотики…
YuriPanchul
Я думаю, что существует две причины снижения популярности стековых процессоров в 1980-е годы:
1. Скорость логики и арифметических устройств росла быстрее скорости обращений к памяти, что потребовало развития кэшей. Сейчас в типичном high-end процессоре за 1 промах кэша при загрузке из памяти можно выполнить порядка 100 простых арифметических или логических операций типа сложения или and. Поэтому чтобы реализовать память для стека в Форте, недостаточно простого интерфейса к чипу памяти, нужна сложная комбинация из регистрового файла, кэшей и памяти как таковой.
2. Исследования использования операция в программах, проведенные в Стенфорде Джоном Хеннесси в конце 1970-х — начале 1980-х годов показали преимущества использования регистрового файла (при наличии оптимизирующего компилятора) перед стеком. Это преимущество было даже в споре между MIPS и SPARC (у которого был стек регистровых окон).
Это я так думаю, но вы можете погуглить и найти какие-нибудь альтернативные объяснения. Хотя стек действительно легко реализовать и это элегантная модель для программиста (см. мой старый пример стекового калькулятора).
x8core
Технические аспекты и детали реализации модулей, процесоров у Хариса вполне могут быть лучше. Суть в том, что мы говорим о контексте новичка. К примеру, молодого человека который хочет понять как и зачем создавать компьютер?
Петсольд раскрывает фундамент. Что такое электрон? Какую проблему пытались решить люди изобретая реле, телеграф, логические вентили, и как они это сделали? Как "заставить" электричество сложить два числа? Как "заставить" энергию природы выполнять необходимые бытовые задачи? То есть Петсольд предлагает новичку идеалогическую базу для будущих знаний. Сначала показывает желание, а потом как достигать реализации этого желания. Это здорово в контексте школьника. Харрис же начинает с сухого изложения материала. Так нельзя поступать с новичками, а особенно со школьниками. Нужно разжигать разум школьника и рождать интерес в нём, а тогда уже подкидывать в этот огонь практические знания. Но никак не наоборот. Именно поэтому я использовал слово "сомнительно", в отношении Хариса для новичков. Харрис приводит историческую выжимку развития компьютеров, и упоминает, что какая-то там ракета за 7 миллиардов долларов разбилась из-за переполнения регистров. И это вызывает во мне волны негодования. То есть люди посчитали уместным вставлять в книгу подобные данные о странах, годах и финансовых показателях затрат
на создание ракеты. Эти мелочи весьма красноречиво говорит нам об их неумении без лишних отступлений ответить на вопрос "как и зачем создавать компьютеры?" Какая ирония! Они отлично разбираются в вопросе создания компьютеров, но не чувствуют неуместности вышеупомянутых данных в своей книге.
YuriPanchul
Я понял вашу позицию. Харрисы конечно писали для студентов младших курсов, которые уже выбрали специализацию, а не для школьников, которых нужно заинтересовать, или интересующихся взрослых, которые читают это как научно-популярную литературу. Петзольд ориентировался на две последние категории.
Все, что я могу по этому поводу сказать — миру нужен новый Петзольд. Пока его нет, можно попробовать слепить винегрет из Петзольда и Харрисов и применять для школьников его.
Вы кстати можете посмотреть мой онлайн курс (ссылки ниже) и высказать что вы про него думаете? Он сейчас запускается РОСНАНО для профориентации школьников и мне интересны разные мнения и оценки — habr.com/ru/post/443234 и про семинар по ПЛИС в апреле по поводу этого курса — habr.com/ru/post/444476
Я не пытался заменить ни Петзольда, ни Харрисов, а обрисовал все на пальцах для школьников со своей точки зрения инженера в микроэлектронной промышленности.
Вот как выглядит пару моих исторических справок из сценария к курсу (они есть на слайдах). Она сухая (курс не об истории), но мне интересно, не вызывает ли она у вас негодование?
x8core
Благодарю за ответ.
Историческая справка не требуется в материалах для новичков. Вместо этого лучше продемострировать возможности современных компьютеров и сказать за какой короткий срок мы достигли подобного технологического величия. Суть в том, что школьник не будет инвестировать своё внимание в то, что скучно.
Меня интересует исключительно то, как у вас происходит введение школьника в основу создания компьютеров. Например как объясняется про электричество, двоичную систему счисления, сложение двоичных чисел и применения электричества для сложения двоичных чисел.
YuriPanchul
Это есть в первой части моего курса на stemford.org/#course?id=6410690722451343819
Я не пытался повторить Петзольда, просто дал минимум, чтобы школьник гарантированно понял материал второй части (про логический синтез языков описания аппаратуры) и третьей (про физической размешение схемы на кристалле и применяемых при этом алгоритмах). Это разумеется не для всех школьников, это для профориентации школьников, у которых возникла идея пойти в вуз типа МИЭТ или на соотвествующие специальности в МИФИ, ИТМО итд.
Оглавление первой части выглядит вот так:
Оглавления второй и третьей частей есть в habr.com/ru/post/443234
pgkirich Автор
Мы с товарищами по работе посмотрели этот курс. Нам он местами показался для новичков сложноватым, особенно в части триггеров и их времянок. Вы уже обкатывали его на ком-то?
YuriPanchul
Ну вот сейчас обкатываю. Курс я сознательно ориентировал на школьников олимпиадного типа, а не на всех. Если его делать проще, то до синтеза верилога и алгоритмов place & route они просто не дойдут.
Да, и меня ваши комбинации транзисторов кажутся сложными для школьников — тут вопрос как смотреть. Нужно просто попробывать все.
pgkirich Автор
Исходно целевая аудитория была неочевидна, или я просмотрел. Если на олимпиадников, то может пойти успешно.
tirus
Юрий, ремарка про транзисторы в этой книге — на мой взгляд, это самая важная и интересная часть книги, выделяющая ее из ряда других. Про логические микросхемы написано огромное количество книг, а вот рассказ простыми словами про то, как это работает на MOSFET — приятная фишка именно этой книги (главы 2 и 3).
pgkirich Автор
Ну да, так и задумывалось, спасибо за отзыв. Именно это было обкатано на живых юных организмах, прежде чем изложено на бумаге. Собственно, про то и заметка.
YuriPanchul
О, это я понимаю и ценю. Тематика транзисторов нераскрыта в большинстве книг такого типа, а ведь надо еще поведать молодежи про FinFET и пути в будущее, а без основ это нельзя.
Timka21213
у меня многие дети с удовольствием читают мангу Хидэхару, но она без практики: dmkpress.com/catalog/manga/978-5-97060-661-2
YuriPanchul
К сожалению, на сайте easyelectronics по вашей ссылке лежит версия Харрис & Харрис 2015 года, в которой из-за халатности британского верстальщика (контрактора Imagination Technologies который переверстал исходную верстку от РОСНАНО) было пропущено предисловие. Эта версия жила всего полтора дня, пока не была выложена правильная версия. Самая правильную версию (со всеми правками за 3 года) вы можете скачать по ссылке c сайта MIPS. Правда ссылка работает только под Windows, а на Маке и под Линуксом глючит (на этот раз виноваты британские сайтоподдерживатели). Если у вас с ней проблемы, можете скачать эту же версию отсюда.
Karlson_rwa
Так давайте призовем DIHALT, чтобы он поправил файл у себя на сервере.
Кстати, замкнутый круг с сайта MIPS и под виндой получается.
YuriPanchul
Давайте!
DmitrySpb79
Кое-что получилось, кому интересно flibusta.site/b/515361 (если ссылка не открывается то здесь).
tehnolog
Я знаком с вашей работой. Но у вас практически сразу примеры с платой, а я говорил, что хочется собирать схемы без нее.
DmitrySpb79
Ну все же триггерами и транзисторами надолго не заинтересуешь детей имхо, это не настолько зрелищно. Это хорошо как 1-2-4 вводных занятия, а дальше все равно переходить либо к микроконтроллерам, либо к плис. Дальше могут пойти роботы, основы силовой электроники (то же управление моторами), сетевые сервисы и пр.
Так-то да, согласен, современных книг типа «Искусства схемотехники», но на новой элементной базе, я не видел.
NordicEnergy
1) Ого, вы настолько великий учитель, что можете хотя бы базовую схемотехнику аналоговую и цифровую с лабораторками упихнуть в 1-2-4 вводных занятия?
2) Ардуино, малина… зачем? Ну серьезно, в стране и так дебилов немерено, вы еще их пытаетесь дополнительно плодить. Потом люди не понимаю что такое компилятор, как оно работает, а в случае отсутствия IDE падают в обморок и требуют психолога.
3) А что вы имеете ввиду под Хорровицом на новой базе? Транзисторы за 30 лет принципиально изменились? BC847 нельзя использовать в повторении схем из книжки?
Если хочется новую книжку, то есть те же Харрисы, но вот незадача — логические элементы тоже за 30 лет не сильно поменялись, да и ПЛИСы уже 30 лет как есть, так что в плане содержания эта современная книга принципиально ничем не отличается от учебников 90-х.
DmitrySpb79
Я же говорю про кружки, а не про ВУЗ. Если давать детям весь курс ТОЭ с нуля, они просто не будут ходить.
Arduino + Raspberry Pi позволяет делать кучу всего, от роботов до машинного зрения. Можете распознавание лиц запустить или даже нейросеть через Intel Compute Stick. Это же полноценный Linux, там в принципе все работает, хоть кластер многопроцессорный на Hadoop можно поднять. Так что вопрос про дебилов тут не стоит, смотря на каком уровне подойти к задаче :)
Новая база — это те транзисторы/компоненты, которые можно просто купить в ближайшем магазине, а не искать в антикварных лавках. Впрочем я специально не проверял, может то что написано у Хоровица еще есть в продаже.
staticmain
Имеется в виду, что запуск какой-либо задачи на готовом Linux никак не отличается от запуска подобной программы на десктопе. Каким образом связана схемотехника и raspberry?
Про идиотов имеется в виду, что после того как люди знакомятся с ардуино и распберри схемотехникой они больше не интересуются. STM/ESP для таких людей пустой звук.
Как конечный вариант эволюции таких пользователей: habr.com/ru/sandbox/118863 человек на 4м курсе делает на двух ардуинах пинбол. При этом по заданию надо передавать данные по воздуху. Используется готовый bluetooth модуль, при этом ардуины спариваются проводом.
Использовать самостоятельно сделанный радиопередатчик? Распаянные светодиоды? Нет, просто возьмем все готовое, совместим с помощью беспаечных проводов, возьмем готовую библиотеку для работы со всем этим добром и сдадим как выпускную работу бакалавра. Да блин даже у меня в 2012м на втором курсе в непрофильном университете по схемотехнике была курсовая с радиопередатчиком и приемником на «рассыпухе».
Поэтому после слов «а теперь берем распберри\ардуину» мне вспоминается вот этот лот:
и вот этот лот:
DmitrySpb79
Именно тем, что на Raspberry Pi легко работать с внешними устройствами — хоть serial port, хоть i2c, хоть обычный GPIO. Можно подключить датчики, моторы, да что угодно, хоть с квадрокоптера видеотрансляцию в полете делать или управлять роботом через интернет. По-моему для кружков или для хобби, то что надо. На рассыпухе сейчас много не соберешь — тот же акселерометр или bluetooth я бы дома сам не стал паять, слишком муторно.
Разумеется, от студентов радиотехнических вузов требуется большее, чем просто соединить 2 макетные платы проводами, тут согласен. Но еще по моему опыту учебы в ВУЗе, есть 2 категории студентов — те, кто заинтересованы сами и делают больше стандартной программы, и те кто просто отсиживает часы и знает что пойдет работать менеджером или продавцом в Медиамаркт и ему эти транзисторы/диоды нафиг не сдались. Для первой категории модульность это плюс — можно сделать что-то интересное, вторые соединят светодиод с платой проводами, свою «3» получат, и бог с ними.
staticmain
Акселерометры: www.chipdip.ru/catalog-show/accelerometers
Есть даже те, который настроены на один угол и меняют сопротивление (ЕМНИП) в зависимости от ускорения в данном направлении.
Bluetooth вас никто не заставляет паять, в заданиях или задачах необходимо просто передать сигнал по воздуху. По какому стандарту — на усмотрение автора. Для полноценного передатчика звука, например, надо всего 2 транзистора.
Чем «сейчас» отличается от того, что было лет 10-15 назад до ардуин? Что люди умели паять, а не втыкать штырьки?
DmitrySpb79
Ну дайте школьнику паять STM32 с обвязкой, я посмотрю на результаты :) Можно конечно заморочиться если задасться целью, но зачем?
«Сейчас» очень мало что можно спаять на коленке, чтобы было интересно, даже не все компоненты в DIP и удобных для пайки корпусах вообще есть. Хотя спасибо китайцам, отладочные платы есть на любой вкус и кошелек.
Я вовсе не против преподавания детям аналоговой схемотехники, дай бог если найдется преподаватель способный творчески и интересно это рассказать, но все интересные и современные технологии сейчас в «цифре», и любая поделка все равно упрется в необходимость хотя бы микроконтроллера. Ну не на голой логике же все делать.
staticmain
Не вижу разницы между https://www.aliexpress.com/store/product/STM32F103C8T6-ARM-STM32-Minimum-System-Development-Board-Module-ForArduin/1095279_32581820854.html?spm=2114.12010608.0.0.1c937ffcXsE2ks и какой-нибудь arduino uno.
Судя по статье выше дети смартфон убирают ради безконтроллерной "кто первый", а вы тут про интересно/неинтересно. Да обычный моргающий мультивибратор уже интересная штука, особенно если подстроечники туда воткнуть. На контроллере банальный led куб гиперинтересная схема, особенно если учить способам чарлиплексинга и демультиплексорам. А добавив кнопки уже неограниченный полет фантазии, вплоть до калькулятора с восьмисегментным дисплеем.
NordicEnergy
Речь про кружки. Вообще какова задача радиокружков и робототехнических секций? В нынешние времена по моему одна — вытащить бабло с родителей, т.к. никакого практического смысла и пользы они не дают.
А вы точно про электронику не с хабра узнали? Вы не в курсе, что КТ315 заменяется на BC847 без каких-либо проблем? А еще его можно заменить на любой NPN транзистор просто пересчитав усиление, если это надо. Хотя да, формула в одну строчку это конечно же для ВУЗа, а не хипстерского робототехнического клуба с лего/ардуино/питоном.Посещал я в школьные будни радиокружок и в 5-6м классе как все собирал схемы на КТ315, на 561-й логике и прочей рассыпухе и все это было интересно. Если ребенок к технике не расположен, а таких большинство, то ему уже ничего не поможет, а тем более бабуина с питоном. Зато это поможет создателям кружка/клуба улучшить свое материальное благосостояние :))
DmitrySpb79
Понятно что формула есть, можно и аналоги загуглить, и на форумах спросить если надо. Предлагаете школьникам все самим пересчитывать? Литература для обучения должна быть современной все-таки. Для хороших книг потому и делают переиздания, чтобы информация была более-менее актуальной.
Про кружки не знаю, я их не вел. Думаю, туда все же идут по призванию, а не из-за денег, какие там деньги в современном образовании… Да и мне на месте современного школьника было бы интереснее робота с питоном делать, чем светодиодом на транзисторе мигать. Времена поменялись, и то что было круто в 70е, сейчас уже не будет интересно. Ну можно сделать это 1-2 раза, но целый год, увольте :)
NordicEnergy
Школьники не настолько тупы, чтобы не осилить линейное уравнение из 7 класса. А вот объяснить им, что можно взять аналог или пересчитать может любая советская книга даже.
Хороших книг технических на русском нет и не будет уже никогда, т.к. нет в них потребности. Взрослые дяди могут почитать на инглише или научную литературу, а молодым людям мозги задурили ардуиной с питонами и они считают, что этого достаточно. Сколько преподавателей этих робо-клубов сами то могут пересчитать режим транзистора? Ноль?
Ага, по призванию… в ВУЗ тоже по призванию… на выходе у нас 90% людей, которые занимаются не тем, что нравится и работают не по специальности. Огорчу вас, но большинство идут, потому, что мамка отправила и даст трендюлей, если пропустишь, ибо она уже оплатила на месяц вперед.
DmitrySpb79
Ага, ребенок сел делать вторую в жизни схему, а вы ему предлагаете режим транзистора пересчитывать? Все же схема для детей должна быть работоспособной и 100% повторяемой без посторонней помощи, не у каждого дома есть те кто разбирается и может помочь.
То что «сейчас ничего нет» это имхо брюзжание предыдущего поколения :) Современные дети сейчас могут собрать столько всего, сколько в 70е и не снилось, и современный радиокружок может быть ничуть не менее интересным чем тогда. Но технологии другие, конечно, материальная база другая.
Опять же, повторю свою мысль из другого сообщения. Если найдется педагог, способный интересно и творчески преподавать аналоговую схемотехнику, я был бы только рад. Но в реале, мало верится что этим детей можно надолго завлечь.
NordicEnergy
В современно же радиокружке по вашему расскажу детей пугает линейное уравнение, а преподавали настолько тупы, что не могут объяснить как его решить и какой физический смысл несет. Раньше почему-то могли, а сейчас не могут.
С одной стороны доступность материалов для электроники и DIY очень радует, с другой стороны это и вредит, т.к. сейчас не каждый иликтронщик паять то умеет нормально. А зачем? Можно купить шилдов и дюпонами слепить же! И главное потом еще на хабре это показать в виде очередного умного дома или метеостанции.
То есть основа электроники это тема, которую можно не объяснять, ЕСЛИ не нашли преподавателя нормального? Вот так красота)) Скоро перестанут обучать таблице умножения, ибо калькулятор есть же. Хотя ее и так 9 из 10 не знаю.
truebest
Питон и ардуинка это тоже круто.
Посмотрите на наше все Илон Маск, и его Boring Company вакансии embedded
Experience working with C/C++
Proficient in Python.
С этого и ардуина начинается.
NordicEnergy
Ну так С/С++ основа, а питон в данном случае просто мелочь всякую писать для прототипирования. Самое забавное, что ардуина/малина не учит ни С++, ни питону. Учит находить готовый скетч, а если он не заработал, то искать другой. О чем ранее говорил — данные знания бесполезны.
truebest
Мы не знаем к чему это приведет. Может 9 из 10 найдет скетч и реализует задачу, подключит либу. Другой же не найдет нужный скетч, и попробует написать свою либу, или по-другому заставит ее работать, а там они на с/с++ и пишутся. Из этого что-то да и получиться может.
А питон издавна используется как для научной так и математической работы, конечно mathlab наше все, но и на питоне все можно посчитать. Да, порог вхождения стал ниже, не используется IDL и тп. Но люди решают задачи.
Питерский selectel пополной до недавнего времени python везде использовал. Железные проекты тоже на python работают, тот же gnu radio по полной использует. Вы его можете на малинку закатать и реализовать sdr приемник, поиграться с либами, написать свой обработчик и тд пакетов, кодер/декодер и тд.
Малой сделает телеграмм бота на малинке и питоне, это уже здорово, вдруг этот бот поможет людям больше чем железка с софтом от звездной команды. Ребята из JetBrains сделали Kotlin, там далеко не дураки работают, сделали очередной язык коих тысячи. Но они сделали, google и другие пользуются.
Сейчас в мире наблюдается тенденция, много кода уже написано, много программ уже придумано, потому все чаще становятся нужными люди на вакансию software architecture, со знанием паттернов и языков программирования, а важным скилом является умение взять готовое и адаптировать под свое решение, дописать если нужно, и выкатить продукт.
Простая комбинаторика, да не спорю. Не гениально, нет компиляции того, что еще не придумано в природе и обществе. Не так много в мире задач, где требуется Перельман.
Это позволяет решать задачу, быстро и с минимальными затратами, что зачастую бизнесу и нужно.
Сейчас важнее решать задачи, а написание кода, реализация железа и тд это вторичные вопросы. Мир слишком быстро меняется, а код и железо делается крайне долго, он может оказаться ненужным, к этому моменту задачу уже решат по-другому.
Вы слишком жесткий к себе и людям. Сейчас, как мне кажется, нужно всем больше любви.
«Лучше быть оптимистом и ошибиться, чем быть пессимистом и оказаться правым.»
vortupin
Любопытно, что это уже вторая тут дискуссия на одну и ту же тему; притом, «аргументы» противной стороны сводятся, в основном, к «нефик плодить дебилов, копипастящих из говна и палок» и «настоящие профессионалы не используют Arduino (BasicSTAMP, ESP32, etc.)».
Но пока «настоящие профессионалы» доказывают свою правоту, а также ваяют «правильную нетленку» (которая, кстати, может «не взлететь»), «копипастеры-дебилы» поднимают миллионы на кикстартере, и выпускают пусть «неправильные», но рабочие и нужные продукты в фантастически быстрые сроки.
YuriPanchul
Имхо у вас несколько скошенная перспектива про кикстартер. Я работаю в Silicon Valley более четверти века, и из того, что я вижу, могу сказать, что:
1. Миллионы поднимаются не на кикстартерах, а в традиционных VC-funded стартапах. Среди 651 проекта на ардуино на сайте кикстартера ни один проект не поднял даже один миллион долларов — см. www.kickstarter.com/discover/advanced?term=Arduino&sort=most_funded&seed=2589293&page=1
2. Даже в кикстартерных компаниях, которые я видел, для встроенных проектов используются чаще не ардуино, а обычные тулчейны.
3. Кикстартерные проекты (с ардуино или без) — это конечно милая ниша для молодых людей, которые хотят что-то попробовать на грани с хобби, но погоды кикстартерные компании не делают, и подавляющее большинство проектов в больших и малых компаниях требуют более строго подхода к программированию микроконтроллеров и встроенных систем, чем используется с ардуино. В самых разных областях — контроллеры лазеров, холодильники, военно-космические проекты, массовые гаджеты итд итп.
olartamonov
Там вообще модель «молодые стартаперы вышли с идеей отличного продукта и собрали миллионы» в общем и целом мертва года три как. Большинство таких проектов бултыхается со сборами в единицы тысяч долларов при таргетах 10-100К.
Значительная часть успешных стартапов на кикстартере не зарабатывает, а тратит: открывается кампания, вкладываются тысячи, иногда десятки тысяч долларов в продвижение, результат подшивается к инвестиционной презентации и несётся в большие фонды за настоящими деньгами. В фейсбучной рекламе под это аж целый новый жанр появился — фейковый high-tech обозреватель бурно восхищается продуктом.
YuriPanchul
Сейчас под эгидой ВШЭ МИЭМ делается лабник для ПЛИС, который в сочетании с русским переводом учебника Харрис & Харрис имхо эффективно заменяет цифровую часть Хоровица. Если вы со мной не согласны, вы можете в развернутой форме написать, аналоги каких цифровых частей Хоровица стоило бы добавить к Харрис & Харрис?
Maximoose
Но ведь есть новое издание Хоровица—Хилла — кажется, 2015 г. Правда, не уверен, что оно переведено на русский.
DmitrySpb79
Спасибо, не знал что новое издание уже есть.