文章目录

  • 写在前面
  • 正文
    • 选择制造商
    • 关键参数
      • 数模转换器
      • 模数转换器
      • 时钟频率
      • 通用串行总线(USB)
      • 电容式触摸感
      • 成本和包装尺寸
      • 评估硬件
    • 结论
  • 延伸阅读
  • 交个朋友

写在前面

原文链接
相关博文
博客首页
注:知识搬运,供学习交流使用,侵联删!
本文是微控制器简介系列的继续,讨论了当您试图为下一个项目寻找最佳MCU时要考虑的最重要事项。


正文

本文是微控制器简介系列的继续,讨论了当您试图为下一个项目寻找最佳MCU时要考虑的最重要事项。

在上一篇文章中,我介绍了微控制器的定义特性,解释了其内部结构的基本方面,并提供了有关如何在各种类型的嵌入式系统中使用微控制器的一些一般性想法。

在以后的文章中,我计划探索与实现微控制器和开发固件相关的技术和过程,但是在设计基于MCU的产品之前,您需要知道将使用哪种设备。基于微控制器的系统设计中涉及的技能和技术当然不是特定于某个零件号,甚至也不是某个制造商,但是,如果您在该领域还没有广泛的专业知识,那么最好只关注一种设备(或一个设备系列),然后在获得一些扎实的经验之后再进行扩展。


选择制造商

销售微控制器的半导体公司的名单相当长。 但是,我强烈建议您从一家非常重视其微控制器类别的制造商开始。 这将确保您可以访问大量有用的设计资源-应用笔记,示例代码,高质量的集成开发环境(IDE),便捷的编程工具等。

Simplicity Studio是Silicon Labs的免费IDE,它为您提供了一个支持众多不同微控制器的开发环境。

此外,拥有更广泛的MCU产品线的制造商可让您根据每个应用程序的要求更轻松地微调组件选择,因为您可以选择新的部件号而不必承受因从一个制造商切换到另一个制造商而引起的急剧变化。 当您必须学习新的IDE,新的寄存器配置,新的编码技术,新的文档结构等时,这可能会很麻烦且很耗时,并且我仍然尽可能避免这些不便之处。

正如您在STMicro的本选择指南中所看到的,您可以将自己限制在一个制造商出售的MCU上,并且仍然可以覆盖多种应用。

如果您在微控制器开发方面的经验仍然很有限,建议您选择以下制造商之一:德州仪器(TI),意法半导体(STMicroelectronics),Silicon Labs或Microchip。 (绝对应该将Atmel包括在此列表中,但它于2016年被Microchip收购。)


关键参数

下一步是确定您最重要和最具体的要求。 几乎任何现代微控制器都将提供多种类型的处理和外围功能-例如,您无需寻找提供基本串行通信,时钟频率高于10 MHz,有足够数量的闪存和RAM, 内部振荡器,通用定时器或集成调试模块(它们通常使用JTAG接口)的MCU。

以下小节提供了一些“非标准”功能的示例,这些功能将帮助您缩小可能适合给定项目的微控制器的列表。


数模转换器

找到包含模数转换器的MCU不会有任何困难,但DAC的使用却明显减少。 但是,它们在某些应用中非常有用,并且集成DAC当然比外部DAC方便得多。

我使用集成到Atmel SAM4S微控制器中的12位DAC生成了此正弦曲线。


模数转换器

我刚刚告诉您ADC是常见的,这是真的,但是我应该指出,许多微控制器ADC的性能处于中低水平。 如果需要具有异常高分辨率或异常高采样率的ADC,则必须在选择过程中将其作为优先事项。 多年前,我发现自己处在这种情况下,如果我没记错的话,没有什么可以与Silicon Labs的C8051F060竞争(它具有两个集成的ADC,它们可以以每秒一百万个采样的速度执行16位转换)。


时钟频率

