Аппаратное программирование - Практическое обучение

StackOverflow https://stackoverflow.com/questions/1252428

Вопрос

Кроме того Arduino, какие еще существуют способы практического изучения аппаратного программирования?Есть ли в наличии какие-нибудь отличные комплекты, либо предварительно собранный робот, которого вы можете запрограммировать двигаться определенным образом, или делать определенные вещи, или что-нибудь подобное этому?

Это было полезно?

Решение

Атмель AVR и РИС . у обоих есть экспериментальные платы, к которым вы можете использовать припой, обычно у них есть пара кнопок и несколько лампочек, предварительно припаянных к этой области.Это позволяет вам запрограммировать / прошить микропроцессор и поиграть с выходными выводами.Вы можете либо писать программы на ассемблере , либо C.

У Parallax есть несколько комплектов.У них есть две линейки продуктов, подходящих для "игры вокруг да около"., Базовый штамп и что - то под названием Пропеллер.Первый представляет собой небольшой микропроцессор, который запускает программы, написанные на Basic (немного отвратительно ;)), а второй запускает нечто, называемое Spin или assembly (очевидно, после компиляции).)

Я бы выбрал либо AVR, либо PIC.Я делал PIC, но я слышал хорошие вещи об AVR, кажется, они поставляются с лучшим программным обеспечением.

Другие советы

На первый взгляд VPL от Microsoft звучит неплохо, но когда дело доходит до реального ИЗУЧЕНИЯ того, как работает аппаратное обеспечение, приходится ДОЛГО скрывать от вас эти детали.На самом деле это в значительной степени предназначено для людей, которые не программируют, и вызывает отвращение у тех, кто на самом деле написал встроенное программное обеспечение.ЕСЛИ вы просто хотите, чтобы что-то происходило, а не вникать в детали, это прекрасно, но если вы хотите перейти к металлу, например, программированию плат "Arduino", то это не для вас.

Если вы привыкли к чему-то вроде Arduino, то что-то вроде рисунка будет несложным переходом.В SparcFun Electronics есть всевозможные проекты типа DIY и доступное оборудование.Если в вашем районе есть приличный книжный магазин, я бы посоветовал поискать журнал "Circuit Cellar".Ежемесячно в project публикуются статьи для тех, кто хочет разобраться в аппаратных проектах, начиная от доморощенного программно-определяемого радиоприемника и заканчивая 3D-графикой на базе FPGA.(Фактически трассировка лучей) Обычно авторы описывают проект в статье и "ПОЧЕМУ" они приняли те решения, которые они приняли, описание и схемы аппаратного обеспечения и предоставляют ссылку на исходный код.

Cypress Semiconductor предлагает один из самых интересных встраиваемых процессоров на рынке и несколько высококачественных плат для разработки, выставленных на продажу.PSoC включает в себя возможность не только настраивать программное обеспечение, но и "подключать" аппаратные средства, настроенные программным обеспечением, такие как аналого-цифровые преобразователи, последовательный ввод-вывод, цифроаналоговое преобразование и различные усилители и фильтры.Это ДЕЙСТВИТЕЛЬНО классная концепция, и возможности PSoC "touch sensor" действительно использовались в нескольких моделях iPod.

Одна особенность программирования этих маленьких микропроцессоров заключается в том, что между вами и оборудованием не так много общего, вы можете видеть, как все работает на самом деле.Неважно, говорите ли вы о 8-разрядном микроконтроллере или четырехъядерном программном оборудовании Pentium, это в основном одна и та же концепция.Вы записываете в регистр, отображенный в память, для некоторого аппаратного обеспечения, такого как последовательный контроллер, и аппаратное обеспечение каким-то образом реагирует.Если вы программируете генератор частоты передачи данных на PIC или ПК, это в основном та же идея, вы записываете значение, которое будет использоваться в качестве коэффициента деления от заданного тактового сигнала для достижения заданной частоты передачи данных.Цифры и названия, может быть, и разные, но концепции те же.На ПК вам, возможно, придется сопоставить PCI-адрес карты, что добавляет некоторые сложности, но если бы вы заглянули под ОС, вы бы увидели, что это было сделано просто путем записи значений в регистры, аналогичные программированию PIC для использования другой "Страницы" памяти.Стоит ли учить 8-битный?Что ж, сегодня объем продаж маленьких 8-битных микропроцессоров составляет примерно 5 миллиардов долларов, и прогноз показывает рост этого рынка только в будущем.Я видел одну ссылку, в которой говорится, что в среднем автомобиле установлено 25 микроконтроллеров.Это не так уж плохо.

Я не много играл с ним, но iRobot - Робот выглядит довольно круто.

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

Там есть Платформа .NET Micro Framework.

Он невероятно прост в использовании / настройке, и для этого фреймворка создается множество аппаратных средств.

Вам следует взглянуть на Студия разработчиков Microsoft Robotics который поддерживает множество различных комплектов.

Мне всегда было любопытно о гумстикс.Это кажется более профессиональным, чем arduino, и предназначено для программиста Linux.Я не могу дать вам реального предложения, так как я никогда с этим не играл, но я бы определенно выбрал одну из этих игрушек, если бы мне пришлось делать и изучать какое-нибудь классное аппаратное программирование.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top