растущие 8-битные AVR, не уверен, куда двигаться дальше

8

Я использую 8-битную AVRS уже несколько лет. В последнее время я чувствовал себя ограниченным скоростью передачи периферийных данных и библиотеками более высокого уровня.

У меня проблемы с поиском / выбором новой линейки микроконтроллеров для исследования. Я смотрел на

  • NXP - Не могу найти программиста
  • Freescale - надо зарегистрироваться на IDE
  • AVR32 - ограниченный выбор чипа на digikey

Чипы NXP выглядят очень хорошо, но, как и в случае с любым другим, кроме PIC / AVR / Ardiuno, кривая обучения довольно крутая.

Мне было интересно, кто-нибудь может предложить линейку микроконтроллеров, которые удовлетворяют (в порядке важности) следующие требования

  1. Ручная пайка чипов. (Я могу сделать LQFP 100)
  2. 32 бит
  3. Хост Linux
  4. Бесплатный набор инструментов
  5. Хорошая / бесплатная IDE
  6. <500 $ стоимость запуска для неограниченного программирования / отладки / компиляции
  7. МОЖЕТ поддерживать
  8. Поддержка Ethernet / USB

Я готов еще раз взглянуть на Freescale и NXP, если кто-нибудь покажет мне, что я пропустил некоторую информацию об их наборе инструментов и программистах. Я думаю, вы могли бы сказать, что AVR32 - это именно то, что я ищу, но я просто не доволен их выбором чипов. Все они имеют более высокое количество выводов и низкий запас на Digikey.

Спасибо.

Крис Х
источник
2
В чем проблема с регистрацией в IDE Freescale?
Стивенвх
5
Прыгать через обручи, чтобы иметь привилегию использовать свои чипы, которые вы купили?
XTL
Да, ну, они скажут, что им нужно знать, кто вы, чтобы обеспечить лучший сервис, читать, чтобы продавать свои вещи. Ситуация ухудшается, если вам нужно зарегистрироваться только для того, чтобы загрузить таблицу данных (случалось со мной несколько раз). Жизнь тяжелая :-)
stevenvh
Необходимость «регистрироваться» в Интернете, безусловно, беспрецедентный шаг. FWIW, их форумы также требуют такой регистрации, так что приятно быть настроенным и на это.
Ник Т
1
@stevenvh, в случае Wavecom было невозможно найти что-либо (таблицы данных, сообщения на форуме, документы и т. д.), используя поисковую систему, поскольку все требовало регистрации. Загрузка старой версии IDE также является проблемой, поскольку они были приобретены.
Питер Гибсон

Ответы:

4

Я бы определенно рекомендовал NXP - приличный набор микросхем, хорошие периферийные устройства (UART с гибкой скоростью передачи данных и FIFOS, SPI с FIFO и т. Д.), Отличная документация * и гибкие возможности программирования. Получите отладчик JTAG / SWD (детали Cortex используют SWD - меньше контактов, чем JTAG и могут выполнять такие вещи, как установка точек останова во время работы). Я использую бесплатную кикстарт-версию встроенной рабочей среды IAR - она ​​имеет ограничение в 32 КБ, что хорошо для меня, но учтите, что обновление размера кода обходится дорого. Множество людей, кажется, делают хорошо с GCC / Winarm. Некоторые компоненты Cortex (например, LPC1343) могут загружать прошивку с USB-накопителя с помощью встроенного загрузчика. Доступность запчастей, как правило, хорошая - я никогда не пытался найти запас. Для деталей NXP также доступно множество девбордов / прорывов.

  • документация в руководствах пользователя хороша, однако большинство вещей упоминаются ровно один раз, поэтому стоит потратить время на чтение всего каждого раздела, касающегося каждого периферийного устройства, которое вы будете использовать. Руководства для более поздних частей были улучшены тем, что в начале каждого раздела они указывают на несколько критических неочевидных вещей, таких как часы / пин-коды, которые описаны в других документах, которые необходимы для работы этого периферийного устройства.
mikeselectricstuff
источник
12

ARM, ARM, ARM.

ARM лицензирует свои процессорные ядра многим компаниям. Это означает, что вы найдете хорошие инструменты, поддержку и документацию из более чем одного источника.

PIC, AVR и MSP430 страдают от проблемы полной собственности одной компании.

Помните о микроконтроллерах ARM, что Cortex-M3 от NXP будет ближе к Cortex-M3 от ST или Luminary, чем ARM9 или ARM7TDMI от NXP. Чаще всего компиляторы, отладчики и программисты являются общими для ядер, а не для производителей.

