0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

汽车电子工程知识体系 来源:汽车电子硬件设计 作者:汽车电子硬件设计 2021-02-09 17:54 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文提供了一些技巧,可以有效利用微控制器的数据表(或参考手册或用户指南)中的外围部分。

在上一篇文章中,我指出了与微控制器文档相关的一些困难,然后讨论了我建议的过程中的前三个步骤,以避免数据表烧坏。前三个步骤通常适用于MCU文档,在本文中,我们将重点介绍与外围设备有关的信息。

步骤4:忽略不需要的外围设备

微控制器内的外围模块在很大程度上彼此独立。确保您了解这一点,因为在基于MCU的系统设计中这是一个重要的概念。下图强调了这一点。

967919b4-5f71-11eb-8b86-12bb97331649.png

处理器的各个元素紧密互连,但是外围设备被描述为与处理器具有独立连接的独立模块。这准确地反映了实际的微控制器操作:如果不需要给定的外设,则将其置于非活动状态,可以忽略。

但是,微控制器并非旨在防止单独的外围模块之间进行交互,因为在某些情况下这种交互是可取的,这就是为什么我说外围模块“在很大程度上是独立的”。例如,由计时器模块生成的周期性信号可用于建立UART模块的波特率或启动ADC模块执行的转换。

但是,一般原则是合理的:未使用的外围设备不会影响设备的整体功能,因此,您无需阅读数据手册中解释这些未使用外围设备所有详细信息的部分。由于许多应用仅需要现代微控制器提供的大量外围功能的一小部分,因此仅此一步就可以消除很大一部分文档负担。

步骤5:研究配置软件

硬件配置可能是微控制器开发中最苛刻和最繁琐的方面之一。对外围模块进行广泛的寄存器级配置需要注意细节,仔细检查数据表以及进行许多尴尬的位操作。

幸运的是,人们意识到这不是很好地利用工程师的时间,因此制造商决定创建软件工具,以大大简化硬件配置任务。例如,Microchip提供了MPLAB代码配置器,使设计人员可以使用图形界面生成外设配置代码。Silicon Labs的Config2应用程序(请参见下面的屏幕截图)执行相同的操作。

97461680-5f71-11eb-8b86-12bb97331649.png

如果您在假设需要手动配置所有MCU硬件的情况下处理数据表,则可能会发现,越来越绝望的感觉使您无法集中精力。相信我,硬件配置工具可以大大减少您需要吸收的数据表资料的数量。

这里的困难是识别不必要的信息。不幸的是,我从来没有遇到过一个数据表,该数据表的标题为“如果您打算使用配置工具,您实际上需要知道的事情”。我建议您在进入数据表之前,先阅读配置软件的文档,当您阅读涵盖给定外围设备的部分时,请忽略特定于配置的详细信息,直到您对软件有了一定的了解。

德州仪器TI)仅为其MSP430 电容式触摸感应功能提供了完整的软件工具。图形界面使您可以配置和优化电容感应按钮,滚轮,滑块和接近传感器

977b0a0c-5f71-11eb-8b86-12bb97331649.png

最重要的是,您不应浪费时间在已经集成到免费,用户友好软件中的数据表细节上。

第6步:调查您的API

硬件配置工具有一个主要限制:不能在程序执行期间使用它们。配置软件是用于创建代码的工具。它不能实时修改微控制器的操作。

幸运的是,所需硬件配置的很大一部分通常仅发生一次,即在重置后执行的初始指令序列期间。但是,确实有些时候您想在程序执行期间进行精确的修改,也许是为了响应外部事件。这是应用程序编程接口(API)发挥作用的地方。

“ API”可能不是此处的最佳术语,但我不熟悉任何其他更合适的词或缩写。我指的是制造商提供的编程“快捷方式”集合。Atmel将其称为“高级软件框架”(您可以在本文中阅读有关ASF的更多信息),我认为Silicon Labs使用术语“软件开发工具包”(SDK)。在任何情况下,名称都远不如内容重要,例如,库函数,示例代码,宏,预处理器定义以及任何其他有助于程序员直接与设备硬件交互而又不成为复杂配置设置专家的东西。

984786d6-5f71-11eb-8b86-12bb97331649.png

高级软件框架具有与微控制器的外围设备相对应的各个模块。

熟悉微控制器的硬件很重要,不建议完全依赖库函数,预打包的驱动程序,示例代码和图形配置工具的“跨接”方法。在我看来,这是麻烦的秘诀,并且削弱了使用可高效,直接访问底层硬件的处理设备的好处。

因此,目标是找到适当的平衡。您需要研究微控制器的硬件并了解其内部功能的各个方面,但是当涉及到非常具体的细节时,您不想浪费时间重新设计轮子。您设备的数据表中可能包含许多已经包含在API中的信息,并且其中许多信息都可以被浏览甚至忽略。

结论

