2012-09-07 31 views
0

我想学习如何编写嵌入代码。不幸的是,我不是很有经验的程序员,而且我还没有掌握如何开始的线索。开始编写嵌入代码

我正在开发的项目是一个带有运动传感器和微处理器的PCB,我想通过编程微处理器来控制传感器的设置。

我需要什么样的硬件和软件?我读过,我需要一个JTAG /开发板和编程环境。我很乐意参考任何书籍/网站,告诉我(最好尽可能基本)如何开始。到目前为止,我发现只有我作为初学者不可读的来源。

微控制器(STM32F101RC,核心:ARM 32位Cortex™-M3 CPU)使用SPI与传感器通信。 PCB包含USB和JTAG连接(10  引脚)。另外,我正在使用Windows笔记本电脑进行编程。

+1

这确实取决于你有什么样的处理器,板上有什么接口,以及你使用的开发平台 - 你可以添加更多的细节吗? –

+0

板上的任何接口? USB ?以太网? JTAG?串行? –

+0

有没有想过在你的主板上运行某种操作系统?这将极大地影响您对工具的选择 – marko

回答

1

这取决于你有什么特定的配置 - 可能是ARM或AVR板。在这两种情况下,您都可以获取基于GCC的(GNU)工具链,并开始编写您的C/C++代码,您将无法使用需要操作系统的功能(例如文件操作,使用标准I/O - 你有端口和特殊功能寄存器来代替)等

1

工具链:

  • 软件:我建议Yagarto的顺利启动。
  • 硬件:您将需要一个片上调试器。我建议J-Link ECU

您可能/应该:(!书AVR Microcontroller and Embedded Systems: Using Assembly and C是伟大的)

  • 至少获得相当长的一段关于嵌入式软件/硬件知识
  • 了解的基础知识ARM Cortex-M3架构(google it!那里有很多资源,书籍等)
  • 获得一些C经验
  • 如果您的产品实际需要,请考虑使用RTOS
  • 如果您打算使用ARM Cortex-M3,请参阅CMSIS
  • 检查你的芯片制造商,如果他们提供任何软件库,引导程序......芯片。
  • 如果不这样做,在第一个定制的PCB,使用开发板原型项目

重要提示:

我不知道你选择的目标处理器的标准,但考虑使用如果项目不需要ARM M3(32位)处理能力,则AVR 8位microcontroller。特别是对于初学者来说,AVR更容易,更便宜。这里的规则是不要使用功能比您的产品/项目需求高得多的微控制器。

0

要学习嵌入式系统编程,最好从一个简单的8位开发板和免费的IDE开始。您可以从avr/8051系列/ pic系列等开始 嵌入式编程的主要问题是设置适合您的主板功能的启动配置/初始化。如果你从自己的董事会开始,将很难独立地跨过这个阶段。如果你从一个现成的工具包开始,那么给出的例子将很容易地通过这个过程。一旦你跨过这个阶段,你将获得足够的信心来处理更大的事情。我不提倡任何一个处理器家族。还有一件事是成为一名优秀的嵌入式编程人员,同时也必须非常熟悉硬件。在多个团队成员从事嵌入式项目的较大型项目中,您可以获得涉及纯C和逻辑的角色,而不需要很多知识,但要多才多艺,您必须熟悉董事会如何设计它应该如何设计工作。