Atmel R.I.P.

Приплыли, господа. Компании Atmel больше нет. Она была продана по частям. Микропроцессорное отделение выкупила компания Microchip (та самая которая PIC делает), а отдел Flash памяти продано компании On Semiconductors Что теперь будет с архитектурой AVR неизвестно. Несколько лет то еще она, конечно, просуществует, но вот что дальше? У Микрочипа есть свои контроллеры и своя архитектура которая занимает внушительный процент рынка. Не вижу смысла им дробить силы на разработку двух разных архитектур. Возможно AVR будет свернуто и все мощности брошены на PIC, а возможно возникнет третья архитектура, этакий гибрид, обьединяющий обе платформы.

Может оно и к лучшему, но вот только мне как то сцыкотно, если зарубят AVR то я даже не знаю куда подрываться, т.к. PIC мне не нравится категорически.

Заряженые MSC-51 от SiLab или Philips?
MSP430?
PSOC или HC08?

В общем, я в глубоких раздумьях. У кого какие соображения?

UPD:
Акционеры Атмела покурили, подумали и написали Микрочипу ответ с количеством стеба сравнимый  с письмом «Турецкому султану». Само письмо висело на главной странице Атмела с неделю. В общем, основной смысл был такой — Хер вам! Родина Атмел не продается! Так что все ок. Выдыхаем!

