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