开始在计算机之外进行编程的最佳方式是什么?
我不是指主流的东西,比如带有 API 的手机。
请假设 C/C++ 的工作知识
嵌入式编程很有趣。您可以从Basic stamp 或PIC
之类的东西开始,或者由于您了解 c/c++,您可以使用真正的 microcrontroller,例如 Atmel AVR。查看蝴蝶或Arduino套件
Arduino背后有一个令人惊叹的项目和信息社区。
它不是微控制器,但Lego Minstorm是开始学习嵌入式编程细节的好地方。
最近听说了一个自称为“开源硬件开发”的BUG 。这是你要找的东西吗?
给自己买一个HP 10C 计算器,然后使用它极其小巧但实用的计算器语言对所有“编程 101”数学算法进行编程。让我想起了汇编程序,但事实并非如此。
给SparkFun一个机会。对我来说,伺服系统是我喜欢使用的东西。
您可以尝试使用BeagleBoard,尽管它是一种主流,但性能却非常令人印象深刻,售价仅为 149 美元。
我会研究(非官方)GBA 开发之类的东西,肯定有“图书馆”,但你可以去挖掘,只需将位插入特定地址并让事情发生。您无法获得比原始内存映射硬件访问更多的“无 API”。
也许从小型微控制器项目开始。这可能会有所帮助:http ://www.kmitl.ac.th/~kswichit%20/
你想编程什么样的东西?
听起来您可能对MAKE杂志以及他们的一些汇编感兴趣,例如Making Things Talk。有了一点基本电子产品的经验,您就可以按照他们的食谱做各种奇怪而有趣的事情。当你变得更舒服时,你可以开始修改他们的设计。
祝你好运, :)
我有个人经验,建议使用这些产品对 PIC 进行编程:
编程板 GCBasic (Open Source Basic)
PIC 很便宜(大约 2 美元),而电路板的价格约为 120 美元。
最近,我对 TI 的无线 USB 芯片/编程器印象深刻。你可以花 50 美元买到 2 个芯片和一个程序员。它还带有一个免费的 C 编译器。默认情况下,它带有一个示例远程温度程序。
我还推荐 AVR(8 位)和 Butterfly 或DB101套件。主要优点是有一个可用的 GCC 编译器,您可以通过串行端口对它们进行编程,而无需工具。还提供廉价的编程和调试工具。AVRFreaks中有一个非常强大的 AVR 社区
另一种选择是 ARM7 和 ARM9 微控制器(32 位)。如果您对使用操作系统(ARM7 的 ucLinux/FreeRTOS,ARM9 的 Linux)感兴趣,那么您应该这样做。当然有一个免费的 GCC 编译器。您可以在Olimex购买套件和工具
如果您想使用微控制器创建一个很酷的小工具作为学习体验,您可以查看 Rabbit 的入门套件(网站)。他们有各种带有 8 位微控制器的低成本套件,可以开始使用特定技术。
周围有很多可编程机器人。事实上,甚至一些 Roombas(自动吸尘器)也可以编程。如果您想教孩子如何编程,这特别好。
如果你有任天堂 Wii,你可以使用暮光公主破解它。你甚至不必买它。我刚租了几天。访问WiiBrew.org并查看那里可用的一些项目。大多数(如果不是全部)都是开源的,应该给你一个很好的起点。许多现有东西的端口,以及一些专门为 Wii 编写的原始程序。您当然会在您的计算机上进行编程,并将编译后的二进制文件传输到 Wii。我还没有研究过设置开发环境并为 Wii 构建开发环境有多难,但是如果您通过电子邮件向他们发送来自 wiibrew.org 的项目维护人员,他们可能会为您设置。
[编辑]
只是浏览了一下,我发现了 DevkitPro,它似乎是在许多不同的控制台和手持系统(包括 Wii)上进行开发的首选工具包。
为了让自己更轻松地进行嵌入式编程,您可能想尝试在 Xbox 或 Zune 上使用 XNA。你不会做内存管理,但如果你在 Zune 上做,你会习惯受限的硬件。不可否认,它使用的是 C#;但是您总是可以使用 CIL 自己进行编程。