单个人的嵌入式项目示例

时间:2010-07-18 08:00:07

标签: c++ c embedded

我一直在试图把我的脑袋包裹起来。由于我将在这个特定的领域自学成才,我意识到在该领域找到一份工作会更难,所以我希望在我的简历中添加一个完整的项目,向潜在的雇主证明我已经完成了并且可以为他们再做一次。

有人可以推荐一个我可以作为一个人进行并且实际上可以完成的项目,但同时又不是太简单以至于没有任何证据吗?我可以瞄准的合理的东西。

如果你能用你自己工作的项目来证实你的例子,并提及有多少人参与,以及完成它需要多长时间,那也可以帮助我衡量我一般看到的项目的难度和规则那些可能对我的能力来说太大了。很难衡量项目从我的职位所需的工作量。

2 个答案:

答案 0 :(得分:5)

你应该看一下arduino。引用他们的网站:

  

Arduino是一个基于灵活,易用的硬件和软件的开源电子原型设计平台。它适用于艺术家,设计师,业余爱好者以及任何对创建交互式对象或环境感兴趣的人。

有一个非常方便的playground列出了arduino上的一系列个人项目,其中任何一个都可能满足您进行嵌入式开发的需要。您还可以在互联网上搜索(例如instructables)以找到许多其他有趣的arduino应用程序 - 我特别喜欢building a fancy control system for an espresso machine那个,当然还有强制性的fart detecting chair推特发现。

作为一名arduino实验者,我可以证明这款设备的简洁性和强大功能 - 以及您玩它的乐趣。如果您想快速入门,我建议您从oomlout的非常有帮助的人那里购买入门套件。

答案 1 :(得分:3)

您是专门研究嵌入式软件开发,还是对电路板设计感兴趣?

如果它只是软件,那么我建议获得一个ARM开发板(可能是飞利浦LPC系列 - sparkfun有一些不错的开发板),您可以通过USB上的引导程序进行编程并开始黑客攻击。获得一个带有显示器和以太网端口的设备,您可以构建一些网络连接传感器(温度,水位,物体计数器等)。从小开始(从按钮打开LED)然后继续工作。

如果你也是电子方面的东西,我建议像MP3(或WAV)播放器,可能坚持使用AVR或PIC 8位微控制器(AVR在Arduino上使用),因为它们是比ARM更容易处理。在这里,你可以从一个usb供电的设备开始,它将来自PC串口的wav文件传输到一对耳机,并构建到电池供电的板上,从SD卡向MP3解码器IC提供数据。

您可能想要学习的一些事情和证明:

  • 理解使用有限资源的范围,包括内存管理(动态和/或静态);资源管理(锁,信号量,互斥量);多个任务(中断);和适当的数据结构
  • 能够通过各种互连(模拟和数字IO,串行总线(RS232,I2C,SPI))与其他设备/ IC接口
  • 能够合理地构建程序并对各个模块进行分段而不产生“spaghetti”代码
  • 能够在适当的地方使用源并集成第三方库(想想FAT文件系统或TCP / IP堆栈)

其他提示:

  • 阅读并了解数据表(是的,所有这些)
  • 在可能的情况下在桌面上进行代码和测试,但要了解存在差异,并且仍然会出现错误(这是使用桌面常见的工具链的好处 - GCC很好,但是工具通常是CLI)
  • 使用断言很多 - 您可以使用单个LED闪烁失败断言的行号 - 这是非常宝贵的

最重要的是玩得开心 - 当你第一次使用新组件(显示器,电机,传感器)时,它仍会让我微笑。嵌入式让世界变得圆满:)