Получение набора инструментов Codesourcery GCC ARM и дешевого ключа ARM JTAG поможет вам в этом.

Тоби джеффи
источник
1
дешевый ARM JTAG ключ == OpenOCD
Johan
@Johan Или вы можете уговорить существующую ATmega в одну.
Maxthon Chan
5

Я бы пошел на NXP. Вскоре Cortex-M3 стал стандартом для контроллеров ARM (я предполагаю, что под Freescale вы имеете в виду Coldfire). Начиная с ARM7TDMI NXP также имеет традицию широкого выбора устройств на выбор.
Что касается программиста для NXP, IMO должен выполнять любой программист JTAG (CMIIW).

В
настоящее время я читаю о mbed , который выглядит как самый простой способ начать работу с NXP Cortex M3 (используется контроллер LPC1768). Вы программируете / компилируете онлайн (таким образом, Linux не является проблемой), и вы программируете через USB (устройство выглядит как запоминающее устройство, на которое вы можете скопировать скомпилированную программу). Программист не требуется. Программы, написанные для mbed, должны быть напрямую переносимы на LPC1768 на других платах.

stevenvh
источник
2

Попробуйте 16-битный PIC24 и dsPIC. Многие из них доступны в DIL, и они обеспечивают до 40 MIPS. Доступно бесплатное программное обеспечение для разработки, а отладчик / программист PICkit 3 стоит довольно дешево - 50 долларов. Следующая версия MPLAB будет иметь поддержку Linux, доступна бета-версия.

Леон Хеллер
источник
1

Я думал, что вы сможете получить бесплатные инструменты для ARM. Программирование должно быть выполнимо из последовательного загрузчика или (открытого) JTAG. Некоторые микросхемы и модули STM32 и NXP, на которые я смотрел, оставили у меня такое впечатление.

Мне также напомнили об этом вопросе .

XTL
источник
1

Если вы действительно хотите использовать 32-битную версию, попробуйте PIC32. Высокая доступность от Microchip. Для отладки Linux MPLAB X находится в бета-версии 4 и поддерживает Linux, Windows и Mac OS X. Я думаю, вам также понадобится PICkit 3 или аналогичный программатор за 50-60 долларов.

Однако я бы больше склонялся к 16-битным dsPIC и PIC24, потому что они намного дешевле, их можно отлаживать с помощью PICkit 2 и их легко программировать. Также они доступны в DIP-пакетах, хотя для вас это не имеет значения (?) Я слегка склонен к ним, учитывая, что я использую их в своем проекте.

Томас О
источник
В 28-контактном DIP-корпусе теперь доступно более десятка PIC32, что делает их идеальными для создания прототипов. Также новая линейка PIC32MZ (доступна только в SMD) имеет до 2 МБ флэш-памяти, 512 КБ ОЗУ и поддерживает хост CAN / Ethernet / USB 2.0.
tcrosley
1

Только 32-битный процессор в настоящее время производятся в корпусе DIP является Parallax Propeller . (Этот же чип доступен и в гораздо меньших корпусах с 44-контактным QFP и 44-контактным QFN, все с 32 контактами ввода / вывода общего назначения). Для него также есть несколько инструментов разработки, которые работают под Linux .

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

davidcary
источник
0

Посмотрите на СЭЗ Домино . Он не отвечает всем вашим требованиям, но предлагает довольно много, если вам не нужен минимально возможный контроль уровня.

Avra
источник
0

Чипы серии Cypress PSoC имеют комбинацию функций, которых я не видел ни в одной другой микросхеме.

Чип PSoC5 включает в себя 32-битный ARM Cortex M3, но, насколько я могу судить, все они упакованы в нечто вроде TQFP100. Чипы серии PSoC1 и PSoC3 включают в себя множество микросхем, упакованных DIP, но все они имеют одно 8-битное ядро ​​или другое.

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

http://www.psocdeveloper.com/

davidcary
источник
0

ARM Atmel могут отвечать всем требованиям, в основном

Ручная пайка чипов. (Я могу сделать LQFP 100)

Они входят в TQFP, и вы можете использовать один из меньших по 64-контактный.

32 бит

Проверьте

Хост Linux

Я разрабатываю исключительно в Linux

Бесплатный набор инструментов

GCC ARM Toolchain, который теперь легче настроить с помощью сценариев сборки, таких как набор инструментов summon arm.

Хорошая / бесплатная IDE

Вы меня там. Предположительно, кто-то может настроить Eclipse или Kdevelop для выполнения этой работы, но я не пробовал. Я использую vim и kate.

<500 $ стоимость запуска для неограниченного программирования / отладки / компиляции

