LINUX.ORG.RU

Свободное ПО в электронике - 2

 , , , ,


16

7

Этот скрин - продолжение старой темы Свободное ПО в электронике..

Скрин очередной раз демонстрирует использование СПО в области разработки электроники. На экране проект контроллера торгового автомата (Vending Machine Controller), работу по которому меня попросили сделать. Проект реальный, никакое не хобби, за это платятся деньги. Что это за автомат, я рассказать не могу, так как, наверное, нельзя пока что. :)

В мою задачу входит сделать контроллер, который подключается к хост-компьютеру по USB. Контроллер управляет матрицей моторов, задвижками, принимает сигналы с концевиков, оптических датчиков и энкодера. Также этот контроллер работает с купюро- и монетоприемником (на фотографии) по последовательному протоколу MDB (физически это «токовая петля»), а также осуществляет обмен с хост-компьютером по протоколу (пока что) Modbus RTU. На хост-компьютере будет стоять Debian GNU/Linux по моей инициативе (уже поставил). Он-то и взаимодействует с пользователем. Будет удаленный доступ к автомату, возможность менять не только ПО, но и прошивку контроллера дистанционно.

Разработка велась по привычке в gEDA (gschem, pcb). Очередной раз не рекомендую пользоваться gEDA людям со слабыми нервами. Вообще, у меня накопились претензии к этому пакету. Посмотрим на перспективу их преодоления потом, так как в процессе работы не было времени читать рассылку. :)

Какие еще интересности. Пишу прошивку и параллельно делаю симулятор автомата на базе проекта simavr. Это открытый симулятор микроконтроллеров семейства AVR, написанный на Си. Симулятор в итоге предоставляет библиотеку libsimavr.so Случано его нашел. По-моему, тут брал: http://gitorious.org/simavr. Однако с документацией там плохо, поэтому пришлось кучу времени потратить, чтобы понять, как он работает по нескольким примерам в examples и исходному коду. Я к нему прилепил симуляцию всей периферии: микросхемы драйверов моторов, драйверы для реле, датчики, движение лифта и стола в реальном времени, срабатывание концевиков, задвижек, оптических датчиков в реальном времени, микроволновая печь и прочее, симулировал протокол купюро- и монетоприемника, энкодер. Все это уже написал сам. Сейчас еще сижу и дорабатываю, хочу посмотреть на перспективу сделать автоматизированное тестирование прошивок. Пока же смотрю логи с временными отметками глазами, а надо бы эти логи как-то скриптами покромсать. Также эмулируется хост-компьютер, но сделаю так, чтобы реальное пользовательское приложение могло работать с моделью как с реальным автоматом. Зато к железу можно не прикасаться вообще. Причем доступна отладка через avr-gdb напрямую из симулятора, а еще в этом симуляторе есть генерация временных диаграмм в формате VCD, которые можно смотреть в gtkwave, но у меня эта возможность не задействована. Моделирую аварийные ситуации, ошибки протоколов.

Извините за качество фото - дома только древняя мыльница.

>>> Просмотр (2568x2056, 1251 Kb)

★★★★★

Проверено: beastie ()

Круто, зачёт, приятно было по читать.

А /me как ребёнок играется с контролёрами клавиатур включая им чайники, свет и прочую лабуду :)

blogdron ()

Действительно очень интересно.
Спасибо за желание и потраченное время, что бы тут это написать.

Spirit_of_Stallman ★★★ ()

Респект. Интересная у тебя работа.

Lennox ★★★★★ ()

Всё это круто, безусловно, но сколько времени на это было потрачено? СтОит ли оно того?

v0r0n ()

Круто. Респект вам.
Работе с электроникой сами обучались, или где-то вас обучали?

najlus ★★★★★ ()

Очередной раз не рекомендую пользоваться gEDA людям со слабыми нервами

А что с ней не так? С виду вроде вполне приличная. В своё время хотел заняться микроконтроллерами и выбор тогда пал на kicad, а эту я даже не отгуглил тогда.

Deleted ()

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

tranceGemini ★★ ()

Отличное описание, респект автору

Sharezil ()

Приятно видеть каждый раз, как СПО применяется в реале.

Chaser_Andrey ★★★★★ ()

Приятно было читать. Успехов в Вашем деле!

Asteronix ★★★ ()

