Преимущества atmega32 [закрываются]

6
задан Peter Mortensen 4 April 2011 в 13:44
поделиться

6 ответов

Это зависит от обстоятельств .. Во-первых, вы должны знать, что вы хотите от микропроцессора.

В целом:

PIC:

  • Старая архитектура. Это означает, что это либо дорого, либо медленно
  • Нацелен только на рынок с низким уровнем (<несколько МГц)
  • Для этого написано много кода

ARM

  • Масштабируемость
  • Быстро / дешево

Atmega - это где-то между

4
ответ дан 8 December 2019 в 04:07
поделиться

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

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

В общем, платформы Pic и avr подходят для простых однофункциональных устройств, где as arm используется в случаях, когда вам нужен полный стек ОС, такой как QNX или Linux, для таких вещей, как TCP или реального времени со службами ОС.

3
ответ дан 8 December 2019 в 04:07
поделиться

Я считаю, что семейство PIC (до версии MIPS) имеет самый болезненный набор инструкций из всех, что означает, что ассемблер - это язык выбора, если вы хотите сэкономить место, получить производительность, иметь контроль и т. Д.

8051 немного менее болезненен, больше регистров, но все же требует нескольких инструкций, чтобы сделать что-нибудь полезное (что означает, что вы не можете сравнивать их с другими чипами с точки зрения МГц). Мне нравятся AVR во многих отношениях, они охватывают сообщество доморощенных и разработчиков, а если не напрямую, то существует гораздо лучшая семья разработчиков по сравнению с конкурентами. Мне не нравится набор инструкций, но он на десятилетия опережает PIC и 8051. Мне немного нравится набор инструкций MSP430, это один из лучших наборов инструкций для обучения ассемблеру, хотя TI не так удобен для разработчиков, это может быть борьба. EZ430 был на правильном пути, но goodfet лучше, поскольку у вас нет его, не работающего с любой другой версией ядра.

Насколько мне известно, MSP430 и ARM имеют лучшие наборы инструкций, что приводит как к хорошему ассемблеру, так и к хорошим инструментам компилятора. Вы можете найти коммерческие инструменты для всего вышеперечисленного и, конечно, для 8051, MSP430 и бесплатных инструментов ARM (MSP430 и ARM могут использовать GCC, 8051 - нет, ищите SDCC ). На данный момент mspgcc4.sf.net и CodeSourcery - это место для инструментов на основе GCC для MSP430 и ARM. LLVM поддерживает оба, мне удалось заставить LLVM 27 превзойти последний GCC в dhrystone тесте , но это один тест, LLVM отстает по производительности, но улучшается.

Что касается поиска и создания бесплатных кросс-компиляторов, я уже вижу LLVM как самый простой в получении и использовании и, надеюсь, в будущем он будет только улучшаться. К сожалению, порт MSP430 для LLVM - это то, что я мог сделать во время дневной презентации PowerPoint, а не серьезный перенос.

Я отвечу, что это зависит от того, что вы делаете, и я рекомендую вам попробовать все из них. В наши дни оценочные платы стоят менее 50 долларов США, а некоторые - менее 30 долларов США. Даже в семействе ARM ( ST , Atmel, Stellaris, LPC и т. Д.) Есть множество функций и причуд, которые вы обнаружите, только если попробуете их. Избегайте праймеров LPCexpresso, mbed2 и STM32. Избегайте LPC в целом и избегайте Cortex-M3 в целом, пока вы не порежетесь на ARM7. Посмотрите SparkFun для Olimex и других плат. Хотя это, вероятно, LPC, ARMmite PRO и Arduino Pro - хороший выбор. EZ430 - хороший старт для MSP430, и я не помню, кто делает вещи для 8051, Renasys (sp?), 8051 не все созданы равными, пространство регистров варьируется от одного к другому, и вы должны к этому подготовиться. Я, вероятно, поищу симулятор 8051, если вы хотите поиграть с 8051.

