如何有效地使用微控制器数据表的外围部分?

本文提供了一些技巧,可有效利用微控制器数据表(或参考手册或用户指南)的外围部分。在上一篇文章中,我指出了与微控制器文档有关的一些困难,然后讨论了我建议避免数据表烧伤的过程中的前三个步骤。
前三个步骤通常适用于MCU文档。在本文中,我们将重点介绍与外围设备相关的信息。
步骤4:忽略不必要的外围设备微控制器中的外围模块在很大程度上彼此独立。确保您了解这一点,因为这是基于MCU的系统设计中的重要概念。
下图强调了这一点。处理器的各个元素紧密互连,但是外围设备被描述为具有与处理器的独立连接的独立模块。
这准确地反映了微控制器的实际操作:如果不需要给定的外设,则将其置于非活动状态,可以忽略。然而,微控制器并非设计为防止分离的外围模块之间的交互,因为在某些情况下这种交互是合乎需要的,这就是为什么我说外围模块“在很大程度上是独立的”。
例如,定时器模块生成的周期性信号可用于建立UART模块的波特率或启动ADC模块执行的转换。但是,一般原则是合理的:未使用的外围设备不会影响设备的整体功能,因此您无需阅读数据手册中解释这些未使用的外围设备的所有详细信息的部分。
由于许多应用仅需要现代微控制器提供的广泛外围功能的一小部分,因此仅此步骤就可以消除很大一部分文档负担。步骤5:研究和配置软件和硬件配置可能是微控制器开发中最苛刻和最繁琐的方面之一。
外围模块的广泛寄存器级配置需要注意细节,仔细检查数据手册以及许多尴尬的位操作。幸运的是,人们意识到这不是对工程师的好用。
时间,因此制造商决定创建软件工具来大大简化硬件配置任务。例如,Microchip提供了MPLAB代码配置器,允许设计人员使用图形界面生成外设配置代码。
SiliconLabs' Config2应用程序(请参见下面的屏幕截图)执行相同的操作。如果在假设您需要手动配置所有MCU硬件的情况下处理数据表,您可能会发现越来越绝望的感觉使您无法专心。
相信我,硬件配置工具可以大大减少您需要吸收的数据表信息量。这里的困难是识别不必要的信息。
不幸的是,我从未遇到过标题为“如果您打算使用配置工具,您实际上需要知道的内容”的数据表。我建议您在输入数据表之前阅读配置软件的文档。
阅读涵盖给定外围设备的部分时,请先忽略特定于配置的详细信息,直到对软件有一定了解为止。德州仪器(TI)仅为其MSP430电容式触摸感应功能提供完整的软件工具。
图形界面允许您配置和优化电容感应按钮,滚轮,滑块和接近传感器。最重要的是,您不应将时间浪费在已集成到免费,用户友好软件中的数据表的详细信息上。
步骤6:调查您的API硬件配置工具。有一个主要限制:它们不能在程序执行期间使用。
组态软件是用于创建代码的工具。它不能实时修改微控制器的操作。
幸运的是,在复位后执行的初始指令序列中,大部分所需的硬件配置通常仅发生一次。但是,有时候您可能想在程序执行期间进行精确的更改,也许是为了响应外部事件。
这是应用程序编程接口(API)发挥作用的地方。 “ API”可能不是这里的最佳术语,但是我不熟悉其他更合适的词或缩写。
我指的是程序设计“快捷方式”的集合。由制造商提供。
Atmel将其称为“高级软件框架”。 (您可以在本文中阅读有关ASF的更多信息),并且我认为SiliconLabs在此使用术语“软件开发工具包”。
(SDK)。在任何情况下,名称都远不如内容重要,例如库函数,示例代码,宏。