入门固件开发

时间:2009-09-01 07:09:04

标签: language-agnostic firmware

我是一名软件开发人员。最近我正在考虑尝试一些固件开发,因为我工作的公司正试图进入该领域。 我有很多关于固件开发的问题 - 比如:

  1. 使用什么工具 - 比如IDE?
  2. 用哪种语言编写的大部分代码?
  3. 如何将代码移植到微控制器中?
  4. 如何为不同的微控制器编码?
  5. 如何确定构建特定应用程序所需的内容(选择微控制器等)?
  6. 我应该知道的其他事情以及从哪里开始?对不起,如果这个问题太基础了,但我在其他地方找不到任何令人满意的答案。

1 个答案:

答案 0 :(得分:5)

大多数微控制器都有不错的C编译器,所以最好用C语言编写,尽管你可能需要深入研究用于偶发性高性能例程的汇编程序。微控制器的选择通常取决于硬件需求,板载外设,性能和成本限制。 您通常不会将代码从Windows / Linux / Mac环境移植到微控制器;你通常会直接为微控制器编写,所以严格来说编译器是一个交叉编译器 - 在你的PC上编译以在不同的处理器上运行。您通常在IDE中获得调试器,仿真器和完整编辑器功能,因此它在PC环境中编写代码的体验类似,但运行速度较慢,必须下载到目标硬件或模拟测试。

开始阅读嵌入式开发的权威是Jack Gansle和他的firmware handbook。对于一般文章也是www.embedded.com