Очередной раз не рекомендую пользоваться gEDA людям со слабыми нервами. Вообще, у меня накопились претензии к этому пакету.

Если не страшно, можно обновиться до нестабильной версии. В ней кое-что поправлено.

dinn ★★★★★ ()
Ответ на: комментарий от Deleted

А что с ней не так?

Попробуй создать компонент, например какую-нибудь МК'шку (не пользоваться же убожеством с выводами на 4 стороны и прописью всех возможных функций пинов из поделочных библиотек любителей). Начерти более-менее сложную схему с шинами. Повтори то же в кикаде... а потом воспользуйся нормальным инструментом, например диптрейсом.

Old_Hamster ★★★ ()
Ответ на: комментарий от Deleted

А что с ней не так? С виду вроде вполне приличная. В своё время хотел заняться микроконтроллерами и выбор тогда пал на kicad, а эту я даже не отгуглил тогда.

Главная проблема gEDA в очень слабой интеграции компонентов. Это исторически так сложилось, потому что проект не создавался как единое целое, а просто из разных мест собрали абсолютно разные программы разных авторов и стали пытаться их как-то заставить друг с другом работать. Но до сих пор нормальной интеграции нет. Какие-то всякие левые утилитки непонятной природы, костылики. Даже, прости господи, в PCAD 4.5 под DOS дела были ну гораздо лучше. Пример? Backward/Forward annotations (там зачаточный уровень только есть), отсутствие в PCB средств для того, чтобы удобно было двигать компоненты с дорожками. Очень неудобно руками разводить. Любое перемещение превращается в ад. Поэтому залог успеха - это удачное и продуманное размещение в самом начале. В PCB, например, можно делать чуточку больше, чем вынесено в его меню. Там есть командный интерфейс для бедных и есть неабор команд, о которых никто не узнает, пока не спросит. Вообще там очень много неинтуитивного от начала и до конца. Также я считаю, что PCB тормозной. Он очень медленно перерисовывает. Особенно если есть полигоны. Просто попробуй поработать.

Из плюсов - задокументированные простые форматы файлов, что позволяет всячески измываться скриптами. Я, например, на Emacs Lisp сделал написал крохотный генератор отпечатков корпусов нестандартных микросхем, потому что делать footprint с большим количеством ножек в PCB вручную - мрак. Еще в gEDA есть интеграция с Guile, что, конечно, хорошо, но только до недавнего времени этот Guile использовался только для конфигурации. Через него нельзя было пользоваться внутренними функциями. Читал, что вроде как теперь можно (всеми или не всеми - вопрос), но я не пробовал.

Если говорить в общем, то если есть цель дойти до конца не обращая внимания на неудобства, то практикой доказано, что это сделать можно. Вопрос только - насколько прямая дорожка будет в достижении цели. В gEDA она весьма кривая. Про KiCAD не знаю. Я пока не собираюсь прыгать из пакета в пакет.

Zubok ★★★★★ ()

Прекрасно, спасибо за пост.

Deleted ()
Ответ на: комментарий от v0r0n

Всё это круто, безусловно, но сколько времени на это было потрачено? СтОит ли оно того?

Времени потрачено много. Я засек. От начала разработки принципиальной схемы до готовой платы - месяц. Это по моим меркам долго. Это потому, что у меня по ходу возникали новые идейки и приходилось вносить изменения, а также общая неспешность. Меня же никто не гонит. :) Гораздо больше времени занимает программа.

Или ты имеешь в виду наличие на рынке подобных устройств? Если это, то я, разумеется, как честный человек сразу предложил сначала посмотреть, что есть на рынке, чтобы не разрабатывать. Да, есть похожие предложения, но по всем критериям не продходят. Во-первых, во всех решениях периферия, которая в этот проект не подходит, то есть все равно придется делать какие-то платы. Во-вторых, было требование, чтобы был полный контроль над программой и железом. А вот этому требованию практически никто не удовлетворял. По железу были близки одни китайчата. Я написал им письмо, попросил выслать мне документацию. Они прислали только на дополнительный модуль, а на основную плату у них просто нет документации. А программы (SDK) все проприетарные - исходников не дадут. Я, конечно, могу по плате пальчиком поводить и понять, как ее программировать, но это моветон. В общем, быстрее оказалось свою сделать.

Zubok ★★★★★ ()
Ответ на: комментарий от najlus

