c-了解嵌入式处理器的好策略是什么?例如,如何使用GPIO



我有一个STM32F407G发现板,我正在尝试在不使用任何示例代码的情况下打开LED。

我碰巧知道GPIO需要启用RCC AHB1时钟,因为我很久以前就在网上读到过。

但这些信息从参考手册中并不是很明显(至少对我来说不是,任何提示都很感激)。GPIO和RCC路段相距数英里。学习像这样的处理器的过程是什么;希望它有一个大的社区和搜索在线论坛时卡住"!。

这是参考手册的链接。

编辑:

在问了这个问题之后,我偶然发现了手册的一部分,上面写着(第2.1.11节):

每次设备重置后,所有外围时钟均被禁用(SRAM和Flash除外存储器接口)。在使用外围设备之前,您必须在RCC_AHBxENR或RCC_APBxENR寄存器

然而,我认为我的问题仍然存在——手册超过1500页,有没有一个好的策略可以通过参考手册相对快速地征服处理器?

  • 首先,查看MCU网站上的应用程序说明、勘误表和代码示例。在使用新的硬件外设之前,总是检查硅错误数据是一个非常好的习惯,尤其是在处理最近发布的MCU时
  • 如果你幸运的话,有硅供应商通过应用程序说明或库等提供的示例代码。然后你可以在编写自己的代码时查看这些代码。就在不久前,我们几乎从未看到过任何这样的代码,MCU的每个用户都通过阅读手册在本地重新发明了轮子
  • 在手册中,检查MCU的外围设备概述以及引脚布线/多路复用的选项。这通常是早期提到的。GPIO很可能与其他硬件共享引脚,所以这几乎总是你需要调查的事情
  • 类似地,现代MCU通常具有到外围设备的时钟路由选择。因此,您也必须检查时钟/PLL部分,无论如何,您都必须阅读这些部分,以了解如何设置系统时钟和振荡器选项
  • 最后,阅读GPIO章节

在阅读1500多页厚的大部头著作时,一般的提示是关注寄存器描述。这是一个很好的起点,当你不明白寄存器中的某些位是用来做什么的时候,你可以在需要了解它们的时候更深入地阅读它们。通过这种方式,您可以过滤出硬件外围设备的各种特殊功能,这些功能对您的特定项目不感兴趣。

相关内容

最新更新