Я использую 8-битную AVRS уже несколько лет. В последнее время я чувствовал себя ограниченным скоростью передачи периферийных данных и библиотеками более высокого уровня.
У меня проблемы с поиском / выбором новой линейки микроконтроллеров для исследования. Я смотрел на
- NXP - Не могу найти программиста
- Freescale - надо зарегистрироваться на IDE
- AVR32 - ограниченный выбор чипа на digikey
Чипы NXP выглядят очень хорошо, но, как и в случае с любым другим, кроме PIC / AVR / Ardiuno, кривая обучения довольно крутая.
Мне было интересно, кто-нибудь может предложить линейку микроконтроллеров, которые удовлетворяют (в порядке важности) следующие требования
- Ручная пайка чипов. (Я могу сделать LQFP 100)
- 32 бит
- Хост Linux
- Бесплатный набор инструментов
- Хорошая / бесплатная IDE
- <500 $ стоимость запуска для неограниченного программирования / отладки / компиляции
- МОЖЕТ поддерживать
- Поддержка Ethernet / USB
Я готов еще раз взглянуть на Freescale и NXP, если кто-нибудь покажет мне, что я пропустил некоторую информацию об их наборе инструментов и программистах. Я думаю, вы могли бы сказать, что AVR32 - это именно то, что я ищу, но я просто не доволен их выбором чипов. Все они имеют более высокое количество выводов и низкий запас на Digikey.
Спасибо.
источник
Ответы:
Я бы определенно рекомендовал NXP - приличный набор микросхем, хорошие периферийные устройства (UART с гибкой скоростью передачи данных и FIFOS, SPI с FIFO и т. Д.), Отличная документация * и гибкие возможности программирования. Получите отладчик JTAG / SWD (детали Cortex используют SWD - меньше контактов, чем JTAG и могут выполнять такие вещи, как установка точек останова во время работы). Я использую бесплатную кикстарт-версию встроенной рабочей среды IAR - она имеет ограничение в 32 КБ, что хорошо для меня, но учтите, что обновление размера кода обходится дорого. Множество людей, кажется, делают хорошо с GCC / Winarm. Некоторые компоненты Cortex (например, LPC1343) могут загружать прошивку с USB-накопителя с помощью встроенного загрузчика. Доступность запчастей, как правило, хорошая - я никогда не пытался найти запас. Для деталей NXP также доступно множество девбордов / прорывов.
источник
ARM, ARM, ARM.
ARM лицензирует свои процессорные ядра многим компаниям. Это означает, что вы найдете хорошие инструменты, поддержку и документацию из более чем одного источника.
PIC, AVR и MSP430 страдают от проблемы полной собственности одной компании.
Помните о микроконтроллерах ARM, что Cortex-M3 от NXP будет ближе к Cortex-M3 от ST или Luminary, чем ARM9 или ARM7TDMI от NXP. Чаще всего компиляторы, отладчики и программисты являются общими для ядер, а не для производителей.
Получение набора инструментов Codesourcery GCC ARM и дешевого ключа ARM JTAG поможет вам в этом.
источник
Я бы пошел на NXP. Вскоре Cortex-M3 стал стандартом для контроллеров ARM (я предполагаю, что под Freescale вы имеете в виду Coldfire). Начиная с ARM7TDMI NXP также имеет традицию широкого выбора устройств на выбор.
Что касается программиста для NXP, IMO должен выполнять любой программист JTAG (CMIIW).
В
настоящее время я читаю о mbed , который выглядит как самый простой способ начать работу с NXP Cortex M3 (используется контроллер LPC1768). Вы программируете / компилируете онлайн (таким образом, Linux не является проблемой), и вы программируете через USB (устройство выглядит как запоминающее устройство, на которое вы можете скопировать скомпилированную программу). Программист не требуется. Программы, написанные для mbed, должны быть напрямую переносимы на LPC1768 на других платах.
источник
Попробуйте 16-битный PIC24 и dsPIC. Многие из них доступны в DIL, и они обеспечивают до 40 MIPS. Доступно бесплатное программное обеспечение для разработки, а отладчик / программист PICkit 3 стоит довольно дешево - 50 долларов. Следующая версия MPLAB будет иметь поддержку Linux, доступна бета-версия.
источник
Я думал, что вы сможете получить бесплатные инструменты для ARM. Программирование должно быть выполнимо из последовательного загрузчика или (открытого) JTAG. Некоторые микросхемы и модули STM32 и NXP, на которые я смотрел, оставили у меня такое впечатление.
Мне также напомнили об этом вопросе .
источник
Если вы действительно хотите использовать 32-битную версию, попробуйте PIC32. Высокая доступность от Microchip. Для отладки Linux MPLAB X находится в бета-версии 4 и поддерживает Linux, Windows и Mac OS X. Я думаю, вам также понадобится PICkit 3 или аналогичный программатор за 50-60 долларов.
Однако я бы больше склонялся к 16-битным dsPIC и PIC24, потому что они намного дешевле, их можно отлаживать с помощью PICkit 2 и их легко программировать. Также они доступны в DIP-пакетах, хотя для вас это не имеет значения (?) Я слегка склонен к ним, учитывая, что я использую их в своем проекте.
источник
Только 32-битный процессор в настоящее время производятся в корпусе DIP является Parallax Propeller . (Этот же чип доступен и в гораздо меньших корпусах с 44-контактным QFP и 44-контактным QFN, все с 32 контактами ввода / вывода общего назначения). Для него также есть несколько инструментов разработки, которые работают под Linux .
Таким образом, он легко соответствует вашим первым двум критериям и большинству (увы, не всем) ваших оставшихся критериев.
источник
Посмотрите на СЭЗ Домино . Он не отвечает всем вашим требованиям, но предлагает довольно много, если вам не нужен минимально возможный контроль уровня.
источник
Чипы серии Cypress PSoC имеют комбинацию функций, которых я не видел ни в одной другой микросхеме.
Чип PSoC5 включает в себя 32-битный ARM Cortex M3, но, насколько я могу судить, все они упакованы в нечто вроде TQFP100. Чипы серии PSoC1 и PSoC3 включают в себя множество микросхем, упакованных DIP, но все они имеют одно 8-битное ядро или другое.
В дополнение к процессору, чип также имеет программируемое соединение, похожее на небольшую FPGA, и несколько встроенных аналоговых операционных усилителей.
http://www.psocdeveloper.com/
источник
ARM Atmel могут отвечать всем требованиям, в основном
Они входят в TQFP, и вы можете использовать один из меньших по 64-контактный.
Проверьте
Я разрабатываю исключительно в Linux
GCC ARM Toolchain, который теперь легче настроить с помощью сценариев сборки, таких как набор инструментов summon arm.
Вы меня там. Предположительно, кто-то может настроить Eclipse или Kdevelop для выполнения этой работы, но я не пробовал. Я использую vim и kate.
Программирование и компиляция обойдутся вам примерно в 100 долларов, возможно, для создания минимальной платы. Микросхемы поставляются со встроенным загрузчиком в ПЗУ, который позволяет программировать микросхему. Вам не нужен отладчик для его программирования. Вы можете получить фирменный (и заблокированный) Segger Atmel примерно за 100 $. Если вы можете себе это позволить, я бы посоветовал вам не покупать закрытый, а заплатить 200 или 300 за разблокированный. Есть и другие варианты, которые гораздо дешевле, которые я не пробовал. Usbprog выглядит очень многообещающе.
Совершенно уверен, что его там, хотя вы должны проверить, чтобы быть уверенным. Я им не пользуюсь, поэтому не уверен, есть ли у всех.
Поддержка USB есть. Поддержка Ethernet должна быть добавлена извне. Хотя есть множество примеров, из которых можно выбирать.
источник
Я использую демонстрационную плату 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.
В любом случае, удачи с тем, что вы выберете.
источник
Вот мои варианты:
источник