Работе с электроникой сами обучались, или где-то вас обучали?

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

В универе понял то, что я еще ничего не знаю. Вот, например, величайшие вещи: ТОЭ, электрические машины, длинные линии, борьба с шумами, электромагнитная совместимость, центральное понятие, с которым у студента плохо всегда - внутреннее сопротивление, метрология, измерения, погрешности, цифровая фильтрация и вообще фильтры, АСУ. Долго все перчислять. Это малая часть. Я бы и до этого бы добрался когда-нибудь самостоятельно, но у меня не было вообще менторов в детстве - я бы слишком припозднился, а в универе пришлось так или иначе. Я думаю, что если ты увлечен чем-то, то можно и самостоятельно изучать. А если просто хочешь, чтобы научили и вели, то в ВУЗ надо идти, но и там тебе скажут: «учат на велосипеде медведей в цирке кататься, а вы пришли сюда учиться». Для практики все обычно доступно в магазинах, коллайдер здесь не нужен. :)

Zubok ★★★★★ ()
Последнее исправление: Zubok (всего исправлений: 1)
Ответ на: комментарий от Zubok

отсутствие в PCB средств для того, чтобы удобно было двигать компоненты с дорожками
на Emacs Lisp написал крохотный генератор отпечатков корпусов нестандартных микросхем

лицорука

От начала разработки принципиальной схемы до готовой платы - месяц.

Для примера: за неделю прошел путь от «а не собрать ли спектрометр?» до готового устройства (включая ПО для контроллера и ПК)
ЗЫ: может быть не стоит так фанатично относиться к СПО?

Old_Hamster ★★★ ()
Последнее исправление: Old_Hamster (всего исправлений: 1)
Ответ на: комментарий от Old_Hamster

Для примера: за неделю прошел путь от «а не собрать ли спектрометр?» до готового устройства (включая ПО для контроллера и ПК)

Неплохо бы пруф. А то как-то странно, что это так тихо прошло. Готов выложить результат и проектные файлы? Хотя проверить, сделал ли ты за неделю или за год, никак не получится. Я написал, что месяц - это долго. Я написал, почему месяц, а не неделя. Трассировку я быстро сделал. :)

А КД подготовил тоже за неделю? Прости, не поверю. А у меня КД подготовлено. Если что-то делать для себя, то можно делать как угодно, но только не в этом случае, когда потом в производство отдавать. ПО для контроллера тоже за неделю? Оно только включить-выключить делает? Да ты если даже захочешь, не напишешь тот софт, что у меня за неделю, ну это просто физически нереально! :)

ЗЫ: может быть не стоит так фанатично относиться к СПО?

Стоит.

Zubok ★★★★★ ()
Ответ на: комментарий от Zubok

КД

Прибор для внутренних нужд лаборатории, соответственно в КД смысла нет.

ПО для контроллера тоже за неделю?

За 2 дня: самодиагностика при включении, получение граничных частот с ПК, калибровка, собственно серия измерений, ДПХ (на Фурье не хватило ресурсов), сохранение результатов на флеш и отправка ПК. Оптика от мертвых приборов. В общем, ничего особенного.

Old_Hamster ★★★ ()
Ответ на: комментарий от Zubok

Круто. У меня от знакомства с МК (STM32F4) до попыток написать драйвер под оффтопик (UMDF + WinUSB) уже почти всё лето ушло... Сейчас вот сижу с USB стеком разбираюсь, а надо ещё в будущем и платку соорудить. Думаете можно надеяться что у меня получится профессионально этим заниматься в дальнейшем? А то чувствую себя слоупоком)

v0r0n ()
Ответ на: комментарий от Old_Hamster

Прибор для внутренних нужд лаборатории, соответственно в КД смысла нет.

Ну, ок. Ну а показать-то можешь? Твоя лаборатория? Фотографию платки, прибора.

Платки они разные бывают. Вон прежняя платка (которая по ссылке выше) - она простенькая на один день, но то, что стояло за ее разработкой - это не один день. Причем те проблемы, которые встали, а это - борьба с шумами и наводками, так и не победились до конца (посто разработка заброшена сейчас). Я могу сказать, что сделал что-то за день, но до этого был не один день обдумывания и экспериментов (было три абсолютно разные схемы - все проблемные). Причем аналогичная штуковина (типа фирменная) имела те же самые проблемы, поэтому я и делал свою, в итоге получив гораздо лучший результат, но все равно недостаточный.