Я вижу, что AVT и определенно ARM продолжают доминировать, я бы хотел, чтобы MSP430 использовался не только для сверхнизкого энергопотребления. С ARM, AVR и MSP430 вы можете использовать и привыкать к инструментам GCC сейчас и в будущем, что имеет много преимуществ, даже если GCC не лучший компилятор в мире, это, безусловно, лучший поддерживаемый компилятор.Я бы избегал проприетарных компиляторов и инструментов. Я бы поискал устройства с непатентованными программными интерфейсами, программируемыми на месте, JTAG - это хорошо, но, например, новый SWD JTAG на Cortex-M3 - это плохо. TI MSP пострадала от этого, но некоторые хакерские методы помогли решить эту проблему, по крайней мере, на данный момент. Мне действительно нечего сказать о PIC, и я не буду пытаться. Важная вещь, которую нужно искать, - это связать логику, имеет ли деталь или семейство SPI или I2C или любая другая шина, которую вы хотите использовать, нужна ли вам внутренняя подтяжка, проводная или Вход?

Некоторые микросхемы просто не имеют такой возможности, и вам приходится добавлять внешнее оборудование. Вам нужно прерывание с условием? ARM имеет тенденцию выигрывать в этом, потому что это ядро, используемое многими, поэтому каждый поставщик ARM размещает свой собственный ввод / вывод, чтобы вы все еще могли жить в мире ARM и иметь много вариантов, AVR и MSP будут очень ограничены сравнение. С ARM инструменты будут самыми современными, ARM - самый используемый процессор прямо сейчас. AVR и MSP - это специальные надстройки проекта, менее широко поддерживаемые и хрупкие. Хотя ARM имеет низкое энергопотребление по сравнению с Intel SBC или компьютерной платформой, он, вероятно, не такой маломощный, как AVR или MSP. Вам действительно нужно взглянуть на свой проект и выбрать подходящий процессор для работы, я бы не стал и не ограничиваю себя одной семьей. Несмотря на дешевизну оценочных плат и почти все они могут использовать бесплатные инструменты, достаточно потратить несколько ночей или выходных, чтобы изучить каждую из них. Я предлагаю изучить более одного AVR и изучить более одного микропроцессора.

4
ответ дан 8 December 2019 в 04:07
поделиться

Ну, ответить непросто. В основном это зависит от того, что вы использовали раньше. Если вы уже являетесь пользователем AVR, то его можно использовать. С другой стороны, вы можете найти PIC с аналогичными возможностями, поэтому я бы сказал, что это в основном личные предпочтения. Я думаю, что большинство ARM более способны, чем серия atmega32. Если вам нужен хороший совет, расскажите, для чего вы планируете его использовать.

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

Я недостаточно знаю о 8051, чтобы давать комментарии.

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

0
ответ дан 8 December 2019 в 04:07
поделиться

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

Но отвечая на ваш вопрос напрямую, весь диапазон AVR имеет согласованную архитектуру и общий набор периферийных устройств от Tiny до Mega (но не AVR32, который совершенно другой). Это существенная разница с PIC, где при перемещении вверх по диапазону (PIC10, 12, 16, 18, 24, 32) вы получаете разные конструкции периферии, разные наборы инструкций и вам нужно вкладывать средства в разные компиляторы и оборудование для отладки.

Набор инструкций для AVR был разработан для эффективной компиляции кода C (опять же в отличие от PIC).

Архитектура 8051, первоначально представленная Intel несколько десятилетий назад, теперь используется в качестве ядра для 8-битных устройств от ряда поставщиков. В нем есть некоторые хитрые приемы, такие как эффективное переключение контекста многозадачности через 8 дублированных банков регистров и блок памяти с побитовой адресацией, но при этом у него необычная архитектура памяти и ограниченный диапазон адресов (как у большинства 8-битных устройств). Отлично подходит для небольших устройств с точным нацеливанием, но не совсем общего назначения.

