Подтвердить что ты не робот

Лучшая платформа для обучения встроенному программированию?

Я ищу, чтобы узнать о встроенном программировании (в основном, в C, но я надеюсь тоже намазать свой ASM), и мне было интересно, какая будет лучшая платформа. У меня есть опыт использования Atmel AVR и программирования их с помощью stk500 и нашел, что это относительно легко. Мне особенно нравится AVR Studio и отладчик, который позволяет просматривать это состояние регистров.

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

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

Последнее, что я бы искал, это панель для прототипирования/программирования, такая как STK500 с несколькими кнопками и т.д.

Спасибо =]

4b9b3361

Ответ 1

"встроенное программирование" - очень широкий термин. AVR довольно хорош в этой категории, но это на шаг ниже ARM, поскольку он как проще в использовании, так и менее мощный.

Если вы просто хотите поиграть с ARM, купите Nintendo DS или Gameboy Advance. Это очень дешево по сравнению с аппаратным обеспечением внутри (чудеса массового производства), и у них есть бесплатные инструментальные средства разработки, основанные на gcc, которые могут скомпилировать их.

Если вы хотите играть со встроенным linux, BeagleBoard ищет хороший вариант, всего $150, и он имеет тонну функций.

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

Ответ 2

Если вы просто хотите поиграть с ним, я бы предложил платформу Arduino (http://www.arduino.cc). Он основан на ATmega168 или ATmega8, в зависимости от версии. Он использует C-подобный язык и имеет свою собственную среду IDE.

Ответ 3

Я сам работал во встроенном программировании уже 9 лет и имею опыт работы с TI MSP430, Atmel AVR (пара ароматов) и скоро использую ARM.

Мое предложение - выбрать что-то, что имеет некоторые дополнительные функции в процессоре, таком как контроллер ethernet и CAN-контроллер, даже если вы можете сделать два или три. Встроенные устройства приятно работать, но как только они смогут разговаривать с другими подобными устройствами через CAN или подключаться к сети, они могут стать намного веселее, чтобы играть.

Ответ 4

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

Ответ 5

ADI Blackfin - еще один вариант, поскольку он представляет собой совершенно простую архитектуру для программирования, но может также сделать довольно здоровенный материал DSP, если вы выберите этот маршрут. Это помогает тому, что язык ассемблера вполне нормален.

Планы Blackfin STAMP - это недорогой (~ $100 последний раз, когда я проверял) способ, и они поддерживают бесплатные инструменты GCC и uClinux.

Какую бы архитектуру вы ни выбрали, я определенно рекомендовал бы сначала загрузить инструментальную цепочку \SDK и посмотреть примерные проекты и учебные пособия - как правило, немного поиграть. Вы часто можете ознакомиться с архитектурой посредством моделирования, даже не касаясь какого-либо оборудования.

Ответ 7

Хорошим выбором будет PIC18 от Microchip

  • У него довольно много материалов, документации, учебных пособий и проектов в Интернете

  • Бесплатный IDE и компилятор.

  • вы можете вытащить свою собственную флеш-запись за несколько минут. (Хотя для работы отладчика вам нужно работать больше)

  • Если вы студент (или имеете адрес электронной почты студента), Microchip отправит вам бесплатные образцы фишек. Таким образом, в основном вы можете иметь полную среду разработки практически ничего.

  • В отрасли широко распространены ПОС. В частности, как контроллеры для роботов по какой-то причине, хотя они могут сделать гораздо больше.

Ответ 8

Arduino кажется сегодня платформой выбора для новичков, хотя есть много других. Мне нравятся панели Olimex, но они не предназначены для новичков.

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

BTW, Assembler не используется так сильно, как раньше. Общее правило со встроенным - если у вас есть 4k памяти или больше, используйте C. Вы получаете переносимость, и вы можете быстрее развивать код.

Я полагаю, это зависит от вашего уровня мастерства и того, что вы хотите сделать с чипом. Я обычно выбираю, какой встроенный чип использовать доступными периферийными устройствами. Если вам нужен USB-порт, найдите один из встроенных USB-устройств, если вы хотите получить аналого-цифровой сигнал, найдите один с ADC и т.д. Если у вас есть простое приложение, используйте 8-битный, но если вам нужен серьезный номер хруст, перейдите на 32 бита.

Ответ 9

Я хотел бы предложить beagleboard от TI. На нем есть Omap3. Это процессор Cortex-A8 ARM11, C64x + DSP и видеоускоритель.

Плата не нуждается в дорогостоящем устройстве jtag. Последовательный кабель SD-Card - это все, что вам нужно для начала работы. Плата стоит всего 150 долларов, и есть очень активное сообщество.

www.beagleboard.org

Ответ 10

На ваш вопрос был дан ответ в этот вопрос.

Чтобы добавить к этому, индустрия встроенных процессоров очень сегментирована, у нее нет такого крупного игрока, как Intel/x86, для "настольной" процессорной индустрии. Процессор ARM имеет большую долю, поэтому MIPS я считаю, и есть много более мелких микроконтроллеров, таких как чипы (например, MSP430 и т.д. От TI).

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

Ответ 11

Посмотрите Processing и соответствующие платы Arduino и Wiring.

Ответ 12

Если вы просто хотите повеселиться, попробуйте чип Parallax Propeller. Игровая платформа HYDRA выглядит как взрыв. Там компилятор $100 C для него сейчас.

Я начал с BASIC штампов, перешел через чипы SX и PIC в 8051, затем 68332s, различные DSP, FPGA-мягкие процессоры и т.д.

8051s более полезны в реальном мире... вещи не исчезнут. Там ТОНЫ производных и сумасшедшие вещи для них. (Просто держитесь подальше от DS80C400) Энергетическая индустрия абсолютно полна их.

Начните с чего-то крошечного. Если у вас есть внешняя оперативная память и множество регистров... какая разница между этим и SBC?

Ответ 13

Много лун назад я работал с 8-битерами, такими как 68HC05 и Z80, позже AVR и MSP430 (16-бит). Однако самые последние проекты были на ARM7. Несколько производителей предлагают контроллеры ARM во всех цветах и ​​размерах (ну, не совсем цвет).

ARM (7) заменяет 8-битную архитектуру: она более совершенна (32-разрядная RISC в более быстрых циклах команд, чем большинство 8-биттеров), имеет больше памяти и доступна с несколькими IO-конфигурациями. Я работал с контроллерами NXP LPC2000, которые также недороги (< 1 USD для 32-готтера!).

Если вы находитесь в Европе http://www.olimex.com/dev/index.html, есть несколько хороших недорогих плат разработки. Работает и в остальном мире: -)

Ответ 14

Чтобы испытать забавный проект, посмотрите xgamestation

Но для более промышленного использования программирования с одним чипом решения посмотрите PIC

Ответ 15

Для моего курса Computer Architecture мне пришлось работать как с ПОС, так и с AVR; по-моему, с ПОС было легче работать, но, возможно, потому, что мы работали больше всего, и у нас было больше времени, чтобы привыкнуть. Мы использовали AVR, может быть, только пару раз, поэтому я не мог понять его, но он также не был слишком сложным или, по крайней мере, не более неприятным, чем другой.

Я думаю, вы также можете заказать микропроцессорные образцы с сайта Microchip, чтобы вы могли начать с этого?

Ответ 17

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

Вы можете начать с дешевого программиста, такого как lady-ada USBTinyISP (22 доллара США за комплект), который может подключить питание с 5 В от USB-порта. Получите бесплатные инструменты WinAVR (GCC) и AVRStudio и получите небольшой проект, работающий в кратчайшие сроки.

Да, у AVR есть ограничения, но разработка программного обеспечения для микроконтроллеров в основном связана с управлением ресурсами и решением этих проблем. Вряд ли вы столкнетесь с такими проблемами, как нехватка пространства стека, ОЗУ или ПЗУ, когда вы делаете проекты hobbist для мощных платформ ARM.

Тем не менее, ARM также является отличной платформой, которая широко используется в отрасли, однако для обучения я настоятельно рекомендую AVR.

Ответ 18

Я бы предложил Microchip PIC18F. Я только начал развиваться для них с помощью встроенного эмулятора RealICE, но pickit2 - достойный отладчик по цене. Вы можете сказать это и для AVR, но для устройства во всем Интернете есть большое количество. У меня было встроенное USB-устройство, работающее в течение нескольких дней из-за всей связанной с PIC болтовни.

Единственное, что мне не нравится в ПОС, это то, что большая часть кода примера ОЧЕНЬ переплетается с демонстрационными платами. Это может затруднить вырезку разделов, которые вам нужны, и все еще иметь приложение, которое будет создавать и запускать для вашего приложения.

Ответ 19

Texas Instruments выпустила очень интересный комплект для разработки по очень низкой цене: eZ430-Chronos Development Tool содержит MSP430 с дисплеем и различные датчики в спортивных часах, в том числе программист для отладки usb и точка доступа радиосвязи usb за 50 $

Существует также wiki, содержащий много и много информации.

Я уже создал предложение packexchange для набора eZ430-Chronos.

Ответ 20

Вам следует попробовать учиться на наборах разработчиков, предоставляемых Embedded Artists. После того, как вы получите комплект, проверьте их учебные видеоролики и видеоролики, предоставленные NXP, которые не так подробно, как они могут быть, но они охватывают множество вещей. Проблемы с изучением ARM в качестве вашей первой архитектуры и попытки сделать что-то практическое все:

  • Вам нужно купить dev. комплект.
  • Вам нужна хорошая книга, чтобы узнать сборку ARM, потому что рано или поздно вы столкнетесь с кодом запуска ARM, что вполне подходит для новичок. В книге, которую я упомянул, также говорится о некоторых программах программирования на С.
  • Объедините книгу, упомянутую выше, с руководством пользователя для вашего конкретного процессора, например этот. Удостоверьтесь, что вы это понимаете, изучая это в сочетании с вышеупомянутой книгой, это единственный способ изучить ваш ARM-процесс. в деталях.
  • Если вы хотите сделать переход от сборки ARM к программированию на С, вам нужно будет прочитать эту книгу, которая охватывает другой процессор ARM, но легче для начинающего C. Нижняя сторона заключается в том, что он не объясняет сборку ARM, но для этого вам нужна первая книга.

Нет простого способа.

Ответ 21

mikroElektronika имеет хороший ARM доски и C, Pascal и Basic compilers, которые могут удовлетворить ваши требования.