За 2 дня: самодиагностика при включении, получение граничных частот с ПК, калибровка, собственно серия измерений, ДПХ (на Фурье не хватило ресурсов), сохранение результатов на флеш и отправка ПК. Оптика от мертвых приборов. В общем, ничего особенного.

Ну, никто не сможет проверить, что так все и было. Часто бывает, что уже наработки есть. Но если ты все сделал за два дня, то ты нереально крутой! :)

Zubok ★★★★★ ()
Последнее исправление: Zubok (всего исправлений: 1)
Ответ на: комментарий от Zubok

Охрана не поймет аспиранта, рвущегося в лабораторию в 10 вечера :) Показать не жалко... например, будущий автотитратор (с тыльной стороны мк и эмиттерный повторитель).

Old_Hamster ★★★ ()

Прекрасный скрин. Приятно видеть СПО в работе.

Igorrr ★★★★ ()

В прошивку то будет заложена функция любви к автору?
Ну, типа, чтоб автор горячие чебуреки из автомата без задействования монет получал?
:)
ЗЫ. Здорово!!!!!!!

vada ★★★★★ ()

А как у СПО в области электроники дела с верификацией? Я слышал, что если нужно разработать что-то, что работает на частотах порядка 100Mhz и выше, то ничего толкового не получится, т.к. надо проводить продвинутую верификацию (наводки там всякие) а СПО это пока не умеет.

rtvd ★★★★★ ()

Очередной раз не рекомендую пользоваться gEDA людям со слабыми нервами

Только KiCAD.

CYB3R ★★★★★ ()

Очередной раз не рекомендую пользоваться gEDA людям со слабыми нервами.

О, да! Я начал было делать в gEDA схему управления котлом. О, майн Гот! Потом все переделал заново в KiCad.

З.Ы. Ваш проект очень интересен - будем разбираться. В любом случае, большое спасибо!

void_ptr ★★★★ ()
Ответ на: комментарий от Zubok

Я, например, на Emacs Lisp сделал написал крохотный генератор отпечатков корпусов нестандартных микросхем

Язык, насколько я понимаю, не принципиален - я делал не Питоне.

void_ptr ★★★★ ()

Отличная история успеха! Мне казалось, что с gEDA никто реально ничего никогда не делал, игрушка, а не инструмент. Был приятно удивлен. Примите лучшие пожелания!

azorg ()
Ответ на: комментарий от rtvd

А как у СПО в области электроники дела с верификацией? Я слышал, что если нужно разработать что-то, что работает на частотах порядка 100Mhz и выше, то ничего толкового не получится, т.к. надо проводить продвинутую верификацию (наводки там всякие) а СПО это пока не умеет.

Смотря что ты разрабатываешь. Если тебе надо посчитать параметры линий передачи высокочастотного сигнала, то можно воспользоваться wcalc (включен в gEDA). Там есть несколько типовых моделей.

Свободной альтернативы ADS или Microwave Office, например, я не знаю. :) А какие альтернативы? Альтернатива - купить. Но таких денег ни у кого нет. Альтернатива альтернативе - спиратить. У большинства «пальцатых» на форумах установлена пиратка, и они всегда учат, что надо заюзать, чтобы было круто. Еще можно, наверное, поискать модели для Matlab/Octave. Но мне пока такие с такими тяжелыми случаями сталкиваться не приходилось.

Zubok ★★★★★ ()
Ответ на: комментарий от void_ptr

Язык, насколько я понимаю, не принципиален - я делал не Питоне.

Ага, не принципиален. Я схватился за первое, что было под рукой. Народ генераторы пишет и на Python, и на Perl.

Zubok ★★★★★ ()
Последнее исправление: Zubok (всего исправлений: 2)
Ответ на: комментарий от Zubok

А реально ли, например, разработать простенькую PCIE 2.0 плату? И есть ли где-нибудь инфа о том, как это делается при помощи gEDA и Co.?

rtvd ★★★★★ ()
Ответ на: комментарий от rtvd

А реально ли, например, разработать простенькую PCIE 2.0 плату? И есть ли где-нибудь инфа о том, как это делается при помощи gEDA и Co.?