Программирование и компиляция обойдутся вам примерно в 100 долларов, возможно, для создания минимальной платы. Микросхемы поставляются со встроенным загрузчиком в ПЗУ, который позволяет программировать микросхему. Вам не нужен отладчик для его программирования. Вы можете получить фирменный (и заблокированный) Segger Atmel примерно за 100 $. Если вы можете себе это позволить, я бы посоветовал вам не покупать закрытый, а заплатить 200 или 300 за разблокированный. Есть и другие варианты, которые гораздо дешевле, которые я не пробовал. Usbprog выглядит очень многообещающе.

МОЖЕТ поддерживать

Совершенно уверен, что его там, хотя вы должны проверить, чтобы быть уверенным. Я им не пользуюсь, поэтому не уверен, есть ли у всех.

Поддержка Ethernet / USB

Поддержка USB есть. Поддержка Ethernet должна быть добавлена ​​извне. Хотя есть множество примеров, из которых можно выбирать.

Чинталагири Шашанк
источник
У нас есть CAN на ATSAM. По крайней мере, у ATSAM3X8E есть такой, как у Arduino Duo, использующего этот чип, один такой.
Maxthon Chan
0

Я использую демонстрационную плату lpc4330-xplorer для LPC4330 от NXP. Я использую ручной набор инструментов, но вы могли бы использовать Yagarto (если вам не безразличен жесткий FP) или любой другой ARM-компилятор, если вы можете копаться в скриптах компоновщика. NXP имеет несколько действительно изящных периферийных устройств, таких как State Configurable Timer (вы можете прочитать: генератор функций), который способен выполнять множество функций. У них также есть несколько хороших SGPIO. Кроме того, они имеют множество таймеров на борту. Это также двойной процессор (чип на базе M4-M0). Конечно, вся их линейка LPC довольно хороша.

Честно говоря, линия Cypress pSOC тоже выглядит красиво, но у меня не было возможности ее использовать. Все остальные, безусловно, имеют свое назначение и аудиторию, но я использую среду разработки Linux, не использую IDE и несколько инструментов командной строки. Я выбираю этот путь, потому что, когда что-то идет не так, и это неизменно происходит, мне легче выявлять проблему, если мне не нужно очищать слои инструментов. Кроме того, нет ограничений по коду. И, хотя это не совсем понятно из поисковых запросов в Интернете, линия LPC довольно хорошо поддерживается открытым исходным кодом.

Наконец, LPC предоставляет достаточное количество примеров кода в LPCOpen. Опять же, чтобы быть справедливым, если вы хотите, чтобы он компилировался с инструментами с открытым исходным кодом, это займет немного работы, но это не сложно. У них даже был довольно хороший пример веб-сервера в их. У них также есть кулинарная книга по SCT (SCT нужно немного понять, но как только вы это сделаете, это действительно хорошо), но может потребоваться некоторое время, чтобы разобраться с примерами, и примеры SCT в LPCOpen жалки. Но это стоит того, чтобы запустить чипы NXP. Я даже провожу немного времени с NuttX (я устал все время от голого кода) и lpc4330-xplorer.

В любом случае, удачи с тем, что вы выберете.

roboknight
источник
0

Вот мои варианты:

  • Много IO, но медленная скорость приемлема? Сгруппировать AVR. Я пытался говорить SMBus по линиям I2C, и это по крайней мере приемлемо.
  • Нужна скорость? Серия ATSAM выглядит хорошо с пакетами TQFP100 и TQFP144. У нас есть Arduino SAM3X8E в Arduino Duo. ATSAM также имеет MII / RMII, но интерфейсный чип может быть сложным. Если вы хотите, чтобы линейка ATSAMA5 читалась и снова подумала, Allwinner A20, вероятно, превзойдет ее.
  • Больше скорости, мультимедиа, возможно поддержка Linux? Так как я из Китая, мне очень интересен конкретный отечественный производитель: Allwinner. Их SoC Cortex-A7, двухъядерные A20 за 5 долларов и четырехъядерные A31 за 10 долларов, а также восьмиъядерный большой. SoC A80 LITTLE Cortex-A15 / 7 за 20 долларов со встроенными респектабельными графическими процессорами OpenGL и OpenCL, Несмотря на то, что в пакетах BGA они достаточно хороши для планшетов среднего и высокого уровня, более чем достаточно для полноценного Ubuntu Server: несколько демонов горят, графические процессоры перебивают числа, маршрутизируют пакеты со скоростью линии 1 Гбит / с или управляют двумя 1080P или 4K дисплей.
Макстон Чан
источник