Минимальные требования к схеме ARM


13

Я сделал некоторые разработки с ATMega, и я хочу расширить свой кругозор. У меня есть пара чипов серии Cortex M4 и я хотел бы сделать ARM эквивалент Breadboarduino

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

Есть ли хорошие ресурсы для определения минимально необходимых компонентов для работы и, в идеале, для программирования чипа ARM?

ОБНОВИТЬ:

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


7
Можете ли вы сказать нам, какие устройства у вас есть? Ссылка на таблицу будет отличной.
Стивенвх

Я надеюсь, что это не пакет WLCSP, для которого вы хотите протравить свою собственную печатную плату: BGA с шагом 0,4 мм! : - /
stevenvh

@stevenvh Я не такой смелый. Это пакет LQFP 144
ZnArK

1
Проверьте серию NXP LPC, они (все?) Имеют встроенный последовательный загрузчик. lpc21isp - хороший инструмент для ПК. LPC1114 даже доступен в DIP28! Lpc1343 имеет встроенный загрузчик usb (!) (Звучит неплохо, но немного неудобно в использовании IMO).
Воутер ван Оойен

1
@Wouter - Да, я также обнаружил этот DIP (см. Ответ). LPC1114 - единственный Cortex - независимо от того, какой производитель указан в Digikey и доступен в DIP.
Стивенвх

Ответы:


9

Это действительно зависит от используемых вами чипов - вы не указали, какой из них вы получили. Как правило, вам понадобится как минимум кристалл, развязка колпачков и логика сброса. Интерфейс программирования может быть простым интерфейсом JTAG.

Но все это должно быть указано в спецификации чипов.

Обновление (для STM32F407):

Посмотрите на следующие страницы в листе данных

  • 23ff. для необходимых напряжений (1,8-3,6 В, так что вам нужен регулятор), и как использовать внутренний регулятор (потянув штифт PDR_ON высокий)
  • 69ff. для распиновки
  • 69 + 74 для схемы электропитания (это самые интересные страницы, так как они показывают соединения электропитания и необходимые конденсаторы)