如果要使微控制器与计算密集型DSP功能更兼容,则需要对支持高处理器频率的设备进行优先级排序。 Silicon Labs有两个工作在100 MHz的8位系列,STMicroelectronics和Microchip都具有工作在120 MHz的高性能32位MCU。


通用串行总线(USB)

USB接口是串行通信的主要形式。我发现它是在嵌入式设备和PC之间传输数据的一种非常有效的方法,在消费类电子产品的环境中,它是必不可少的。如果您正在寻找一种将USB连接功能集成到系统中的紧凑,简单的方法,建议您重点关注集成了USB模块的微控制器。我使用了Silicon Labs的EFM8 Universal Bee,Microchip提供了8位,16位和32位USB微控制器。


电容式触摸感

电容式触摸感应是一种越来越流行的用户界面形式。尽管电容式触摸感应在概念上很简单,但实际实现可能相当复杂,拥有专门用于支持此类接口的微控制器绝对有帮助。据我所知,微控制器具有电容式触摸感应外设在某种程度上还是很不寻常的,因此您在选择零件时需要优先考虑此功能。

我的同事马克·休斯(Mark Hughes)在德州仪器(TI)的MSP430微控制器周围设计了电容式触摸界面。


成本和包装尺寸

将这些参数放置在零件选择过程的特定部分中很困难,因为它们的重要性在一个应用程序与另一个应用程序之间差异很大。 在某些情况下,您有大量的电路板空间,可以完全忽略封装的尺寸,而对于开发永远不会大量生产的原型或系统的工程师来说,成本通常是无关紧要的。

另一方面,存在许多必须非常小,非常便宜或非常小且非常便宜的电子产品。 在这种情况下,您需要不断了解价格和/或包装尺寸,因为您将根据关键参数和首选制造商逐渐过滤掉零件。


评估硬件

从业余爱好者到专业工程师的每个人都可以从精心设计且价格合理的开发板中受益。 通常,这是评估微控制器并对其编程接口和功能细节有所了解的最轻松,最可靠的方法。 在将搜索范围缩小到一些有希望的零件编号之后,请在确定最终决定之前检查价格合理的评估板。


结论

我希望本指南可以帮助您在有时令人生畏的过程中进行选择,该过程是从市售的数千种微控制器中选择一种的。 选择设备后,就该开始阅读数据手册并设计系统了,我们将在以后的文章中介绍这些主题。


延伸阅读

此系列文章:

What Is a Microcontroller? An Introduction to the Central Component in Countless Electronic Devices

How to Choose the Right Microcontroller for Your Application

How to Read a Microcontroller Datasheet: Introduction and First Steps


交个朋友

FPGA/IC技术交流2020

