0

我想学习如何编写嵌入式代码。不幸的是,我不是很有经验的程序员,也不知道如何开始。

我正在做的项目是带有运动传感器和微处理器的 PCB,我想通过对微处理器进行编程来控制传感器的设置。

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

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

4

3 回答 3

1

这取决于您拥有的特定配置 - 可能是 ARM 或 AVR 板。在这两种情况下,您都可以使用基于 GCC (GNU) 的工具链并像往常一样开始编写 C/C++ 代码 - 您将无法使用需要操作系统的功能(即文件操作,使用标准I/O - 你有端口和 SFR)等。

于 2012-09-07T11:00:08.167 回答
1

工具链:

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

您可以/应该:

  • 至少获得一些关于嵌入式软件/硬件的知识(AVR Microcontroller and Embedded Systems: Using Assembly and C这本书很棒!)
  • 了解ARM Cortex-M3架构的基础知识(google it!那里有很多资源、书籍等)
  • 获得一些C经验
  • 如果您的产品确实需要RTOS,请考虑使用RTOS 。
  • 如果您打算使用 ARM Cortex-M3,请查看CMSIS 。
  • 检查您的芯片制造商是否为芯片提供任何软件库、引导加载程序……。
  • 一开始不做定制PCB,用开发板来原型你的项目

重要的提示:

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

于 2012-09-12T01:51:09.877 回答
1

要学习嵌入式系统编程,最好从一个简单的 8 位板和免费 ide 开始。您可以从 avr / 8051 系列 /pic 系列等开始,嵌入式编程的主要问题是设置适合您的电路板功能的启动配置/初始化。如果你从你自己的董事会开始,你自己很难跨过这个阶段。如果您从一个现成的工具包开始,那么给定的示例将引导您轻松完成此过程。一旦你跨过这个阶段,你将获得足够的信心来处理更大的事情。我在这里并不提倡任何一种处理器系列。另一件事是要成为一名优秀的嵌入式程序员,还必须对硬件相当熟悉。在多个团队成员从事嵌入式项目的大型项目中,您可以获得涉及纯 c 和逻辑而没有太多硬件知识的角色,

于 2015-09-06T06:26:52.273 回答