本文的标题是“如何阅读微控制器数据表”,尽管也许更合适的标题是“如何不阅读微控制器数据表”。事实是,文档过载是现代微控制器的一个严重问题,而快速吸收重要信息的一项基本技术是学习避免不必要的信息。

原文标题:如何阅读微控制器数据表(2)

文章出处:【微信公众号:汽车电子硬件设计】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    114

    文章

    17886

    浏览量

    195298
  • 数据表
    +关注

    关注

    0

    文章

    299

    浏览量

    12095

原文标题:如何阅读微控制器数据表(2)

文章出处:【微信号:QCDZYJ,微信公众号:汽车电子工程知识体系】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    MC9S08LG32系列微控制器数据手册解析

    MC9S08LG32系列微控制器数据手册解析 在电子设计领域,微控制器是至关重要的组件。今天我们来深入解析Freescale Semiconductor的MC9S08LG32系列微控制器
    的头像 发表于 04-27 17:30 465次阅读

    MPC5534微控制器:技术解析与应用指南

    MPC5534微控制器:技术解析与应用指南 在电子工程领域,微控制器作为核心组件,广泛应用于各种电子设备。NXP的MPC5534微控制器凭借其卓越的性能和丰富的功能,在汽车和工业应用
    的头像 发表于 04-10 11:40 225次阅读

    ATmega161微控制器:特性、应用与设计要点

    ATmega161微控制器:特性、应用与设计要点 在电子工程领域,微控制器是众多项目的核心组件。ATmega161作为一款经典的8位微控制器,以其高性能、低功耗的特点,在嵌入式系统设计
    的头像 发表于 04-07 11:15 219次阅读

    深度解析Atmel SAM7S系列ARM微控制器:从特性到应用

    深度解析Atmel SAM7S系列ARM微控制器:从特性到应用 在嵌入式系统设计领域,微控制器是核心组成部分,而Atmel的SAM7S系列ARM微控制器凭借其高性能、低功耗和丰富的外设
    的头像 发表于 04-06 11:05 766次阅读

    Infineon XMC4400系列微控制器数据手册解读

    Infineon XMC4400系列微控制器数据手册解读 在工业应用领域,微控制器的性能和稳定性至关重要。Infineon的XMC4400系列微控制器,基于ARM Cortex - M
    的头像 发表于 02-26 16:40 868次阅读

    请问GPIO在微控制器的作用是什么?

    GPIO在微控制器的作用是什么?
    发表于 12-25 06:46

    请问如何解决CW32L083系列微控制器在通信过程可能出现的数据错误问题?

    如何解决CW32L083系列微控制器在通信过程可能出现的数据错误问题?
    发表于 12-16 08:01

    CW32系列微控制器的时钟源和定时选项介绍

    自己的时钟源和寄存,用于在微控制器休眠或关闭时保持计时功能。 需要注意的是,具体的时钟源和定时选项可能因不同的CW32系列微控制器型号而有所不同。因此,在选择合适的
    发表于 12-16 06:26

    请问如何利用CW32L083系列微控制器的内部Flash存储进行程序升级和数据存储?

    如何利用CW32L083系列微控制器的内部Flash存储进行程序升级和数据存储?
    发表于 12-15 07:39

    在开发过程如何利用CW32L083系列微控制器的官方固件库进行程序编写和调试?

    在开发过程,如何利用CW32L083系列微控制器的官方固件库进行程序编写和调试?
    发表于 12-15 07:23

    选择微控制器MCU几个步骤

    以下10个简单步骤可确保做出正确的选择。 步骤1:制作硬件接口清单 利用大致的硬件框图制作出一份微控制器需要支持的所有外部接口清单。有两种常见的接口类型需要列出来。 第一种是通信接口。 系统中一
    发表于 11-26 07:09

    如何使用 M031 系列微控制器 (MCU) 的 PDMA 将 SPI 闪存的图片数据移动到 TFT 显示

    使用 M031 系列微控制器 (MCU) 的 PDMA 将 SPI 闪存的图片数据移动到 TFT 显示
    发表于 08-19 08:08

    求助,关于使用 TC39x Aurix 微控制器上的 SCR 检测 LIN 唤醒脉冲疑问求解

    您好,我正在尝试使用 TC39x Aurix 微控制器上的 SCR 检测 LIN 唤醒脉冲(250us 至 5ms 的显性(低)脉冲)。根据数据表,SCR 的 UART 模块中有一个硬件 LIN
    发表于 08-15 06:45

    SM2246EN SATA固态硬盘控制器 数据表数据手册

    电子发烧友网站提供《SM2246EN SATA固态硬盘控制器 数据表数据手册.pdf》资料免费下载
    发表于 06-28 15:45 5次下载

    微控制器读取闪存的软件信息时,软件信息部署在哪里? 是 SRAM 吗?

    我对 PMG1 闪光灯有疑问。 1.微控制器读取闪存的软件信息时,软件信息部署在哪里? 是 SRAM 吗? 2.微控制器加载软件时,在部署之前是否检查 SRAM 是否复位?
    发表于 05-23 06:22