可以用.NET编程的酷硬件/设备?

时间:2010-07-08 20:15:40

标签: .net embedded hardware

我很想开始为外部设备和传感器编写托管代码。是否有任何可以使用.NET编码的设备?有什么建议吗?

编辑:我要做的主要事情是了解设备编程的工作原理。在我看来,没有比尝试做一些有趣和酷的事情更好的方法了。

15 个答案:

答案 0 :(得分:19)

答案 1 :(得分:14)

Netduino刚刚问世,它使用的是.NET Micro Framework: - > http://www.netduino.com/

答案 2 :(得分:11)

Microsoft Robotics

Coding4Fun: Blog& Developer Kit

答案 3 :(得分:8)

TinyCLR生成几个支持.Net Micro Framework的不同主板,最受欢迎的是Fez Domino

  

FEZ(Freakin'Easy!)是一个运行Microsoft .NET Micro Framework的小型开源板。这意味着,您可以使用免费的Microsoft Visual C#express下的C#编程语言更有效地编写代码。通过将FEZ Domino连接到其中一个屏蔽或许多可用组件,在几分钟内构建您的下一个项目。包括USB线。

     

已经包含了许多库,如FAT文件系统,线程,USB客户端,USB主机,UART,SPI,I2C,GPIO,PWM,ADC,DAC等等。

     

FEZ提供Arduino,BASIC STAMP等未提供的许多功能:

     
      
  • 基于Microsoft的.NET Micro Framework。
  •   
  • 在72Mhz NXP ARM处理器上运行。
  •   
  • 支持运行时调试(断点,变量检查,步进等)
  •   
  • 使用Visual C# 2010 Express Edition进行开发。
  •   
  • FAT,USB设备和USB主机等高级功能。
  •   
  • 轻松升级到EMX等硬件。
  •   
  • 开源硬件设计文件。
  •   
  • 使用现有的护罩和支架板。
  •   
  • 基于USBizi chipset(理想用于商业用途)。
  •   
  • FEZ Mini BS2引脚输出兼容额外的I / O.
  •   
  • FEZ Domino Arduino引脚输出兼容额外的I / O.
  •   

答案 4 :(得分:6)

答案 5 :(得分:3)

两种产品可以非常轻松地与外部设备进行交互:PhidgetsSerializer。 Phidg​​ets附带一个简单的.NET API,包括各种硬件和软件传感器和控制器。对于很多很酷的Phidg​​ets项目和一般的.NET硬件项目,请查看Coding4Fun Blog

另一方面,Serializer面向机器人技术,但也提供了一个出色的.NET API。为了演示Serializer,Clint Rutkas(Coding4Fun的负责人之一)在Robot Magazine Issue 19中有一篇很棒的文章。

另一方面,

TinyCLR在其FEZ(Freakin'Easy)系列中提供了三种不同的设备,可以使用.NET框架进行编程,并独立于PC运行,以与传感器和设备连接。 / p>

答案 6 :(得分:2)

您应该查看Arduino或其他变体 - 它可以与USB端口连接,控制器本身也可以用C风格语言编程。

然后,您可以(基本上)与您想要的任何传感器/设备/工具连接,并且您可以使用任何可以与USB连接的语言编写代码。

答案 7 :(得分:2)

答案 8 :(得分:2)

Microsoft .NET Micro Framework - > http://www.microsoft.com/netmf/default.mspx

答案 9 :(得分:2)

我有很多有趣的OCZ NIA编程。它本质上是EEG,允许您在软件中使用生物反馈。我写了一些代码,将你的alpha和beta脑波转换为MIDI和DMX,用于合成器和灯光控制。可能性无穷无尽。

它使用许多设备使用的USB HID,因此它是一个很好的介绍。在http://code.google.com/p/nia-brew/处有一些代码,你会发现OCZ NIA论坛对入门非常有帮助。

答案 10 :(得分:1)

列表将是巨大的,我没有看到为什么设备无法由.NET控制的任何原因。在不得已的解决方案中,使用DllImport和直接IoControl调用设备驱动程序(假设您知道接口)可以正常工作。

答案 11 :(得分:1)

Tinkerforge

我还没有尝试过这个,但我想做更多的硬件编程,而我正在考虑使用Tinkerforge。

来自Wikipedia page 的简短介绍(由我强调)

  

Tinkerforge是一个可堆叠的微控制器构建模块(Bricks)平台,可以控制不同的模块(Bricklets)。该   可以扩展构建块的主要通信接口   使用Master Extensions。 硬件可以通过外部控制   用C,C ++,C#,Object Pascal,Java,PHP,Python,Ruby编写的程序   和VB.NET通过USB或Wifi连接,并在Windows上运行,   Linux和Mac OS X。这种非嵌入式编程方法消除了   典型的要求和限制(开发工具,有限   常规嵌入式的RAM和处理能力的可用性   软件开发(cfr Arduino)。 Tinkerforge硬件和软件   都是开源的,所有文件都托管在GitHub上。

据我所知,这比Arduino更高级。
我可以从使用Arduino中了解更多有关实际硬件编程的知识,但我不想/需要深入了解低级硬件编程 - 我只是想用硬件创建一些很酷的

答案 12 :(得分:0)

已经another answer提到了USB导弹发射器...但是,那里链接的代码已经超过六年了,我无法使用my model

所以我编写了自己的库(在.NET 4.0中):MissileSharp
对于任何感兴趣的人,完整的源代码是here

这是我第一次尝试为硬件设备编写代码 出于学习目的,我查看了project中链接的the other answer的代码,以及可以从vendor's site下载的“官方”控制软件的代码({{3 - 源代码不是直接可用的,但软件是用.NET编写的,因此您可以使用Reflector,ILSpy或类似工具查看代码。
我使用direct link将实际命令发送到设备。

答案 13 :(得分:-1)

Arduino是我认为最好的之一。

答案 14 :(得分:-1)

我知道你说.Net,但Arduino是一个有趣的设备。 http://www.arduino.cc/