Вам не понадобится схема сброса (она встроена - см. Стр. 23) или генератор (встроенный генератор 16 МГц выбран при запуске, см. Стр. 22). Таким образом, использование разделительной доски LQFP144 (например, от futurlec (см. Внизу страницы) может быть действительно достаточно.

Вы также можете взглянуть на схему платы STM32F4DISCOVERY (см . Руководство пользователя , стр. 33). То, что вы видите, это базовая схема - и она даже содержит внешние кристаллы.


Спасибо за ваш вклад. Я задаю этот вопрос, потому что таблица данных огромна, и, честно говоря, я не все понимаю в ней. Я знаю, что реальным решением было бы получить степень EE, но моя текущая карьера и другие обязанности не делают такую ​​возможность сейчас. Есть ли какие-нибудь открытые аппаратные проекты, которые бы имели схему своей схемы ARM. Я уверен, что смогу разобрать это и создать полезный проект.
ZnArK

1
Приведенная выше демонстрационная плата STM поставляется со схемой, поэтому вы можете начать с нее. В противном случае Olimex открывает свои схемы, например, для этой платы M4 .
2012 г.

Я этого не осознавал. Спасибо за информацию. Очень полезно,
ZnArK

10

Вы уверены, что хотите сделать это для Cortex-M4? Это большой скачок от AVR, и я не понимаю, как бы вы использовали все функции, которые он предоставляет. Для начала Cortex-M4 обычно поставляется в большом пакете, обычно более 80 контактов для деталей начального уровня, и 200+ не является исключением, подумайте QFP или BGA. Собираетесь сделать разделочную доску с двумя рядами по 40 контактов на макете?

Cortex-M4 также рассчитан на высокую скорость: обычно от 120 МГц до 200+ МГц. ОК, вам может не понадобиться проектировать вашу PCB для этих скоростей, если вы используете встроенную ФАПЧ. Но как насчет периферийных устройств, таких как USB или Ethernet?

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

Если вы действительно хотите , чтобы идти вперед с Cortex-M4 можно сделать с минимальным внешним оборудованием. Например, NXP LPC407x имеет внутренний RC-генератор, который является генератором по умолчанию при сбросе, поэтому вам даже не нужен кристалл. Схема сброса и правильная развязка блока питания - все, что вам нужно для его запуска и работы.

Для Cortex-M0 стоит взглянуть на NXP LPC111x . Конечно, он не поставляется с большим объемом памяти, но доступен в пакете DIL-28 , что является редкостью для ARM. В качестве альтернативы вы можете использовать плату разработки, такую ​​как LPCXpresso ,

введите описание изображения здесь

где правая половина - это доска приложений, которая может быть отделена от LPC-ссылки. Как вы можете видеть, для приложения вряд ли требуется какое-либо внешнее оборудование. И если вы припаяете набор заголовков на нем, вы можете подключить его к макету.


Отличная обратная связь. Я не сильно настроен на использование Cortex-M4. Я буду смотреть на модели M3 / M0. Я проверю точный чип и пакет, который у меня есть, и обновлю вопрос.
ZnArK

1
Я сделал скачок с PIC18 на LPC2100 (это было в 2008 году, теперь ARM7 вытеснил Cortex-M3). Это был большой скачок в производительности, но это не был большой скачок в сложности оборудования на уровне платы.
Ник Алексеев

1
@ Ник - Я тоже использовал несколько частей LPC2000, но, как вы говорите, они заменены Cortex-M3. Cortex-M4 - это другая лига.
Стивенвх

8

Как говорит Стивен, это довольно большой скачок в ARM от 8-битного микро, так что ожидайте немало обучения / времени, потраченного в пути.
Я также не стал бы использовать M4 для вашего первого ARM, просто потому, что он не был слишком длинным и там меньше поддержки / информации для него. Я думаю, что M3 или M0 - лучший выбор, и с ним будет много проблем.

Вы, конечно, можете сделать свою собственную доску, но, возможно, было бы лучше сначала взять небольшую / дешевую плату для разработчиков. В разработке есть много вариантов, от бесплатных (eclipse + GCC + OpenOCD) до дорогих (Keil, Rowley и т. Д.). Лично я использую IDE Raisonance Ride7 и инструменты с серией STM32 ARM M3 / M4s, которая немного дешевле. чем Кейл / Роули, но достаточно хорошо.

Взгляните на одну из простых плат разработчиков от таких, как ST, Olimex и т. Д. этой плате разработчиков представлена ​​самая простая схема, которую я смог найти, для STM32 Cortex-M3.

введите описание изображения здесь


Отличное предложение. В пути у меня есть доска для разработчиков (Stellaris Launchpad). Я планирую ознакомиться с этим, прежде чем создавать свою собственную доску. Я также обновил свой пост с информацией об оборудовании.
ZnArK

Обратите внимание, что плата стоит примерно в 3 раза дороже, чем собственное предложение ST.
Крис Страттон

Новая панель запуска @ChrisStratton TI была доступна за 5 долларов . Это все еще может быть доступно. Жесткая цена, чтобы победить.
ZnArK

@ChrisStratton - да, я добавил это для схемы, а не цены (даже не проверял). У меня есть одна из плат обнаружения STM32F4, она действительно очень дешевая, но я подумал, что это может немного спутать все дополнительные компоненты и встроенный программатор STLink без «стандартного» соединения JTAG. Тем не менее, менее чем за 10 долларов (или что бы то ни было сейчас), вероятно, стоит взять и одну из них (может быть, версия M3 лучше, как уже упоминалось)
Оли Глейзер

Для простых встроенных проектов я считаю, что 4-контактный SWD гораздо удобнее, чем jtag. В его первоначальной форме вендора-блокировки-инструментов, возможно, это не так, но сейчас есть открытые решения для общения с адаптерами.
Крис Страттон

5

Arduino Due должен выйти довольно скоро:

из-за адруино

Чип это SAM3X8 Cortex-M3 от Atmel. Возможно, стоит подождать, если вы уже знакомы с досками в стиле Arduino и документацией в стиле Atmel. И поскольку он будет с открытым исходным кодом, чтобы удовлетворить требования Arduino, вы, конечно, можете использовать его в качестве макета.


Отличное предложение. Я знал, что это выходит, но не думал об использовании этой модели. Отличное предложение.
ZnArK

4

Я бы порекомендовал вам проверить Mbed на устройстве cortex-m3 с несколькими приятными периферийными устройствами, nxp предоставляет компилятор и множество библиотек и библиотек сообщества, действительно простой способ его программирования, и он уже находится в пакете для использования на макете. Я думаю, что это будет самый простой способ перехода с AVR на ARM.


2

Многие части ST могут, по крайней мере, если не использовать приемопередатчик USB, работать от своего внутреннего высокоскоростного генератора.

По сути, это означает, что ваша «схема» состоит из заглушек байпаса и нескольких резисторов для таких вещей, как сброс и завершение на интерфейсе SWD.

Электронные платы ST за $ 8-10 будут программировать детали, которые вы кладете на свою собственную плату через шину SWD; для них тоже есть инструменты с открытым исходным кодом, так что вы можете поместить операцию программирования прямо в ваш Makefile.

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


1
Думаю, 8-10 долларов не будет Cortex-M4. Можете ли вы указать, какие части вы думаете о? Также для пакета QFP-48? TIA
stevenvh

1
Cortex M3 ... они, как правило, делают каждую версию в нескольких пакетах, с которыми QFP-48 будет проще всего работать вручную.
Крис Страттон
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.