使用高级语言开始硬件编程有哪些好的选择?

时间:2008-12-14 21:09:54

标签: embedded hardware

我最近对硬件编程感兴趣,我想知道什么是我作为电子业余爱好者的最佳选择。我不是在寻找汇编器和创建电路板的低级编程。

相反,我想要一些API用于高级语言,最好是C#和预制组件,如USB接口板,我可以插入简单的传感器,电机等,并构建一些“小工具”,也许是一个简单的机器人和等......

到目前为止,我已找到Phidgets,但只有少数传感器,而且价格相当昂贵。

所以,问题是:您是否了解具有良好API和大量传感器的任何其他“平台”?

12 个答案:

答案 0 :(得分:9)

看看Arduino。使用Make上列出的内容可以做很多有趣的事情。

答案 1 :(得分:4)

如果你想使用C#,你看过.NET Micro Framework吗? SDK是免费的,插入Visual Studio,附带一个完整的模拟器,并且有几个开发套件,价格非常合理。

Tahoe更多,但它还附带一个TFT显示屏(并支持它),所以价格仍然不合理。

对于传感器,所有这些都支持I2C和SPI接口,因此可用的外围设备数量已达数千个。你可能不得不为它们中的一些(电阻器等)做一些基本的焊接,但如果这样做会吓到你,那么你可能会走错路。

答案 2 :(得分:3)

检查我关于微控制器here的问题。另外:How to Start programming microcontroller.

我已经为流行的微控制器Arduino订购了chritsmas。您无法使用C#进行编程,但它们具有超出常规Assembly / C的框架,这使得交互更加简单。

答案 3 :(得分:2)

难以击败ArduinoProcessing

答案 4 :(得分:2)

多年来,我一直是Microchip Technology的PIC系列微控制器的忠实粉丝。他们拥有各种微控制器,具有不同的功能,从超小型到集成无线。您可以以50美元的价格购买其中一款PicStart套件,其中包括软件,编程设备和示例微控制器。它们可以用C,汇编,BASIC等编程。

我最初开始使用Parallax基本印章进行微控制器编程,但它们相当昂贵(50美元ea,而PIC为1-6美元)并且只能用BASIC编程,虽然它们很容易使用。

答案 5 :(得分:1)

还有Bug Labs产生了许多可以连接在一起构建任意小工具的硬件模块。模块看起来很光滑(但我现实中还没有看到它们)。

答案 6 :(得分:1)

Lego Mindstorms怎么样?它们有一个运行VM的32位CPU,甚至支持多线程。 VM可以用汇编程序编程。

我不久前和他们一起玩过,这是一次非常有趣和有趣的体验。

答案 7 :(得分:1)

查看“Coin-Cell-Powered Embedded Design”(以a download的形式提供,PDF,7 MB)。这是一本用于编程微控制器的免费教科书。不过,董事会是80美元。

答案 8 :(得分:1)

BASIC Stamp是要走的路。

答案 9 :(得分:0)

我不知道在没有真正处理硬件的情况下你能够进入多少“硬件编程”。 C#只会让你在硬件领域走得太远,因为大多数东西都是C语言,有时候是C ++。

如果您决定要探索硬件设计,Digilent的Nexys 2板是了解使用VHDL或Verilog进行硬件设计的绝佳方式。如果您想扩展到微控制器,Xilinx Embedded Developer Kit允许您使用将在硬件中实现的MicroBlaze软核处理器自定义配置微控制器系统,并提供IDE来编写将在嵌入式平台上运行的C代码。

Digilent还有一系列扩展板,如温度传感器,视频解码器,操纵杆,伺服控制器等,可与其可编程逻辑板一起使用。

答案 10 :(得分:0)

我会得到其中一个.NET芯片并使自己成为.NET咖啡机。或者有点像这样,获得PIC只是没用,你需要知道像C和汇编程序这样的低级语言。

Java有类似的组件。

请参阅:Basic USB - Using Microchip Stack and C#.NET - Hardware

答案 11 :(得分:0)

如果您将使用的嵌入式系统具有ANSI C编译器,则可以运行Lua(www.lua.org),您只需将源代码编译到您的设备即可。我曾经和一位语言开发人员交谈,他说他有一个邮件列表网络服务器(也用Lua编写),用一段时间在手机上运行的语言只是为了测试它。

使用Lua,您可以使用C或C ++连接任何设备的传感器,并从Lua高级代码中调用函数。