Полагаю, что да. «Полагаю», потому что приходилось разрабатывать только полноразмерную плату PCI длиной 30 см в OrCAD (тогда в моей жизни еще не было ни Linux в качестве основного рабочего инструмента, ни тем более gEDA - 2000-й год). Но ничего из того, чего бы не было в gEDA, я не использовал. Выравнивал только пути для клоков и ставил согласующие сопротивления. Полагаю, что и с PCIE все будет ОК. Но есть ли где-то инфа или примеры, делал ли кто именно на gEDA подобное, я не знаю. И почему именно gEDA? Для начала можно любую историю успеха поискать. Мне только кажется, что не особо-то народ делает такие платы - вещь слишком узкоспециализированная.

Zubok ★★★★★ ()
Ответ на: комментарий от v0r0n

Думаете можно надеяться что у меня получится профессионально этим заниматься в дальнейшем? А то чувствую себя слоупоком)

Надежды нет только для мертвых. :)

На самом деле, нужна реальная и полезная задача, которую очень хочется сделать, показать, применить или начать реально выпускать, а не заниматься всем этим ради баловства. Я сейчас без задачи даже и не думаю с чем-то разбираться. Без задачи можно слоупочить, потому что как бы нет вынуждающей силы завершить процесс.

И еще. Задача первична, а с чем надо разбираться - это вторично. То есть не должно быть так, что ты разобрался со своим STM32F4, а потом начал искать, куда бы его впихнуть. Все должно быть наоборот. Причем может так оказаться, что твоя задачка вместо STM32F4 потребует два резистора и конденсатор. :)

Zubok ★★★★★ ()
Ответ на: комментарий от rtvd

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

Zubok ★★★★★ ()
Ответ на: комментарий от v0r0n

с USB стеком разбираюсь... уже почти всё лето ушло

Что мешает использовать готовые библиотеки? Или это чисто академический интерес?

чувствую себя слоупоком

Если не борец за свободку, то попробуй использовать более приспособленные для разработки инструменты. Тут конечно есть свои недостатки: на ЛОРе не будет охов/вздохов от фотографии девайса... зато устройство будет существовать физически и прошивка, с ненулевой вероятностью, отработает как задумывалось с первого раза.

Old_Hamster ★★★ ()
Ответ на: комментарий от Zubok

Задача передо мной стоит вполне чёткая, необходимо получать данные с восьми датчиков, разрядностью >= 14 бит и с периодом в <= 500 мкс, затем передавать эти данные на ПК для дальнейшей обработки.

v0r0n ()
Ответ на: комментарий от Old_Hamster

Инструменты жёстко обговорены и они не СПО, к сожалению.

v0r0n ()
Ответ на: комментарий от v0r0n

получать данные с восьми датчиков, разрядностью >= 14 бит и с периодом в <= 500 мкс, затем передавать эти данные на ПК для дальнейшей обработки

На выходе датчика цифровой сигнал или используете АЦП? Требуется ли обработка данных на устройстве? Протокол обмена с ПК входит в ТЗ или выбираете самостоятельно? Заказчик хочет именно на STM32 или допускаются варианты?

Old_Hamster ★★★ ()
Последнее исправление: Old_Hamster (всего исправлений: 1)
Ответ на: комментарий от Old_Hamster

Реализация датчиков также входит в мои задачи. Обработки данных на устройстве не требуется, она будет производиться на ПК. Протокол в ТЗ не оговорён, но необходимо чтобы устройство подключалось по USB, вообще планирую использовать HID, а WinUSB+UMDF для Bulk канала - это меня что-то не туда понесло... STM32 выбрал я сам.

v0r0n ()
Ответ на: комментарий от v0r0n

АЦП у вас все равно внешний, так? Тогда вместо stm32 берем дешевую atmeg'у (48pa, например) + usb2uart. За день-два чертим схему + пара дней на firmware + два-три дня на трассировку... и у вас в руках готовое устройство. ПО для ПК напишите по живой железяке.

Old_Hamster ★★★ ()
Ответ на: комментарий от Old_Hamster

Согласен, так было б быстрее. Хочется разобраться поподробнее с stm32 и USB, наверное в этом-то моя ошибка и кроется)

v0r0n ()
Ответ на: комментарий от Old_Hamster

За день-два чертим схему + пара дней на firmware + два-три дня на трассировку... и у вас в руках готовое устройство. ПО для ПК напишите по живой железяке.