ARM Cortex-M3 по существу заменяет ARM7TDMI и представляет собой более чистый дизайн с хорошо продуманной архитектурой. Это требует минимального кода запуска ассемблера, и даже ISR и векторные таблицы могут быть закодированы на C напрямую, без каких-либо странных расширений компилятора или кода входа / выхода ассемблера. Его метод разбиения на биты позволяет всей памяти и периферийным устройствам иметь атомарную битовую адресацию, что полезно для быстрого ввода-вывода и безопасной многопоточности.В основном он разработан, чтобы разрешить код C или C ++ на системном уровне без нестандартных расширений компилятора. Это, конечно, 32-битная архитектура, поэтому она не имеет ресурсных или арифметических ограничений 8-битных устройств. Цены на младшие компоненты конкурируют с более производительными 8-битными устройствами и взрывают большинство 16-битных устройств из воды (делая 16-битные почти устаревшими).

Еще одна важная вещь, о которой следует помнить, - это то, что PIC и AVR от одного производителя, а 8051 и ARM являются лицензированными ядрами. Каждый лицензиат добавляет свой собственный набор периферийных устройств, поэтому между поставщиками периферийных устройств нет общего, поэтому код драйвера устройства требует переноса при смене поставщика, и вам необходимо убедиться, что в этой части есть необходимые периферийные устройства. Если вы хорошо спроектируете слой устройства, это редко станет большой проблемой.

2
ответ дан 8 December 2019 в 04:07
поделиться

Преимущества

  1. По-прежнему работает от 5 В, поэтому устаревшие 5-вольтовые компоненты интерфейса более чистые.
  2. Даже при том, что он поддерживает 5 В, новые детали могут работать до 1,8 В. Такой широкий диапазон встречается очень редко.
  3. Хороший набор команд, очень хорошая пропускная способность по сравнению с другими процессорами (HCS08, PIC12 / 16/18).
  4. Высококачественный порт GCC (никаких проприетарных дрянных компиляторов!)
  5. Варианты «PA» имеют хорошие возможности спящего режима в микроамперах.
  6. Полный набор периферийных устройств
  7. Возможности QTouch

Недостатки

  1. По-прежнему 8-битный. ARM - это 16/32-битная рабочая лошадка, которая будет передавать намного больше данных на гораздо более высоких тактовых частотах, чем любая 8-битная.
  2. Стоимость. Может быть дороже по сравнению с HCS08 или другими недорогими 8-битными процессорами.
  3. У инструментальной цепочки GCC есть причуды, такие как модель разделенной памяти и ограниченные 16-битные указатели.
  4. Atmel не лучший поставщик на планете (по крайней мере, они не Максимы ...)

Короче говоря, они очень чистые и простые в работе с 8-битным микроконтроллером.

8051 унаследовал: инструменты проходимы, архитектура причудливая (idata? Xdata? Нереентерабельные функции в большинстве компиляторов по умолчанию?).

PIC до PIC24 также является причудливым (банкинг регистров) и низкой пропускной способностью «часы-> инструкции». Также не существует первоклассного компилятора C с открытым исходным кодом.

PIC32 конкурирует с ARM7TDMI и ARM Cortex-M3 на основе адаптированного ядра MIPS и имеет порт GCC (не основной).

AVR32 конкурирует с Cortex-M3 и предлагает довольно хорошее соотношение цены и качества, особенно в области низкого энергопотребления.

MSP430 - король устройств со сверхмалым энергопотреблением и имеет проходимый порт GCC (если вы не ориентируетесь на 430X).

HCS08 очень недорогой, но с низкой пропускной способностью команд. Периферийные устройства довольно сильно различаются.

ARM раньше была более дорогой точкой входа, но с появлением архитектуры Cortex-M3 цена упала по сравнению с 8-битной. Например, серия LPC13xx во многом сравнима с ATmega32. Luminary (TI) имеет довольно внушительный набор периферии.

13
ответ дан 8 December 2019 в 04:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: