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

Прохладное оборудование/устройства, которые можно запрограммировать в .NET?

Мне бы хотелось начать писать управляемый код для внешних устройств и датчиков. Есть ли какие-либо устройства, которые приходят на ум, которые могут быть закодированы против использования .NET? Любые предложения?

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

4b9b3361

Ответ 2

Netduino только что вышел, и он использует .NET Micro Framework: → http://www.netduino.com/

Ответ 4

TinyCLR создает несколько разных плат, поддерживающих .NET Framework, наиболее популярным из которых является Фес Домино:

6fyvw.jpg

FEZ (Freakin 'Easy!) - это крошечная плата с открытым исходным кодом, работающая под управлением Microsoft.NET Micro Framework. Это означает, что вы можете писать код с гораздо большей эффективностью, используя язык программирования С# под бесплатным Microsoft Visual С# express. Создавайте свои проекты за считанные минуты, подключая FEZ Domino к одному из экранов или к множеству доступных компонентов. Включает USB-кабель.

Многие библиотеки уже включены как файловая система FAT, потоковая передача, USB-клиент, USB-хост, UART, SPI, I2C, GPIO, PWM, ADC, ЦАП и многие другие.

FEZ предлагает множество функций, не найденных в Arduino, BASIC STAMP и других:

  • На основе Microsoft.NET Framework.
  • Работает на 72Mhz процессорах NXP ARM.
  • Поддержка отладки времени выполнения (контрольные точки, проверка переменных, степпинг и т.д.).
  • Используйте Visual С# 2010 Express Edition для разработки.
  • Расширенные возможности, такие как FAT, USB-устройство и USB-хост.
  • Легко обновляется до аппаратного обеспечения, такого как EMX.
  • Файлы дизайна аппаратного обеспечения с открытым исходным кодом.
  • Используйте существующие щиты и держатели.
  • На основе чипсета USBizi (идеально подходит для коммерческого использования).
  • FEZ Mini BS2, совместимый с дополнительные входы/выходы.
  • FEZ Domino Arduino pin-out совместим с дополнительными вводами/выводами.

Ответ 6

Два продукта, которые упрощают взаимодействие с внешними устройствами, Phidgets и Serializer. Phidgets поставляется с простым .NET API и включает в себя множество аппаратных и программных датчиков и контроллеров. Для многих интересных проектов Phidgets и .NET-приложений в целом, посмотрите Блог Coding4Fun.

Сериализатор, с другой стороны, ориентирован на робототехнику, но также имеет отличный .NET API. Для демонстрации Сериализатора есть замечательная статья в Журнал Robot Magazine Issue 19 от Clint Rutkas (один из людей, ответственных за Coding4Fun).

TinyCLR, с другой стороны, предоставляет три различных устройства в своей серии FEZ (Freakin 'Easy), которые могут быть запрограммированы с использованием платформу .NET и работать независимо от ПК для взаимодействия с датчиками и устройствами.

Ответ 7

Вы должны посмотреть на Arduino или какой-нибудь вариант - он может взаимодействовать с USB-портом, а сам контроллер запрограммирован на языке C-стиля.

Затем вы можете взаимодействовать (в основном) с любым датчиком/устройством/инструментом, который вы хотите, и вы можете писать код на любом языке, который может взаимодействовать с USB.

Ответ 10

Мне было очень весело программировать с OCZ NIA. По сути, ЭЭГ позволяет использовать биологическую обратную связь в вашем программном обеспечении. Я написал код, который переводит ваши альфа-и бета-волны в MIDI и DMX для синтезатора и управления освещением. Возможности, хотя и бесконечны.

Он использует USB HID, который использует многие устройства, поэтому это было хорошее введение. В http://code.google.com/p/nia-brew/ имеется несколько кодов кода, и вы найдете форумы OCZ NIA очень полезными при запуске.

Ответ 11

Список будет огромным, я не вижу причин, по которым устройство не могло контролироваться .NET. В последнем случае решение, использующее DllImport и прямые вызовы IoControl для драйверов устройств, (предполагается, что вы знаете интерфейсы) работают хорошо.

Ответ 12

Tinkerforge

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

Краткое введение с страницы Википедии (выделение мной):

Tinkerforge - это платформа штабелируемых блоков микроконтроллеров (Bricks), которые могут управлять различными модулями (Bricklets). первичный коммуникационный интерфейс строительных блоков может быть расширен используя мастер-расширения. Аппаратное обеспечение может управляться внешним программы, написанные на C, С++, С#, Object Pascal, Java, PHP, Python, Ruby и VB.NET через соединение USB или Wifi и работает в Windows, Linux и Mac OS X. Этот подход, не встроенный в программирование, устраняет типичные требования и ограничения (средства разработки, ограниченные доступность ОЗУ и вычислительной мощности) обычных встроенных разработка программного обеспечения (cdr Arduino). Оборудование и программное обеспечение Tinkerforge оба являются Open Source, а все файлы размещены на GitHub.

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

Ответ 13

Уже есть еще один ответ, в котором упоминается USB-пусковая установка USB... однако связанный с ним код старше шести лет, и я не мог заставить его работать с моя модель.

Итак, я написал свою собственную библиотеку (в .NET 4.0): MissileSharp
Для всех, кого интересует, полный исходный код здесь.

Это была моя первая попытка написать код для аппаратного устройства.
В целях обучения я рассмотрел код проект, связанный в другом ответе, и в коде "официального" программного обеспечения управления, которое вы можете загрузить с сайта (прямая ссылка - исходный код не доступен напрямую, но программное обеспечение написано на .NET, поэтому вы можете посмотреть код с помощью Reflector, ILSpy или аналогичного инструмента). < ш > Я использовал HidLibrary для отправки фактических команд на устройство.

Ответ 14

Ардуино - один из лучших, я думаю.

Ответ 15

Я знаю, что вы сказали .Net, но Arduino - забавное устройство, с которым можно поиграть. http://www.arduino.cc/