微控制器(MCU)如何在物联网设备中使用?开发人员又该如何为产品选择最合适的MCU解决方案?Silicon Labs(亦称“芯科科技”)产品营销高级经理Gopinath Krishniah先生将通过本篇博文说明MCU的应用知识和开发技巧,并介绍评估选用8位和32位MCU的关键考量。点击文末的阅读原文按钮以阅览完整内容。
你是否曾经惊叹过健身追踪器是如何记录你走的每一步,或者洗衣机是如何感知水位的?其实是通过设备内部的MCU。它是一个集成电路上的小型计算机,包含一个或多个处理器核心(CPU)、存储器和可编程输入/输出外设。这些微型芯片是一种经济实惠且流行的数据收集、传感和控制物理世界的手段。
MCU应用于各种系统,从汽车发动机控制和植入式医疗设备到远程控制,办公机器,电器,电动工具,玩具和其他嵌入式系统。它们作为一个桥梁,使通信协议和硬件抽象层能够交互并运行所选的操作设备的RTOS/OS。
MCU常用特性
MCU是嵌入式设备的大脑,在一个很小的封装中封装了强大的功能。无论架构如何,所有MCU都有某些共同点:
基于位数的MCU核心架构:MCU使用的位数为8、16、32(有时称为位深度或数据宽度)来表示寄存器的大小,如8位为每个寄存器8位,内存地址的数量28=256个地址;32位理论上可以寻址多达536MB的数据,从技术上讲使其更具数据效率。
内存:MCU有两种内存,程序存储器(闪存)存储在MCU上运行的代码,而数据存储器(RAM)存储代码使用的数据。
外设和通信接口:这些内置的工具让MCU与外部世界进行交互,如感应温度或控制电机。
安全:MCU安全对于保护固件知识产权,保护设备中的私有数据,保证服务执行至关重要。
8位MCU和市场流行的架构
自20世纪80年代以来,8位MCU一直是嵌入式开发的核心,即使32位架构变得更加普遍,也将继续在物联网开发中发挥重要作用。现代8位MCU的简单性和成本效益确保它们在许多年内仍将是工程师工具箱中的关键工具。
下面是一些流行的8位MCU架构的例子:
PIC: 1975年由General Instruments公司开发,现在属于Microchip公司,PIC芯片为无数玩具,遥控器和预算友好型小工具提供动力。
AVR: 由Atmel开发,深受爱好者和专业人士的喜爱,AVR芯片是Arduino板的核心,使每个人都可以使用电子产品。它们是创新的催化剂,广泛应用于嵌入式系统。
8051: 由英特尔于1980年开发,是一个真正的老手,8051在工业应用和医疗设备中蓬勃发展,强调了简单和可靠性的持久吸引力
芯科科技使用CIP-8051内核作为整个C8051和EFM 8位产品组合的基础。这种流水线架构使我们能够提高效率,超过80%的指令在单个时钟周期内执行,使其优于其他8位MCU。芯科科技8位产品的最新成员是BB5家族,由3个系列组成:
BB52: 通用的MCU,具有更大的内存和多达29个GPIO
BB51: 这是中档MCU,在功能和成本上取得平衡
BB50: 可提供兼具小尺寸和成本效益的平台,即使是针对最简单的应用
8位MCU的优势
8位MCU比32位MCU有几个优点。以下是一些最重要的优势:
成本:8位MCU是预算敏感项目和设计爱好者做实验的完美选择。
功耗:8位MCU比32位MCU更精简,使其成为功耗敏感型的简单应用的理想选择。
代码大小:8位MCU代码占用很小,这对于内存有限的应用程序是有利的。
易用性:8位MCU易于学习和使用。有了现成的开发工具和在线社区,用户可以立即开始编码。
可用性:8位MCU随时可用,有大量选项可供选择。无论您是构建简单的机器人还是智能家居传感器,8位MCU都能将想法变为现实。
8位MCU的缺点
尽管8位MCU因价格实惠和尺寸紧凑而广受欢迎,但与高位微控制器相比,确实有一些限制。
有限的内存空间:8位微控制器的主要缺点之一是有限的内存空间,这可能给执行复杂任务或处理大量数据带来挑战。
处理速度:由于其有限的指令集,8位MCU在执行复杂任务或处理大量数据的能力方面受到限制。在需要实时处理或高速数据传输的应用程序中,这可能是一个明显的缺点。
32位MCU和市场流行的架构
有没有想过无人机如何捕捉惊人的航拍镜头,或者智能扬声器如何完美地播放音乐?这些看似神奇的动作都是通过32位MCU实现的!32位MCU擅长处理复杂任务、处理大量数据,并支持高端代数运算和浮点数学。下面是一些流行的例子:
ARM Cortex-M: ARM Cortex-M系列是专为嵌入式系统设计的32位MCU系列。是智能手机、无人机和可穿戴设备背后的强大力量。
PIC32: PIC32 MCU是由Microchip开发的32位微控制器系列。从工业自动化到机器人技术,PIC32高效地解决了苛刻的任务。
AVR32: AVR32是由Atmel开发的32位微控制器架构,将用户友好的AVR世界带入32位域,使其成为爱好者和专业人士的完美选择。
RISC-V: RISC-V是开源架构,是RISC架构家族中的最新发展,具有简单、模块化和可扩展的特点。RISC-V架构由于其开源特性而越来越受欢迎,这允许更大的灵活性和定制。RISC-V MCU被用于各种应用,包括嵌入式系统、物联网设备和高性能计算。
所有芯科科技提供的EFM32和EFR32第二代无线SoC平台和MCU产品系列都使用多核Cortex-M平台。我们的大多数Cortex-M33运行高达76.4 MHz,作为无线和应用开发的主要应用核心,而2个专用M0+核心操作无线电和安全子系统,为开发人员提供整个产品组合的一致平台。该体系结构允许子系统独立于应用程序核心运行,并帮助提供底层灵活性,而无需缩短开发时间,并允许产品系列之间的更多设计重用。将人工智能和机器学习(AI/ML)硬件加速添加到无线和独立MCU中,可以减少边缘所需的额外智能所需的时间和功耗。
32位MCU的优势
32位微控制器比8位微控制器有几个优点。以下是一些最重要的优势:
处理能力:32位MCU提供高性能和较高功耗。它们比8位和16位的同类产品更快、更强大,但仍然节能。32位MCU可以处理更多的RAM和闪存,以及更高的时钟速度。这使得它们非常适合需要高性能计算的应用程序,例如FFT计算、高质量音频或视频、高分辨率图像处理以及各种边缘计算应用程序。
内存:32位内存总线提供比8位内存总线更宽的数据路径,允许它在单个时钟周期内传输更多的数据。这导致更快的数据传输速率和提高整体系统性能,从而使我们能够保存高分辨率的图像,复杂的算法,甚至整个操作系统。
外设支持:32位MCU在外设方面有几个优势。它们提供更先进的通信接口,如EUSART, USB,以太网,CAN, SDMMC,集成LCD控制器等。这些外设对于许多现代应用至关重要,例如物联网设备、汽车系统和工业自动化。32位MCU还提供更先进的模数转换器(20位ADC),这对于许多需要高精度测量,12位DAC,高级计时器,可编程计数器和精确集成定时组件(如高精度内部RC振荡器)的应用至关重要,这对于许多需要精确定时和计数的应用至关重要。
编码效率:32位MCU可以在每个周期内封装更多指令,从而实现更快的执行速度和更低的功耗。这是因为它们每个时钟周期可以处理更多的数据位,这意味着它们可以事半功倍。此外,32位MCU可以实现更高的代码效率,这意味着更小的程序可以进行复杂的操作。
库和驱动程序的可用性:准备好访问各种库和维护良好的驱动程序对于高效的软件开发和无缝的硬件集成至关重要。当开发人员可以利用现有的库和驱动程序时,它可以显著提高生产力,并有助于创建提供更好用户体验的健壮应用程序。
32位MCU的缺点
虽然32位微控制器在功能和多功能性方面占据主导地位,但它们并不是一个通用的解决方案。在启动项目之前,请考虑以下权衡:
功耗:32位架构的复杂性使得实现最佳低功耗操作比简单的8位MCU要复杂得多。开发人员可能需要管理更复杂的能量状态,并对外围设备进行权衡,以达到类似的功耗指标。
复杂性:32位MCU比8位MCU更复杂,这使得它们更难以编程和调试。
代码大小:32位MCU可能比8位MCU具有更大的代码大小,这对于内存有限的应用程序来说可能是一个缺点。然而,代码大小在很大程度上取决于用于产品开发的代码优化工具。
结论:明智地选择MCU架构和平台
在物联网开发领域,选择合适的处理器平台至关重要!8位和32位MCU都解决了不同的挑战,并在现代物联网发展中占有一席之地。
当谈到经济和高效时,8位MCU是冠军!它们具有成本效益和紧凑性,是无线物联网传感器等简单任务的理想选择。与32位MCU相比,其优越的功率效率也使其成为电池供电设备的首选。
另一方面,32位MCU比8位MCU提供更大的处理能力和内存。这使得它们更适合要求更高性能和更多内存的应用程序。然而,这是以增加复杂性为代价的。
那么,谁会在物联网领域取得胜利呢?对于基本任务和预算限制,8位MCU占据了堡垒。但是,当需要一个强大的性能来执行密集的任务时,32位MCU占据了上风。开发人员可先评估产品功能需求再做出明智的选择。
扫描以下二维码,关注芯科科技的社交媒体平台