如何为您的应用选择合适的微控制器?相关推荐

  1. 如何为物联网选择微控制器?

    如何为物联网选择微控制器? 导读:微控制器(MCU)可被视为微型计算机,它们包含一个或多个计算机处理器,以及存储器和可编程输入/输出外设 - 所有这些都集成在一个集成电路中. MCU与电脑中的微处理器 ...

  2. 1、选择最佳微控制器的10个步骤

    转载: http://www.elecfans.com/emb/dsp/20130719324471.html ============================================ ...

  3. 和12岁小同志搞创客开发:如何选择合适的传感器?

    目录 1.信号采集 2.信号输出 3.物美价廉 4.如何选型采购 机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0 ...

  4. [mongodb翻译]选择合适的shard key

    为一个集合(collection)选择合适的shard key非常重要.如果这个集合非常庞大,那么将来再来修改shard key将会很困难.如有任何疑问请到论坛或者IRC寻求帮助. 示例文档 view ...

  5. R语言构建logistic回归模型并评估模型:构建基于混淆矩阵计算分类评估指标的自定义函数、阳性样本比例(垃圾邮件比例)变化对应的分类器性能的变化、基于数据阳性样本比例选择合适的分类评估指标

    R语言构建logistic回归模型并评估模型:构建基于混淆矩阵计算分类评估指标的自定义函数.阳性样本比例(垃圾邮件比例)变化对应的分类器性能的变化.基于数据阳性样本比例选择合适的分类评估指标 目录

  6. 《淘宝网开店 拍摄 修图 设计 装修 实战150招》一一1.17 如何选择合适的拍摄地点...

    本节书摘来自异步社区出版社<淘宝网开店 拍摄 修图 设计 装修 实战150招>一书中的第1章,第1.17节,作者: 葛存山,更多章节内容可以访问云栖社区"异步社区"公众 ...

  7. 如何选择合适的NoSQL数据库

    与传统的表格(或SQL)数据库相比,NoSQL数据库为软件开发人员和其他用户提供了更高的运行速度和更高的灵活性. NoSQL数据库使用的数据结构 - 键值对,宽列,图形或文档 - 与关系数据库使用的数 ...

  8. 2.3.1 为超参数选择合适的范围

    调试处理 对于超参数,如何才能找到一个比较好的设定呢? 如图所示,我们可能会需要调试很多的超参数.但其中最重要的超参数还是学习率.被红色圈住的是最重要的超参数,橙色的是次重要的超参数.紫色是再其次重要 ...

  9. [Java并发编程(二)] 线程池 FixedThreadPool、CachedThreadPool、ForkJoinPool?为后台任务选择合适的 Java executors...

    [Java并发编程(二)] 线程池 FixedThreadPool.CachedThreadPool.ForkJoinPool?为后台任务选择合适的 Java executors ... 摘要 Jav ...

  10. 3.2 为超参数选择合适的范围-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授

    ←上一篇 ↓↑ 下一篇→ 3.1 调试处理 回到目录 3.3 超参数训练的实践: Pandas vs. Caviar 为超参数选择合适的范围 (Using an Appropriate Scale t ...

最新文章

  1. 火狐浏览器pentadatyl插件的基本设置
  2. P6623-[省选联考2020A卷]树【Trie,树上启发式合并】
  3. JQ 全选后获取选中的值_Filecoin如何创建账户钱包并获取FIL测试币
  4. yum被锁Another app is currently holding the yum lock; waiting for it to exit...
  5. mysql where子句 参数_MySql——使用where子句过滤数据
  6. css3和jquery实现的可折叠导航菜单(适合手机网页)
  7. 人民币对美元汇率中间价报6.7592元 上调23个基点
  8. 如何用maven创建java项目_Maven创建Java项目
  9. 计算机硬盘显示ntfs,电脑硬盘显示NTFS
  10. IntelliJ IDEA如何创建Source Folder和导入jar包
  11. 通过SecurityUtils获取Subject详解
  12. 论文浏览(42) Action Genome: Actions as Composition of Spatio-temporal Scene Graphs
  13. 向量检索milvus之一:以图搜图
  14. 【游戏王arc-v卡片力量SP改名字ID教程】
  15. Vue 公众号商城实现浏览足迹
  16. 从iass向pass转型
  17. Linux花开五洲,争奇斗艳
  18. 应用统计学与R语言实现学习笔记(七)——拟合优度检验
  19. Unity安装配置Android环境 SDK,JDK,JIR
  20. 关于运行健康项目的tomcat无法常规关闭现象

热门文章

  1. not in 与not exists区别
  2. 【数据结构基础_有[*pHead]和[*pEnd]的单向链表_(C语言实现)】
  3. letax报错“ I can't write on file `***.pdf”
  4. 交叉报表制作--Smartbi报表工具一步完成
  5. c语言ab43错误的是,ab测试大并发错误
  6. 一.数组(10)274. H 指数(不怎么理解)
  7. 等差数列计算机函数公式大全,等差数列公式大全
  8. RAID 磁盘列阵与阵列卡
  9. 如何快速将qsv格式转换成mp4
  10. 台式计算机没有声音怎么办,台式电脑没声音怎么回事_台式机电脑没有声音如何解决...