73 thoughts on “Atmel R.I.P.”

  1. Я думаю, ничего страшного. Уже разработанные модели как той, так и другой, будут продолжать выпускать до тех пор, пока сушествует устойчивый спрос на них, но и после этого складские запасы оптовиков еще несколько лет будут подпитывать рынок. Например, сейчас еще нет проблем найти 1200 или 2313, хоть они и давно уже не выпускаются. У меня, например, основных разновидностей Атмелов от 1200 и 2051 до Меги 128 имеется в запасе от 5 до 20 штук каждого, на мой век хватит. Кому сильно надо — еще есть время запастись. МикроЧипу тоже нет особого смысла резко менять номенклатуру, кроме того, как правило, при прекращении выпуска устаревших моделей у них всегда есть полноценная замена из новых, полностью совместимая аппаратно, и во многом программно, только с расширенными возможностями. У них даже расположение служебных регистров почти всегда совпадает, только в новых задействуются зарезервированные ранее биты и байты. А вот с новыми разработками теперь будет интересней. Поскольку теперь не надо будет платить за чужие патенты, весьма заманчиво МикроЧипу использовать кое-какие удачные решения от Атмела. Поживем — увидим. Хотя думаю, в микросхемах того уровня, что использую я, мало что изменится, а что мне надо, так там и так есть. Монстры же с парой сотен ног мне не нужны, в домашних условиях мне с ними делать нечего, да и глаза уже не те. Так что лично мне пофигу. Что меня интересовало, я до конца жизни запас.

  2. Недавно разобрал пару польских дозвонщиков, там 16f какой-то многолапый. Сунул в программатор — шьется/читается. Вот так наверно и придется добывать любимые чипы лет через 5 :) А пока действительно бояться нечего — запас огромен на складах, производство сразу не свернут, а к тому времени может что изменится.

  3. Все нормально народ. Долой атмел с ее корявыми контроллерами. Мы однозначно пришли в выводу что они обладают достаточно скудными возжностями. Попробуйте сделать ШИМ на 100KHz на тех же атмегах… Хотя может быть я конечно погорячился, для некоторых задач их контроллеры годятся, но ничего серьезного на них не соберешь. НО! Выход есть! Тов. DI HALT настоятельно советую посмотреть в сторону ARM (в частности контроллеры от Philips). Так что без паники, все идет своим чередом. Слабые да покинут сцену ;)

    1. Среди 8ми разрядных контроллеров по сочетанию фарш/цена равных АВР не было. А АРМ это совсем из другой оперы. ТАк и знал, что сейчас набегут и будут бить себя пяткой в грудь и кричать АРМ, арм это отдельный класс под более массивные задачи, нежели дрыганье ножками.

      1. Ну, многие PICи, и довольно неплохие, в последние годы стабильно идут меньше доллара за штуку. Другое дело, сколько у нас за них дерут… Хотя у нас, в Алма-ате, и самый дешевый из Атмелов — 2051, стоит чуть меньше пары баксов, а любая из Мег — не меньше 6 — 8, а некоторые и под 20… Система команд AVR более удобна для тех, кто начинал с INTELовских процессоров, (например, я в свое время без проблем освоил после I8080 — MCS48), новичку же гораздо проще освоить 35 команд PIC, чем запоминать больше сотни команд, многие из которых делают то же самое, что и другие, отличаясь лишь способом адресации. Да еще и помнить, что многие из команд работают только с определенными группами регистров, и не работают с другими, что порождает на первых порах массу ошибок. И периферии в PIC ничуть не меньше. АЦП чуть ли не в каждом контроллере, даже в 6-ногих, также и ШИМ, если нет АЦП — так компараторы практически в каждом, как и USART, (гораздо более многорежимный, чем Атмеловский UART). Большинство команд в AVR выполняется за 1такт, а в PIC — за 4. Но попробуйте, к примеру, сделать скоростной счетчик импульсов или частотомер. Без дополнительных внешних делителей на AVR упретесь в 1-2MHz, а любой PIC, даже старый или 4-мегагерцовый, без проблем считает внешний сигнал до 70-80! В AVR можно пихать данные в стек. А если задуматься: а зачем? Ведь это всего лишь наследие тех времен, когда регистров общего назначения было всего 4 (ЧЕТЫРЕ !!!) пары, и на все, естественно, не хватало, да еще система прерываний в нормальных процессорах была приоритетной и 8-уровневой. Вот тогда — то и был нужен большой стек и возможность сохранять в нем регистры. Сейчас же, при плоской одноранговой модели прерываний, это совершенно излишне. Регистров общего назначения десятки, да и еще и ОЗУ на борту (те же регистры, только немного менее доступные для некоторых команд), так проще каждой задаче использовать свои регистры, не перекрываясь, а сохранять только аккумулятор и флаги состояния, что и делается в PICах. Мало 8 уровней вложения? а нафига больше? Прерывания не перебиваются, а в нормальной, структурированной программе вложенных вызовов функции внутри функции должно быть как можно меньше. Лично мне 8 уровней всегда хватало, а отследить их количество с такой простой системой прерываний совсем несложно. Даже когда-то в сложных, многозадачных программах реального времени, да еще с часами, календарем и кучей программных таймеров на прерывании таймера, мне хватало 6-7вложений.
        Контроллеры других фирм — сколько я к ним не присматривался, все они какие-то специфичные, специализированные под конкретные сферы применения, с неуклюжей системой команд, корявой документацией, несбалансированным, однобоким набором периферии… Нет той прозрачности, стройности и универсальности, как у PIC и AVR. То, что удобно для контроля модемного пула или кассового аппарата, не всегда удобно для того же частотомера или еще чего. Не зря они пользуются популярностью только у разработчиков определенных групп оборудования.
        Еще мне в PIC нравится большой набор однотипных моделей: к примеру, среди PIC16F87x есть с корпусом 28 и 40 ног, c АЦП и без него, с нормальной и удвоенной памятью, разными предельными тактовыми частотами. Не хватило ресурсов одного — ставь другой, например, с большей памятью, или вообще более современный, но совместимый программно и аппаратно. У Атмел выбор не так велик.
        Можно, например, вместо Меги 16 поставить 32, а вот вместо 32-64 или Меги 64 — 128, уже фиг вам, — корпуса — то все разные! Так что предпочтение Атмел — это скорее привычка. Мне, как старому INTELовцу, AVR вроде должны быть ближе, но, если чужие разработки я повторяю, часто с изменениями, и на AVR и на PIC, то в чисто своих, сделанных «с нуля», в последнее время все больше тяготею к PIC. Тем более, что для них есть масса прекрасных эмуляторов, и компиляторов, дающих компактный код. С прошивкой тоже никогда проблем не было, хоть и использую простейшие программаторы, типа JDM с IC Prog. (даже сейчас, под XP).

        1. А у машины Тьюринга всего 4 команды. На ней легче программировать? Чем больше команд, тем проще писать. Под какждую операцию своя команда. Чем пытаться в том же пике какую нибудь операцию пытаться склеить из последовательности команд. В чем мне не нравится AVR ассемблер так это то, что там наплодили мнемоник, под разную адресацию. Сделали бы как на MSC51 и не парились (имхо самый рулевый ассемблер). Или как на Z80. По поводу того, что регистры ниже 16 неполноценные, так это надо просто один раз запомнить. Один фиг компилятор не пропустит. А такие ошибки фигня полная, обходятся сразу же.

          По поводу УАРТа атмеловского. А ты не путаешь старый UART (1200 серия авр) с USARTом который наворочен по самое немогу?

          По поводу стека эт ты зря. Я пишу себе компактные модули на асме и потом просто их подключаю, а чтобы не задумываться о том что регистры похерятся я при вызове их тупо пихаю в стек и достаю обратно. И меня мало волнует что регистров у меня не хватит. Так что без стека ваще не в кайф.

          Частотоделитель пиков это да, круто. Но задача не столь частая.

          По поводу расширения… дак давно уже есть. В новых сериях. Мега48, Мега88, мега168, Мега8 полностью совместимы по ногам и общей структуре.

        2. Не могу ответить на такой наезд на атмел! Несмотря на то, что сам много лет программировал PIC, да и на работе используем пока только пики, атмел гораздо удобнее для написания больших проектов. Более человечная архитектура, более прямые компиляторы, нормальный стек (между прочим — не наследие каких-то там времен, а механизм передачи параметров и хранения временных переменных!), нормальные прерывания… писать под PIC сишный код, разбитый на несколько файлов, каждый из которых испольузет прерывания — мучение! Молчу про серию пиков 18F… — столько глюков (документированных в errata!) — программировать страшно! Жаль, если атмел действительно перестанут производить… хотя и действительно пора переходить на ARM.

    2. Да ну тебя с такими коментариями, на сколько я помню максимальная частота для шима для атмеги 78кГц (режим фаст-шим, кристалл 20МГц).
      Ничего серьезного, да ну брось, 16 мега — 3 таймера, 4 шим канала, 8 каналов АЦП, УАРТ, СПИ, И2Ц, ARM же как правило требует всего вокруг, флеш, АЦП и тд, другое дело это немного другой калибр.

      Честно говоря по мне лучше бы ПИК накрылся тряпочкой и сдох чем АВР, хотя бы даже по тому что у АВР внутренняя архитектура элегантнее чтоль, до сих пор помню как в универе нам микроконтроллеры на примере ПИКа преподовали, а я уже разрабатывал на АВР, и как меня воротило от того как там внутри все через жопу.

      И да, самое интересное — у нас (литва) АВР дешевле ПИК, 2313 стоит ~6lt(60руб) PIC16F84A ~11lt(110руб), Атмега16 100руб, PIC16F628 ~150руб.

      Что касается архитектур то наиболее привлекательным я считаю МСП430 и фрискейл ХЦ08, другое дело у большинства из них нормальный тулсет будет платным в отличии от АВР, еще лучше конечно АВР Хмега и АВР32, но тут могут быть ньюансы…

      Остается молиться своему электронному божеству чтоб микрочип не купил атмел…

      1. Мне у фирскаля нравятся контроллеры с итегрированным силовым трехфазным мостом на 4ампера и готовым аппаратным драйвером 3х фазного двигателя.

        1. Так это как раз типичный пример узкой специализации. Что на таком сделаешь, например, в слаботочной измерительной технике?
          Проще на универсальный контроллер повесить силовой драйвер и не искать годами такого монстра ради единичной разработки.

          1. Узкая специализация, но ядро стандартное. Корпус мультиватт под мощный радиатор. Но если есть, то почему бы не взять его? Проще монтаж, все уже сделано и придумано. Внутри готовые алгоритмы, вроде пида и прочего. На уровне периферии.

            1. Это если тебе они нужны. А если я с силовым оборудованием почти не работаю, нафига мне держать под руками всю спец номенклатуру? А если раз в 5 лет срочно понадобятся, так пока его найдешь да добудешь, за это время пять раз на универсальном сделаешь. Как резисторы из карандаша. Мало ли чего в мире выпускают. Да и нехорошо это как-то:
              совмещать силовые цепи и контроллер на одном кристалле или в одном корпусе. Помехи, да и с точки зрения безопасности при пробое… Уж лучше я разделю силовую и управляющую части, да еще и оптронами развяжу, зато буду спать спокойно…

  4. Как мне кажется, слухи о смерти Атмела сильно преувеличены. Насколько я понимаю, им сунули предложение о продаже. Это не означает, что их уже купили — эвона, недавно Майкрософт пытался купить Яху за 45 миллиардов — и их послали куда подальше. Надеюсь, здесь получится так же. Так что рано списывать Атмел со счетов!

    Лично я в свои коммерческие проекты как закладывал, так и буду закладывать их продукцию. Использую их АРМы, АВРы и память. Более человеческого лица пока еще ни у кого не встречал. Это тебе не какие-нибудь АД с дурацкими ошибками и недоговоренностями в даташитах и jtag-эмуляторами по 4 штуки баксов…

    1. Дак предложние, как говорят, очень уж жирное.

      Не, контроллеры они наверняка оставят — куча народу по всему миру их уже в новые проекты заложило. Хуже, что новых моделей может не быть.

      1. Жирное — это для нас. А для них оно может таким и не показаться. Не просто так ведь в сообщении о том, что «было письмо, читали», Атмел упомянул индексы Насдак и для Микрочипа и для Он. Будут считать и рядиться что выгоднее — делать самим и получать много, или нихрена не делать, но и получать меньше…

        Новых моделей не быть — тоже вряд ли. Только что хмегу запулили, авр32 тоже еще никто толком не щупал. В принципе, если подумать, а так ли они нужны — новые восьмибитки? Пускай лучше старые дошлифуют как следует.

      2. А чего не хватает в старых, ради чего городить новые? Больше памяти, выше частоту? Так достаточно перейти на более высокое разрешение, и все получишь автоматом. По сравнению с «большими» процессорами тут огромный резерв, количество элементов на кристалле на несколько порядков меньше. USB в старших моделях давно есть. Встроенные передатчики тоже. Что еще там осталось? Встроенный WEB, GPS, WiFi, Fire Wire? А нужны ли они? Кому нужны, проще к универсальному контроллеру спецчип добавить, и не морочить голову. Даже то, что уже наклепали, еще осваивать и осваивать, а многим и вообще не нужно. Особенно непрофессионалам. Простой пример: во многих американских светофорах до недавних пор еще использовали Intel4004 или Intel4040, разработанные еще в 1971г. А что им? Мигают и мигают. Не будешь же заново разрабатывать всю технику заново каждый месяц только из за того, что появился «Процессор покруче». Это только наш, постсоветский феномен: бежать в магазин за новым процессором или срочно менять систему не потому, что не хватало возможностей старого, а просто потому, что появился «Круче». Или обязательно «Разгонять» процессор, который реально загружен всего на 7-8%… Когда попадает на глаза американская компьютерная статистика, оказывается, что у них еще несколько процентов пользователей еще на WIN 3.1 работают. А что, им письма писать хватает…

        1. Тем что новые становятся лучше и удобней. Я бы сейчас уже не стал брать мегу8, а взял мегу 88. Там больше возможностей, проще код писать будет. При том, что она дешевле.

          1. Дешевле у производителя. А у нас в магазинах обычно чем новее, тем дороже. А возможности имеют смысл, если они используются. Если, к примеру, в контроллере вместо 3 таймеров окажется 30, а прерывания останутся одноуровневыми, я уж лучше на одном таймере сделаю 30 программных таймеров, чем разбираться, какой прервал.
            Что проще код писать — когда как. К примеру,если вместо программного UART использовать аппаратный — проще. А когда на одной ноге порта вместо 2-3 будет, к примеру, 5 вариантов ее использования, что приведет к выставлению битиков для нее еще в 2-3 регистрах, то вряд ли. Тем более, что одновременно все эти возможности все равно не используешь, — нога то одна… В общем, я за разумную достаточность. Незачем постоянно иметь на кристалле то, что никогда не используешь. А понадобится, — проще взять другой кристалл, где это есть. Выбор сейчас есть, не то, что тогда, когда приходилось выбирать между I8080 и Z80, который еще надо было найти…

            1. Ну если применительно к АВР, то с добавлением источников прерываний добавляются и вектора. И не надо гадать кто там что вызвал — это чисто пиковский идиотизм.

              Ну и что что на ноге 5 вариантов использования? По дефолту все выключено, а инициализируешь уже исходя из схемы. Я еще ни разу не запутался.

              По поводу того, что незачем иметь то, что никогда не используешь… Хе, есть же понятие номенклатуры. Особенно это на гос предприятиях развито. Когда предпочитают делать, громоздко и через жопу, но на своей номенклатуре изделий. Не увеличивая число разных единицы на складе. Вместо того, чтобы заказать и делать на микросхеме.

              Вот есть, например, фирма делающая разную хрень. Им проще заказать ОДИН тип контроллеров, но фаршированный донельзя, чем ДОХРЕНА специализированных контроллеров. Я, когда работал, видел как втыкали Мегу8535 (40 ног) туда где хватило бы Тини2313 (20 ног и дешевле в 3 раза) остальные ноги просто висели. Зачем? А чтобы не плодить номенклатуру. Им проще заказать 1000 8535тых, чем 300 таких, 300 таких и еще 400 таких. Так

              1. Ну, у массового производства, тем более на крупных предприятиях, с их неповоротливой системой снабжения, когда план закупок формируется и утверждается за 2-3 года вперед, это вполне обьяснимо. Другое дело — самодельщики, паяющие для себя или иногда выполняющие единичные заказы, каких здесь наверное большинство. Надо брать пример с китайцев. Завалили наши рынки дешевой продукцией. Только подумаешь чего-нибудь сделать, а на барахолке оно уже есть. И главное — дешево, и достаточно уже качественно, (в большинстве), сейчас у них с этим строго, за некачественный товар штрафуют и лишают лицензии. Понавезли всевозможных мультиметров, термометров, гигрометров, электронных весов, частотомеров до 1500мгц и размером меньше пачки сигарет, маленькие цифровые вольтметры и амперметры со спичечный коробок для монтажа на щит, цифровые термометры и терморегуляторы, от комнатных до 1500 градусов, радиозвонки, радиовыключатели для люстр, многоканальные системы с брелками, телекамеры, системы сигнализации, в общем, только на перечисление несколько страниц уйдет. И уровень технологии довольно высок, многие вещи мне не повторить. Я пробовал несколько раз посчитать, получается, что стоимость входящих в них деталей превышает стоимость изделия, даже без учета затрат на производство. По нашим ценам, конечно. А бывшие республики Союза превратились в сырьевые придатки и рынки сбыта для других стран. Дожили…

    1. А я могу сказать, чем. Сокращенная система команд не очень наглядна при начальном освоении. Всего лишь основной набор операций с битами, байтами и регистрами. Но ведь процессоры (любые!) вообще работают с «0» и «1»! Это только люди придумали цифры, символы, байты, файлы… И ничего, музыка играет, фильмы показывают, игрушки бегают… Попробуйте писать на языке высокого уровня — C, Паскале, Бэйсике, которые не очень зависят от применяемого процессора. А порты, таймеры, I2C, ШИМ, АЦП и прочее есть и у PIC, и у AVR. Напишите:
      USART_Init(9600); и откомпилируете для PIC — МикроПаскалем, для Atmel — МикроПаскалем для AVR, и будет вам щастье, и последовательный интерфейс будет работать на 9600 бод, и неприязнь к PICам исчезнет, будете одинаково работать и на том, и на другом типе контроллеров, не задумываясь, какие битики куда сувать. А со временем и с этим разберетесь, если захотите.

  5. Так и знал, что холи вары начнутся. А ведь я тоже с PIC’ов начинал… ещё нифига не понимал, но почему-то не понравилось. А AVR’ки как-то быстро дались.

  6. Ну откуда паника? «Компании Atmel больше нет. Она была продана по частям.»… во-первых компания есть, во-вторых не продана еще, и вряд ли будет. Я на неделе почти ежедневно общался с FAE’шниками Atmel, и никто из них особенно не парится на эту тему. Тем более, что первая реакция Atmel была в духе «хрен вам, ни за что и никогда» — хотя официальные заявления, ясное дело, более расплывчатые.

  7. Пока, я думаю, хоронить Atmel рановато, но если это все-же случится, будет жаль..
    Но все течет, все изменяется. Думаю ниша 8-битных контроллеров не опустеет. Компании, что побаивались атмела, выйдут из тени, а если будет спрос — достаточно быстро выдадут «на гора» свои разработки…
    Вобщем, поживем-увидим!

    1. Свято место пусто не будет. Если AVR с рынка исчезнут, а спрос останется, китайцы мигом наладят производство и забьют эту нишу. Они и посложнее вещи давно штампуют.

  8. Ыыы… перечитал пресс-релиз Атмел:

    http://www.atmel.com/dyn/corporate/view_detail.asp?ref=&FileName=Micro_ON_10_2.html&SEC_NAME=

    Заголовок:

    «Atmel to Review Unsolicited Proposal from Microchip and ON Semiconductor»

    Unsolicited еще кстати email бывает — проще называется спам :) Короче в Атмел это предложение встречено весьма прохладно.

  9. Я два года работал с Атмелами, потом перешел на MSP 430.
    Потребляют мало, огромный функционал, несложный ассемблер, высокие частоты работы, цена небольшая.

    Нисколько не жалею и вам, DI HALT, советую.

    ПИКИ смотрел перед выбором — тоже не понравились ;-)

  10. Я честно никогда не понимал холиваров. Вобще. Хотя сам не люблю многие вещи, будь то придурок на БМВ или манная каша, но вот просто так с нифига ненавидеть фирму/брэнд — никогда не понимал. По-моему, спецу должно быть пофиг, на чем сидеть — на ПИКе, АВРе ли на жопе. Как бы, суть контроллеров одна. Окей, ассемблеры могут отличатся, разные архитектуры, навороты и прочее — но все лишь дело привычки. МНе казалось, что Си для моего понимания крайне сложен и сидел в своем паскале счастливый. В универе начался Си — оп, ничего не попишешь, пришлось осваивать. Легко и просто. Сам сижу на ПИКе тупо потому, что мне в магазе на вопрос о микроконтроллерах сказали — мальчик, возьми 16ф84а, тебе один хрен с нуля начинать, а он щас со скидкой. Вот как-то и повелось. Правда у них малость парит необходимость программатора с внешним питанием — ну да пофиг, переживем.

    1. «Правда у них малость парит необходимость программатора с внешним питанием — ну да пофиг, переживем.»
      Ээээ… Давным-давно использую USB программатор, без всякого «внешнего питания».

  11. начинал с ПИКа и работал с ним 5 лет, потом решил освоить Атмел (долго решался).
    когда освоил пожалел что не начал раньше. при одинаковой цене двух чипов от ПИКа и Атмела — Атмел в 4 раза круче! 4раза быстрее! 4раза больше памяти! больше портов и возможностей! программирование Атмела на асме намного проще ПИКа! среда для программирования АВРстудия луше чем у микрочипа ихний МПЛАБ. кароче все лучше и удобеней. у же 3 года работаю с атмелом и очень доволен, но есть несколько проектов где я заложился в ПИК — 10F200, 16F630 например… но это чисто из-за ихней цены и поставленной задачи. будет плохо если атмел исчезнет. я переживаю за эту кантору. вообще должна быть конкуренци атмел — пик. интел — амд. нвидиа — ати. тогда идет развитие и всем от этого только лучше. особенно конечным пользователям и нам радиолюбителям.

    1. Все относительно, смотря что с чем сравнивать. «4 раза круче! 4раза быстрее!» — достаточно взять PIC с большей частотой или памятью, выбор велик. Есть еще несколько нюансов, о которых многие не догадываются. Пишут: У Атмел — команда за 1 такт, у PIC — за 4. Но это только за счет работы внутреннего конвейера! Да, AVR в следующем такте НАЧНЕТ обрабатывать следующую команду (если не было перехода!). Но на самом — то деле предыдущая будет продолжать обрабатываться еще несколько тактов! А основатель семейства — Intel 8051 — вообще выполнял команды за 12 тактов. Остальное в AVR сделал конвейер и доработка ядра. Но при наличии большого количества переходов (при разбивке программы на небольшие кусочки, c большим количеством вложений и интенсивной работой стека, как это любит делать Си), скорость работы реальной программы резко падает.
      А самое главное — оптимизация алгоритма (в голове, а не галочками компилятора!) может иногда дать выигрыш в быстродействии или обьеме памяти в несколько раз!
      Или просто смена компилятора. Недавно тут в одной из тем пробовали компилировать простенький пример с выводом на индикатор. Разброс получился офигенный, от менее 300байт до нескольких килобайт! На пару строк программы! Причем в самом большом пролете оказались самые «Крутые» компиляторы. Я попробовал компилировать на МикроПаскале, МикроБэйсике и МикроСи, как для PIC, так и для AVR. Во всех случаях получилось меньше килобайта, и для PIC — не больше, чем для AVR. МикроСи на PIC вообще дал код программы меньше 300 байт.
      Да и вообще какой смысл сравнивать максимальную производительность микропроцессора, если он загружен лишь частично, а большую часть времени вообще крутится вхолостую? Если ее хватает для обработки критических по быстродействию мест, — хорошо, не хватает — меняй алгоритм, или поддержи аппаратными решениями, — это часто дает эффект больше, чем просто смена процессора. А затормозить неудачными решениями можно что угодно. Простой пример: принятые байты с COM порта в MSDOS и даже в WIN 98 я читал практически мгновенно, а в WIN XP за время обработки системой прерывания по приему в буфере успевает накопиться уже 5-6 байт, и это на скорости 9600 бод, на компьютере с двух ядерником на 3000 МГц! И это со специально написанными драйверами, с отдельно организованными потоками! Если же читать порт, как файл, (основной вариант, рекомендуемый Мелкософтом), то вообще жуть! Вот вам пример применения процессора, который делает порядка 20 миллиардов операций в секунду. А еще 25 лет назад я на 8080 с его 400тыс. оп/сек свободно обрабатывал одновременно несколько таких портов, причем не только на уровне байт, но и измеряя смещение битовых переходов с точностью до 1%…

  12. у меня боьшой опыт работы с пиками и с атмелом тоже. причем пик я не забросил насовсем и иногда его всетаки использую. насчет взять пик с высокой частотой… хм.
    можно и хмегу взять или силабовские кантроли. смысл не в этом, а в том что при стоимости, например, атмеги8 при цене 1.0$ и пика16Ф628А при цене 1.6$ — атмел очень выгодно оличается!

    у мегти: 8K флэша, 512 еепрома, 1К 0ЗУ, АЦП, 23порта, 16мипсов
    а у пика: 2K флэша, 128 еепрома, 224б 0ЗУ, нет, 16портов, 5мипсов

    вау!! даже не в 4раза, а в 7раз!!

    пик16Ф628А должен стоить при таком раскладе 0.4$ — вот тогда это хороший МК!

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

    ПИК хороший МК, но при той цене на них — АТМЕЛ в переди. у меня есть пару друзей, которые тоже начинали с пика, потом перешли на АТМЕЛ и перекрестились.. тьфу. пик- отстой.

    насчет принятие по компорту на ПС под ДОСОМ или ХП, епт… так под ДОСОМ у тебя проц только и занимался тем что компорт сканил — считай пик на 400мгц. многие старые программаторы, для автодиагностики сканера или еще чего требуют ДОСА или вин9х. там прямой доступ к портам(можно таймиги выставить как угодно). в ХП все подругому и частота твоего проца ваще не играет — хоть 100тысч.гигагерц.

  13. Сравнивать Мегу8 с PIC16F628 — не совсем корректно, слишком уж разные весовые категории. Для PIC16F628 — ближе 2313, хоть у того и на 2 ноги больше. А для Меги 8 — более правильно сравнивать с PIC16F876. Те же 28 ног, 8K х 14бит флэша, 256 еепрома, 368байт 0ЗУ, АЦП, 2ШИМ, и все прочее… Причем не надо забывать, что у PIC — ЛЮБАЯ команда занимает 1 слово из 8К, а у Меги длина команд разная. А большой стек — это наследство тех времен, когда регистров было всего 4 пары, и их постоянно приходилось сохранять/восстанавливать. Сейчас регистров полно, никто не заставляет использовать в разных подпрограммах одни и те же.
    Адрес возврата и флажки сохраняются автоматически, кроме них сохранять надо только пару регистров (аккумулятор и временный), какая разница, куда их пихать — в стек или ячейки памяти. Лично мне 8 уровней всегда хватало. (а в AT90S1200 — вообще было всего ТРИ! и ничего, работали). Зато сколько проблем с безразмерным стеком, если из за сбоя программы он проедется по всей памяти… В серьезных применениях последствия могут быть катастрофическими. Уж лучше пусть стек вертится по 8 ячейкам, из какой-нибудь из них выскочит в более — менее нормальный режим, не попортив переменных в регистрах, или сторожевой таймер сработает. (Когда — то я в контроллерах, работавших на работе круглосуточно, годами, забивал всю свободную область ПЗУ командами JMP 0000. Если выскочит, куда не надо — перезагрузится).
    Работа с банками памяти кажется сложной только первое время, пока не привыкнешь. Кроме того, часть регистров доступна из любого банка. На языке высокого уровня проблемы с банками вовсе нет — компилятор сам следит и оптимизирует. Зато в пределах банка адресация получается более короткой, что упрощает топологию кристалла и экономит площадь.
    Да и, например, I8086 тоже делил память на сегменты по 64к, высчитывая полный адрес довольно хитрым образом. Линейные модели адресации появились только в «защищенном» режиме, нормально реализованном только начиная с I80386, но и там сохраняется деление на «страницы», размером от 4к и более.
    Набор команд PIC не скудный, а достаточный, нет смысла городить кучу команд, отличающихся только методом адресации или еще какой-нибудь мелочью.
    Умножение и деление если в программе и требуются, то обычно не 8 битное, а больше, поэтому все равно его реализуешь программно. Если хочешь делать сложные вещи одной строкой — используй языки высокого уровня.
    Цены на PIC и Атmel везде разные. Например, у нас (в Алма-ате) — PIC16F876 20MHz дешевле, чем Мега 8. При себестоимости разработки изделия в сотни, а то и тысячи баксов, и цене изделия хотя бы в десятки, (думаю, вы же не звонки с радиокнопкой по 2-3 бакса разрабатываете), разница в стоимости процессора в бакс-другой уже особой роли не играет. (Мега 8 у нас стоит от 8 баксов и более).

    Поймите меня правильно, я не хаю Атмел (сам их часто использую, и как начинавшему с Intel 8080, 8048, они мне близки и понятны). Но мне не нравится, когда
    хают PIC только за то, что он PIC. Они ничуть не хуже. Просто они другие. Без успехов МикроЧипа не было бы и Атмела. Так бы все и работали на Intel да Motorola. А использовать в работе можно и нужно то, что больше подходит, что лучше знаешь, что есть в наличии, и еще много — много всяких «что». Я не сторонник крайностей, и никогда не говорю, что что-то «отстой», только потому, что мне оно почему-то не понравилось.
    Все хорошо в свое время и на своем месте. Даже дерьмо можно использовать с пользой (как удобрение), если предварительно обработать.
    Я знаю, что в Виндах на ядре NT многое по — другому и вся работа с портами идет на виртуальных машинах, но это не оправдывает их тормозов на элементарных функциях. Тем более что раньше это уже было реализовано в других системах гораздо лучше.
    Не зря Висту многие вообще ставить себе не хотят. Я и XP PRO поставил себе только ради поддержки многоядерности, большой памяти и больших винтов. Все остальное уже и в WIN 98SE было реализовано нормально.

    1. По ценам пик проигрывает и проигрывает подчистую. Если ты говоришь что PIC16F628 ближе к Тини2313, то при цене в 1.6 бакса он проигрывает Тиньке в почти в 4ре раза (Тини2313 я покупал в ЭФО по цене где то в пол бакса) Это при ощутимо более скромных возможностях.

      О системе команд:
      Вообще для полноценной работы хватит и машины Тьюринга с ее тремя (или четырмя?) командами. Но зачем? Чем больше команд, тем меньше надо шевелений для работы с разнокалиберными данными/ресурсами — значит программа получается короче и в один и тот же обьем памяти влезет больше полезного кода.

      Как круто когда одна команда делает декремент, проверят на ноль и переходит если не ноль! Весь цикл в одной команде! (это правда к С51, но в AVR команды тоже весьма мощные).

      Длина команд в AVR — одно двубайтное слово. И только три команды являются 4х байтными это длинный JMP (есть еще RJMP он 2 байта), длинный CALL (есть еще короткий двубайтный RCALL) и прямое сохранение в память командой ST

      О стеке:
      Не надо недооценивать стек. Это мощнейшее средство для работы с памятью. Да снижается безопасность и надо внимательно следить за стековыми операциями, но зато мы, по сути, можем не думать о сохранении регистров, не боясь что другая процедура не будет работать — все равно из стека все достанем как было. И дело тут даже не в старых привычках и минимальном числе регистров. Кстати, все высокие языки передают параметры именно через стек.

      1. «Как круто когда одна команда делает декремент, проверят на ноль и переходит если не ноль! Весь цикл в одной команде! (это правда к С51, но в AVR команды тоже весьма мощные). »
        ————————————————————-
        Пожалуйста, в PIC:

        BTFSC Пропустить команду, если бит в f равен нулю
        BTFSS Пропустить команду, если бит в f равен единице

        DECFSZ Декремент f, пропустить команду, если 0
        INCFSZ Инкремент f, пропустить команду, если 0

        (f: Адрес регистра — Любой регистр текущего банка, 0<f<127).

        Нет проблем. В одной команде проверка (Даже не байта, а бита!) и переход, или авто инкр/декр с проверкой и переходом. Обычно следующей, (пропускаемой), командой, является команда перехода на другую ветку или замыкающая цикл.
        Время исполнения — 1 цикл(4 такта) или 2 цикла (8тактов кварца), если пропуск (вместо следующей команды выполняется NOP).

    1. А вы попробуйте сделать простенький частотомер на AVR. Любой PIC, независимо от тактовой частоты, способен считать примерно до 70 МГц. А AVR — уже на единицах заткнется. На USB_1 PIC вполне потянет при нормальном алгоритме. Да и AVR работает с USB на пределе возможностей, только при тактовой порядка 16 МГц. На программный USB_2 никакой AVR тоже не потянет. А с другой стороны, зачем тратить практически все ресурсы процессора всего лишь на обслуживание USB? Ведь есть простенькие микросхемки типа FT232 и прочие, которые берут практически всю работу на себя, а контроллер пусть занимается своим делом. А уж если шибко хочется, так аппаратный USB есть уже во многих и PIC, и AVR. Да и не во всякой разработке он вообще нужен.

      1. Там предделитель частоты входной есть? Во всех пиках?

        Возникла мысль, а нельзя ли присобачить входной сигнал на вход OSC1/OSC2 вместо часового кварца, и поделить предделителем на любой коэффициент. Надо подумать.

        1. Как минимум, один предделитель есть в каждом PIC. Может подключаться на вход таймера или сторожевого таймера. Уже в 628 — таймеров уже 2. (8 и 16бит). В PIC16F87x — 3 таймера (кроме сторожевого, сброса, и задержки по включению, естественно).
          0: — 8 разр. с 8разр. программируемым предделителем;
          1: — 16разр. с возможностью подкл. собственного кварца до 200кгц, обычно часовой. Вроде, может работать даже в спящем режиме, если разрешено.
          2: — 8разр. с 8разр. предделителем и выходным делителем.
          У 0 и 1 таймеров есть свои внешние входы.

          У USART, SPI, I2C — свои отдельные, независимо программируемые, тактовые генераторы.
          На всякий случай кинул почтой ПДФ по 87х, на русском.
          Зачем подавать сигнал на OSC1/OSC2, если с внешнего входа таймера он тоже работает? В частотомерах так и делают. Но можно и с него, только он внутри уже делится на 4, а потом может подаваться на таймер напрямую или через предделитель. У предделителя 0 таймера коэфф. не любой, а только степени 2, от 2 до 256.
          А если нужны часы — возьми, например, 873, где есть отдельный микромощный кварцевый генератор (на порту С) для таймера 1, и вешай часовой кварц на него. А проще использовать готовые часы/календарь с I2C, например, DS1307, 8ног, есть встроенная схема резервного питания от часовой батарейки, генератор под часовой кварц, часы, календарь, и еще вроде 64 ячейки энергонезависимой памяти на всяк случай. Стоит копейки. (даже у нас — без проблем, я купил несколько шт на всяк. случай). Будут идти годами без сбоев, в независимости от основного питания. Только масенькую батарейку раз в 3 года меняй.

          1. Не, это я про то, как на АВР получить на вход счетный импульс через предделитель на 1024. Т.к. Tn заходит в считалку напрямую и только Tosc или тактовый сигнал можно прогнать через делитель. Вот я и думаю, а не прогнать ли вместо часового кварца на счетчик высокоскоростной сигнал. Это к вопросу частотомеров на Атмелах.

            1. Так все равно максимум 20МГц получится, да еще точность будет на 2-3 порядка ниже за счет потери младших знаков. В PIC предделитель не читается, но методом досчета (подавая на вход дополнительные импульсы до переполнения) удается сохранить дискретность +- 1гц на любой частоте. Погрешность определяется только калибровкой кварцевого генератора.(если правильно просчитать время всех веток в программе).
              А если в AVR измеряемый сигнал гнать вместо тактовой, чем временную базу формировать? Городить внешний генератор с делителями, и подавать период измерения на внешнее прерывание? Тоже добавит «дрожание» точек отсчета.

  14. PIC16F876 дороже в два раза 628 пика и все равно он до меги8 в 1$ не дотягивает.
    цена PIC16F876 больше трех баксов.
    я придерживаюсь, повторюсь, цены атмела против пика. пик не выдерживает ни какой конкуренции. если у вас ат8 стоит 8$, а сколько стоит тогда ат16 — 16$??
    с москвы лучше заказать по баксу если это возможно. а по 8 баков покупать это извините… только в разовое эксперементальное изделие. за такие деньги можно две АТ64 купить. у нас они по 4уе и в москве тоже. лично мне пофигу на чем писать программу на пике или атмеле, но если мое изделие стоит ,например, 100уе при себестоимости 15уе , то я не собираюсь терять 3уе на пике. лучше я продам 10раз по 100, а 30уе(сэкономленные) выпью с другом в баре коньячка и это будет правильно!

    1. У нас Меги идут от 800 до 2500 тенге (курс 120 тенге за доллар). PIC16F873, 876 — 600-800 тенге. Самый дешевый — AT89C2051, (200-250тенге). 2313 — 300-400. ATTiny12-15 — 300-400. PIC12F676 — около 400, PIC16F628 — 400-600… Возят в основном с Эмиратов или Китая. (С Москвы тоже, но дороже). Несмотря на это, имею в запасе примерно по десятку Мег 8, 16, 32, 64, 128, ATTiny c 12 по 26, а также более старые, и большой набор PICов (до PIC16F877, пока хватает). В основном паяю для себя, реже — на заказ (Чаще для знакомых, не заработка для, а интереса ради). На 32 Меге, например, между делом летом слепил из любопытства осцилограф Серасидиса на графическом ЖК индикаторе. Работает, но реально выше килогерца уже делать нечего… Прикинул варианты — на PIC вполне реально попытаться вытянуть больше, но все равно это не осциллограф. Так, демонстрация возможностей… У меня дома есть прекрасный С1-64А для серьезной работы, а для мелочей — С1-112. На работе электроникой уже лет 12 не занимаюсь, (никому не надо, проще купить готовое), только программированием. Вот и тянет к паяльнику, все же 20лет (с 76 по 96) активно занимался разработкой…

  15. я стараюсь делать изделие, если даже для себя(что уже редко), но уже с дальним прицелом на коммерческую продажу. гнать лапой код по несколько дней и потом чтоб это изделие валялось на полке — на это уже не стоит. Свои лучшие поделки я сделал под вдохновением получение будущей прибыли. просто у вас есть основная работа, а пики и атмелы это хобби. и вы можете позволить такую роскошь — писать для себя(я даже завидую).

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

      1. Да не скажи. Готового то может есть и все что угодно. Но

        А) Это еще надо найти
        Б) Не стоит забывать про тюнинг на местности и поддержку.

        Я вот нигде не работаю. Зарабатываю именно на продаже своих девайсов. КОторые паяю сам.

  16. у нас тоже в минске китайского много, но у вас просто завалено по горло(китай совсем рядом), но все равно можно найти нишую где будут востребованы ваши знания.
    нада посмотреть просто под другим углом зрения.

  17. San Jose, CA, October 29, 2008

    Atmel® Corporation (Nasdaq: ATML), today announced that, after careful consideration, its Board of Directors has unanimously determined that the October 1, 2008, unsolicited proposal from Microchip Technology Inc. (NASDAQ: MCHP) and ON Semiconductor Corporation (NASDAQ: ONNN) is inadequate in multiple respects, including value, conditionality and complexity, and is not in the best interests of Atmel’s stockholders.

    «Atmel’s Board has determined that Microchip and ON’s highly conditional proposal significantly undervalues Atmel and would deprive Atmel stockholders of the greater value that can be achieved through the continued execution of the Company’s transformation plan,» said David Sugishita, Chairman of Atmel’s Board of Directors.

  18. 31.10.2008
    Вызвавшее большой общественный резонанс, публичное предложение фирм Microchip и ON Semiconductor о покупке акций Atmel Corp. не вызвало интереса у акционеров корпорации и было отклонено.

    Подробная информация приведена в официальном ответе руководства корпорации Atmel.

    1. Да, уже в курсе. А еще меня дико позабавило это письмо, где Атмеловцы стебутся и издеваются над предложением микрочипа.

      1. А на чем, кстати, сейчас актуальнее всего делать новые устройства?
        — По моим наблюдениям, самая важная штука для любителя (я сейчас этим зарабатывать не планирую) — тип корпуса :)

        1. 0) Паяемый тип корпуса. БГА любителям нафиг не сдался — плату под него не вытравить, остальное решаемо
          1) Легкий программатор
          2) Возможность эмуляции
          3) Наличие кусков готового кода (чужие проекты) чтобы было можно многое делать не с нуля

  19. Ребята!от темы то ушли! Пусть каждый сам решает на чем ему паять!
    Я конечно понимаю, скандальные названия это круто! но неправда..

    19.11.2008 10:25

    ON Semiconductor отказалась от намерения приобрести совместно с Microchip Technology своего конкурента Atmel за 2,3 млрд долл., оставив своего компаньона в этом деле в одиночестве.

    По словам представителей ON, основные причины принятия такого решения — ослабление рынка полупроводников и мировой финансовый кризис. Согласно заявлению Microchip, компания разочарована выходом ON из списка покупателей и вынуждена пока отозвать свое предложение к Atmel.

    Тем не менее, руководство Microchip сообщило о том, что не намерено отказываться от идеи покупки Atmel вообще и собирается рассмотреть все возможные варианты возобновления торгов.

    Напомним, что переговоры о покупке велись с начала октября. В конце прошлого месяца руководство Atmel отказало «поглотителям», мотивируя свое решение тем, что предложенные 2,3 млрд долл. «существенно недооценивают» компанию.

    На прошлой же неделе Microchip и On объявили, что не намерены сдаваться. Согласно заявлению Microchip, компания успела приобрести 4,1% непривилегированных акций Atmel. Такой пакет, хоть и выглядит несущественным, позволил бы Microchip номинировать свой совет директоров на ближайшем ежегодном собрании акционеров не сдающейся Atmel. Если покупателям удалось бы убедить акционеров в полезности продажи компании и склонить их к поддержке своего правления, то последующее завершение сделки представлялось бы уже свершившимся фактом.

    Как планировалось раньше, в случае успешного завершения поглощения, формальным покупателем Atmel была бы Microchip, которая следом продала бы часть компании ON. По мнению экспертов отрасли, скорее всего, Microchip оставила бы себе производство микроконтроллеров, а остальное отдала бы ON. Цена, предложенная конкурентами, превышала рыночную стоимость акций Atmel на 50%.

    Источник: @Astera

    1. Когда писался этот пост выглядло все это именно так. Кстати, читал письмо ответ от Атмел к микрочипу? Этакое «Письмо турецкому султану» ржачное :)

  20. Товарищ DI HALT, а можно ссылочку на источник новости? Ну или хотя бы откуда слух пошел? На сайте Atmela вроде нет ничего подобного.

    1. На тот момент дела шли очень плохо, стоимость акций атмела резко рухнула (видимо на волне общего обвала) и честно говоря было сыкотно за контору. Т.к. тут многие по рукам пошли. да и на сайте Atmel была новость, что совет директоров рассматривает продажу компании Atmel в частности ее должны были купить ON и Microchip. Но видимо торги пошли не так или дирекция решила не продавать, хотя цена была очень высокой. Короче, спустя некоторое время появилось весьма стебное письмо от председателя совета директоров компании Atmel в адрес микрочипа, мол хрен вам, Родина Atmel не продается за коврижки. Ну и что то в этом духе.

  21. Добрый день!!!

    Раскойте, пожалуйста, тайну. Как сейчас дела у ATMEL? Последние 2..3 месяца изучал по вечерам теорию по AVR-ам (сайты, книжки). Вроде разобрался. Спаял программатор с данного сайта(!). Приобрел, для начала и под первую задачу, ATtiny13 (DIP-корпус для удобства). Запрограммировал с первого раза!!!!.
    Для дальнейшего «роста» над собой пошел покупать МЕГУ-16.
    (ПРОШУ ПРОЩЕНИЯ — НАЖАЛ НЕ НА ТУ КНОПКУ).
    Так вот пошел покупать МЕГУ-16. Прошу в DIP-корпусе (так удобней учится и вынимать из панельки). Продавец прикалывается, что мол дадим что есть (SOIC). И есть ли и этот МК вообще. Спрашиваю, собственно в чем дело — вещь, вроде, распространенная? Ответ: производство ATMEL закрыто и распродано, цены на то что осталось — выросли, запасы иссякают.
    Действительно все так плохо? И я зря потратил время (да и денюжки — книг и справочников понабрал немало)? Или есть надежды на светлое будущее?

    Заранее спасибо.

    1. В общем ситуация там такая — дела у атмела идут лучше всех. Но вот производства они свои продали, т.к. невыгодно держать их — дешевле китайцам заказать изготовление. И, собственно, так и было. Но вот незадача — китайцы то делают чипы не только для атмела, но и для остальных фирм. А сейчас предприятия начали выходить из кризиса и пошли продажи. В итоге — китайские заводы перегружены и не справляются с ажиотажем на чипы. В результате страдают все. Ситуация еще осложняется тем, что атмел пролез в рынок сотовых телефонов со своим тачскрин микросхемами. А это ОЧЕНЬ жирный кусок и отказыватсья они от него не будут ни в коем разе. А значит производственные мощности будут брошены в первую очередь на эти чипы, а не на МК. Но ситуация улучшается.

      Летом с AVR было вообще туго — мне приходилось брать мегу16 по 180р штука, в сентябре стало получше — доставал по 90р, а недавно я дернул партию Mega16 в дипе по вообще рекордно низкой цене в 57р! По 90р вполне можно достать хоть сейчас.

      Так что ситуация идет в гору и это хорошо:)

      1. Спасибо за ответ!!!!

        Тогда вопрос: как приобрести, если это еще в силе, «Универсальную отладочную плату PinBoard vХ?Х?Х?. Вероятно, последнюю версию.

        С уважением.

          1. Добрый день!

            Вы получили заказ из Московской облати? А то в «магазине» нет обратной связи, а реквизиты на электронную почту не получал.

Добавить комментарий

Ваш e-mail не будет опубликован.

Перед отправкой формы:
Human test by Not Captcha