首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在哪里学习硬件编程?

在哪里学习硬件编程?
EN

Stack Overflow用户
提问于 2011-10-13 20:44:06
回答 5查看 21.4K关注 0票数 13

我一直在做一些web开发,现在我想了解更多关于编程的知识,所以,这些硬件编程的东西让我很兴奋。我找不到一个合适的地方开始学习这个过程。所以你能提供更好的地方吗?我想更好地了解C或C++来做硬件编程。有什么地方可以让我从一开始就学到知识吗?

谢谢。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-10-13 22:12:07

有一些电路板,你可以花10美元或更少的钱买到像leds这样的东西,你可以开始在那个级别上进行舒适的编程,然后扩展知识。我在github上有一些100美元(通常在50美元以下)的板子的示例程序。

例如,msp430 launchpad的价格为4.3美元,而stm32 value line discovery的价格约为10美元。

我没有在github上发布过arduino示例,尽管我在世界上有很多基于avr的示例。arduino可能是你想花点时间的地方,有一长串你可以插入arduino板的东西,在arduino行话中称为"shields“。你可以做无线的东西,机器人,gps的东西。他们似乎在创建用户友好的C(/C++?)方面做得很好。对于所有类型的嵌入式开发/评估板以及大量的sparkfun.com项目(当然不是所有的项目)来说,arduino是一个很好的地方。ti.com是msp430和stellaris -m系列设备的发源地。stellaris系列的评估板塞满了您可以学习编程的外围设备。

如果你对这种深度嵌入感到不舒服,并且想要在操作系统上运行。你的系统价格在100美元到300美元之间,但它们确实存在,例如embeddedarm.com和gumstix (注意,举个例子,robovero并不是一个成熟的linux平台,它更接近我上面描述的基于微控制器的平台)。

在启动处理器的基础知识之后,您需要学习的内容是spi和i2c以及其他类似的、常见的接口。一些控制器有专门的硬件来为你做这些繁重的工作,而有些你只需简单地敲击一下就可以了。学会位绑定这些是至关重要的,因为即使在你的台式机或笔记本电脑上,驱动程序中也有linux bitbang的i2c接口。

预计会杀死一些硬件,要么通过砖块使其无法启动和恢复,要么从字面上让某些部件“冒烟”。简而言之,我绝对不会投资300美元或任何类似的东西在一个单一的板/平台上进行这种教育。你可以买很多25美元的电路板,并且在学习的时候把它们中的大部分扔进垃圾桶。我几乎总是在第一次买两个,以防万一。这些天,我通常不会让烟冒出来,而是用砖封住了一些木板。当您开始创建自己的引导加载程序时,这是有风险的。这类似于编写桌面应用程序,偶尔会意外地覆盖输出文件,或者打开您想要作为打开文件读取的文件,然后丢失该文件,诸如此类的事情,bug就会发生。

msp430 launchpad很便宜,你可以只买一个或几个,一个非常好的指令集,等等,你可能会适应arduino,arduino uno是一个不错的第一个主板,arm侧的mbed也不错,你根本不需要使用他们基于web的东西,你可以使用任何你想要的编译器。Arm在处理器市场占据主导地位,每隔一秒或第三次有开/关开关的东西(包括越来越多的基于英特尔的笔记本电脑)就会有一只或多只手臂在里面运行一些东西。avr远非如此,将来也不会,它主导着业余爱好市场,但不是世界上的其他地方,所以arm知识在某个时候会让你受益匪浅。

票数 12
EN

Stack Overflow用户

发布于 2011-10-13 20:57:24

如果你想在接近硬件的情况下编写代码,那么围绕Arduino的讨论非常多,它默认使用类似于C的编程语言。

票数 3
EN

Stack Overflow用户

发布于 2011-10-13 21:00:32

那么,您可能想要阅读有关Embedded programming的内容。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7754315

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档