Такие сроки реальны, если человек не первый раз с этим сталкивается, если у него есть все необходимые библиотеки и знание, куда сразу нажимать, чтобы было как надо. В реале же будет гораздо дольше. И даже такие сроки реальны, если он делает для себя, для внутренних нужд, где не страшно допустить ошибку, где можно сделать платку ЛУТом, не готовить сопровидиловку и не ждать изделие с производства почти неделю. А если он (что не ясно, в общем-то, из рассказа) делает какому-то заказчику, то, пардон, каждую закорючку придется выверять и программу делать хорошо и красиво. И по сто итераций в производстве платы тоже не поделаешь, потому что деньги заказчика, а он спросит: «Какого хрена ты сто раз платы делаешь за мое бабло?».

Когда ты отдаешь свой код или платы заказчику, то сразу встает вопрос о репутации, потому что могут кого-то попросить сделать аудит того, что ты им отдал (меня один раз попросили, но я отказался, так как считаю это некрасивым). Все ли я им отдал? Не обманул ли? А хорошо ли сделал? И никто не прикроет. Обычно, да, работющее изделие или программу можно быстро сделать, на коленке. Но продукт на заказ, учитывающий все мелочи так быстро не получается. Увы и ах. Хотя вот я стараюсь оптимизировать процессы, чтобы и хорошо, и не долго. Вообще, конечно, надо делать быстрее, чем я делаю. :)

Zubok ★★★★★ ()

Респект... жаль по тегам не высветилось.

вопрос , Вы пробовали проект simulavr .... я его пытался пускать, но тривильного способа изображать нажатие кнопки в simulavr нет и документация дырявая. Хотя судя по вашим описаниям это один и тот же проект.

DR_SL ★★★★★ ()
Ответ на: комментарий от DR_SL

вопрос , Вы пробовали проект simulavr .... я его пытался пускать, но тривильного способа изображать нажатие кнопки в simulavr нет и документация дырявая. Хотя судя по вашим описаниям это один и тот же проект.

Не-а, это разные проекты! Дело в том, что я сначала делал схему на ATmega1280, но потом понял, что он мне слишком избыточен. А simulavr вроде как не поддерживает его. Поэтому я рванул искать - и вот нашел simavr. Только в Debian simavr не оказалось - я его сам опакетил. По simavr могу подсказать, если что.

Zubok ★★★★★ ()
Последнее исправление: Zubok (всего исправлений: 1)
Ответ на: комментарий от Zubok

А как же devboard и разного рода макетки, неужели не помогают? У меня их скопилось куча практически на все случаи. ИМХО очень удобно собрать прототип «из кирпичиков» и тут же отладить код.

Old_Hamster ★★★ ()
Ответ на: комментарий от Old_Hamster

А как же devboard и разного рода макетки, неужели не помогают?

На мой взгляд, микроконтроллеры и схемы на них не особо нуждаются в макетировании. Они как правило сразу работают и проблем не вызывают. Когда-то я макетил. Но очень давно, столкнулся с людьми, которые на серьезном производстве работали. Они ничего не макетили - сразу трассировку делали без макетирования. Это, типа, лишний этап. Про ошибки в плате я имел в виду, что надо все проверять по размерам, чтобы не получилось, что из-за маленькиой фитюлины, которая не влезает, не пришлось бы все переделывать. А еще надо тщательно (даже у библиотечных компонентов) проверить диаметры отверстий. Я обнаружил, например, что у клеммников в чужих библиотеках неправильные диаметры под сверло. Это значит, что они бы в итоге просто бы не влезли. И еще ошибки подобного рода нашел. И свои компоненты надо проверять: и в символы, и футпринты. В общем, я стараюсь избегать макетирования. Да и с сегодняшними корпусами особо не помакетируешь. :)

У меня их скопилось куча практически на все случаи. ИМХО очень удобно собрать прототип «из кирпичиков» и тут же отладить код.

А прошивку я писал еще до железа. Я же симулятор сделал. Написал большую часть программы, погонял на симуляторе, а когда железо сделал и запаял - программа отлично заработала на нем с первого раза, вся периферия и вся коммуникация отработала: и с компом, и с деньгоприемниками. Вообще, симуляция - это добро большое - SPICE и подобное.

Zubok ★★★★★ ()
Последнее исправление: Zubok (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.