【问题标题】:An example of an embedded project for a single person一个人的嵌入式项目示例
【发布时间】:2010-07-18 08:00:06
【问题描述】:

我一直在努力解决嵌入式问题。由于我将在这个特定的领域自学成才,我意识到在该领域找到工作会更难,所以我希望在我的简历中添加一个已完成的项目,以向潜在的雇主证明我已经做到了并且可以为他们再做一次。

有人可以建议一个我可以作为一个人承担并且实际上能够完成的项目,但同时不能太简单以至于不能证明任何事情吗?我可以瞄准的合理的东西。

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

【问题讨论】:

  • 你的目标是什么平台?
  • @Shaihi,我没有平台,所以我愿意接受建议。

标签: c++ c embedded


【解决方案1】:

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

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

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

作为一名 arduino 实验者,我可以证明这款设备的简单性和强大功能 - 以及您在玩它时会获得的巨大乐趣。如果您想快速上手,我建议您从oomlout 非常乐于助人的人那里购买入门工具包。

【讨论】:

  • 太棒了!我放弃了我的真实项目,现在我正在左右下载 Arduino 软件 :-)
【解决方案2】:

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

如果它只是软件,那么我建议获取一个 ARM 开发板(可能是飞利浦 LPC 系列 - sparkfun 有一些不错的),您可以通过 USB 引导加载程序对其进行编程并开始破解。获得一个带有显示器和以太网端口的设备,您可以构建某种网络连接传感器(温度、水位、物体计数器等)。开始一点点(通过按钮打开 LED),然后逐步向上。

如果您也喜欢电子产品,我建议您使用 MP3(或 WAV)播放器之类的东西,并且可能坚持使用 AVR 或 PIC 8 位微控制器(Arduino 上使用 AVR),因为这些是比ARM更容易处理。在这里,您可以从 USB 供电设备开始,将 wav 文件从 PC 串行端口传输到一对耳机,然后构建到电池供电板,将数据从 SD 卡馈送到 MP3 解码器 IC。

您可能想学习和演示的一些内容:

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

其他提示:

  • 阅读并理解数据表(是的,全部)
  • 尽可能在桌面上进行编码和测试,但要理解存在差异和错误仍然会蔓延(这有助于使用桌面通用的工具链 - GCC 很好,但工具通常是 CLI)
  • 大量使用断言 - 您可以使用单个 LED 闪烁失败断言的行号 - 这是非常宝贵的

最重要的是,当您第一次使用新组件(显示器、电机、传感器)时,它仍然让我微笑。嵌入式让世界运转起来:)

【讨论】:

  • 我只想补充一点,如果您喜欢与世界互动,而不是仅仅编程、驱动无刷电机或实施一些 rad dsp 滤波器,那么您将获得有价值的特定技能。有大量的应用笔记可以帮助你弄清楚如何做这些事情。
猜你喜欢
  • 1970-01-01
  • 2011-04-11
  • 2017-01-25
  • 1970-01-01
  • 1970-01-01
  • 2023-01-04
  • 1970-01-01
  • 2010-10-22
  • 1970-01-01
相关资源
最近更新 更多