MCU

MCU是Microcontroller Unit(微控制器单元)的缩写,它是一种集成了中央处理器(CPU)、存储器(ROM、RAM)、输入/输出端口(I/O)、定时器(Timer)、串行通信接口(UART、SPI、I2C等)和其他外围设备控制器的单个芯片。MCU通常用于嵌入式系统中,用于控制各种电子设备和系统。

由于其集成度高、体积小、功耗低以及成本相对较低等特点,MCU被广泛应用于各种嵌入式系统中,例如智能家居设备、医疗设备、汽车电子系统、工业自动化等。MCU的选择通常基于应用的需求,如处理性能、功耗、外设接口等因素。

Balletto 低功耗蓝牙5.3 Matter 无线微控制器系列带有神经协处理器,适用于无线音频和智能家居的人工智能/机器学习工作负载

帮助智能边缘设备更可靠、更高效地连接、感知和推断数据的全球领先半导体产品和软件IP授权许可厂商Ceva公司(纳斯达克股票代码:CEVA) 宣布世界领先的安全、互联、高功效人工智能和机器学习(AI/ML)微控制器(MCU)及融合处理器供应商Alif Semiconductor®已经获得授权许可,在其Balletto™系列无线微控制器中部署使用Ceva-Waves 低功耗蓝牙和802.15.4 IP

343. Ceva_Waves_Alif_Social_240718.jpg

Balletto系列是面向联机物联网平台的完整边缘 AI/ML 微控制器解决方案,集成了低功耗蓝牙 5.3 和 802.15.4 无线子系统以及专用网络协处理器,在单一芯片中实现了连接性和业界一流的机器学习性能。与缺乏神经协处理器的传统 MCU 相比,Balletto 系列MCU的机器学习性能和推理效率最高可提升50 倍,从而为电池供电的EdgeML 应用开辟全新的领域。Ceva-Waves低功耗蓝牙IP为 Balletto MCU 提供了功耗超低的强大连接能力,并支持蓝牙 LE Audio和 Auracast 广播音频,适合有意利用 Balletto 创建高度差异化无线音频产品的客户。Balletto系列还通过 Ceva-Waves 802.15.4 IP 来支持智能家居应用中的 Thread、Zigbee 和 Matter。

Alif Semiconductor营销副总裁Mark Rootz表示:“电池供电设备对AI/ML工作负载的需求日益增长,我们的 Balletto 系列互联智能 MCU 就是专为满足这些需求而量身定制。Ceva低功耗蓝牙和802.15.4 IP为我们的芯片设计提供了经过充分验证的强大连接解决方案,可让我们集中研发资源来实现MCU产品差异化,从而提供出色的性能来满足最严苛的无线音频和智能家居AI/ML用例。”

Ceva无线物联网业务部门副总裁兼总经理Tal Shalev表示:“无线连接是每个智能设备的基本要求,我们很荣幸得到Alif Semiconductor和其他行业领导者和创新者所信赖,成为他们的嵌入式无线IP供应商。迄今为止,我们的低功耗蓝牙 IP 已推动了数十亿台设备,我们非常高兴与 Alif公司合作,为其 Balletto 系列智能 MCU 提供强大的连接性和高比特率音频。”

关于 Ceva-Waves 蓝牙

Ceva-Waves 蓝牙IP平台是全面的低功耗蓝牙和蓝牙双模连接解决方案,涵盖射频、调制解调器、基带控制器以及完整的主机和配置文件软件栈。这些蓝牙IP平台支持蓝牙技术的所有最新功能,包括 AoA / AoD / 寻向、LE Audio / Auracast、带响应的周期性广告和其他增强功能,如信道探测。它还带有用于 Thread、Zigbee 和 Matter 支持的 IEEE  802.15.4 附加组件。迄今为止,Ceva-Waves蓝牙IP助力设备的出货量已超过45亿台,并且拥有数十家授权厂商。通过与许多世界领先的半导体公司和OEM厂商合作,这些IP平台广泛应用于各种消费、汽车、工业、医疗和物联网设备中,其中包括智能手机、平板电脑、信标、无线扬声器、无线耳机和耳塞、助听器和其他可穿戴设备。

Ceva-Waves蓝牙IP是Ceva-Waves独特而广泛的无线连接IP平台系列的一部分,该系列还包括Ceva-Waves Wi-Fi、UWB、NB-IoT和Links多协议平台。如要了解更多信息,请访问公司网页:https://www.ceva-ip.com/app/connectivity/

关于 Alif Semiconductor

Alif Semiconductor 是业界领先的新一代安全 AI/ML使能32 位微控制器供应商。自 2019 年以来,Alif 不断扩大微控制器和融合处理器产品阵容,彻底改变了开发人员创建广泛的、可扩展的和互联的人工智能嵌入式应用的方式,并真正实现了高功效。Alif Semiconductor 是高功效微控制器的理想选择,能够为电池供电的终端设备处理繁重的人工智能和机器学习 工作负载。如要了解更多信息,请访问公司网页https://alifsemi.com/products/balletto

关于Ceva公司

Ceva热忱地为智能边缘带来全新的创新水平。我们的无线通信、感知和边缘AI技术是现今一些先进智能边缘产品的核心。我们拥有更可靠、更高效地连接、感知和推理数据的广泛IP 组合,包括用于蓝牙连接Wi-FiUWB 和5G 平台 IP,实现无处不在的强大通信;以至可扩展的边缘人工智能 NPU IP传感器融合处理器和提升设备智能的嵌入式应用软件。我们的差异化解决方案在极小的硅片尺寸内以超低功耗提供卓越性能。我们的目标简单:为业界提供半导体产品和软件 IP,创建更智能、更安全和更紧密互连的世界。今天,Ceva 正在努力践行这一理念,支持全球超过 170 亿个创新性智能边缘产品,涵盖从人工智能智能手表、物联网设备和可穿戴设备,直到自动驾驶汽车和 5G 移动网络。

Ceva总部位于美国马里兰州罗克维尔,公司遍布世界各地的运营机构为全球客户群提供有力支持。我们的员工包括各专业领域的顶尖专家,能够持续解决最复杂的设计难题,帮助客户将创新的智能边缘产品推向市场。

Ceva: 助力智能边缘

关注Ceva微信订阅号,请搜寻 “CEVA-IP”

围观 3

MG32F00x系列  超值登场

超值型 (MG32F003/F005系列) MCU 是笙泉科技近期新推出的通用型高性价比 MCU平台。它搭载高性能的Arm® Cortex-M0 32 位内核,主频最高可达 60MHz,支持 16KB 到 32KB Flash 存储范围;主打小封装(20/28/32引脚),适用于广泛的消费电子、工业(温控/数显表...)及8 位 MCU 之替代应用。ADC / UART / SPI / I2C等外设应有尽有,拥有更强悍的性能,却只需接近8位MCU的价格,对终端客户而言极具吸引力。

1.png

赶快抢先来看它们有哪些亮点和适合应用吧!

超值型MCU (1): MG32F003特色:

●32位 MG32F003与 8位 STM8S003F3电源/脚位兼容

●比STM8S003还多的2个IO数量

●主频速度提升(最高48MHz),在于取代8/16位MCU升级

●8通道的12位 ADC,可检测不同传感器数值

●3 组的16位定时器,可输出不同频率的PWM

●具有USART、SPI、IIC通讯接口,有CRC功能

●20Pin小封装,105度工规温度,适用各种小型设备场景

MG32F003主要应用:

2.jpg

超值型MCU (2): MG32F005特色:

●32KB Flash空间,最高主频速度可达60MHz

●2组OPA放大、2组ACMP比较器,适用小讯号放大及阈值/唤醒设定

●10通道的12位 ADC,可检测不同模拟讯号的数值

●5组的16位定时器,其中1种可互补PWM输出含死区控制

   其中1种可设置32位自动加载递加/递减计数

●具有USART/SPI通讯接口,以及DMA传输,内建温度传感器

●TSSOP28 / QFN32封装,26个IO数量

●105度工规温度,适用安防/工业场域

MG32F005主要应用:

3.jpg

MG32F00x系列规格:

4.jpg

5.jpg

若对超值型MCU产品有兴趣或需进一步信息,可浏览笙泉科技官网: https://www.megawin.com.tw/zh-CN/products-sub/M0-High-CP-Line  

来源:megawin笙泉科技

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 7

7月25日,由AspenCore主办的2024全球MCU暨嵌入式生态发展大会,在深圳罗湖君悦酒店如期举行。此次大会为来自消费电子、家电、工业控制、通信网络、新能源汽车、物联网领域、储能领域的OEM厂商和嵌入式方案集成商代表带来MCU及嵌入式系统领域的最新技术趋势和应用解决方案。

在本次主论坛上,极海高级产品经理刘洋发表了题为《极海MCU+, 赋能工业与汽车智能化》的主题演讲。他详细阐述了极海MCU及MCU+产品阵列在工业控制与汽车电子领域的最新技术进展与应用,并介绍了极海今年推出的多款创新产品,包括通用及专用微控制器、栅极驱动器、LED矩阵控制器等。

1721974659337338.jpg

工业与汽车智能化是当前技术发展的重要方向,在高效、安全、互联的发展主题下,各领域对核心元器件的功耗、性能、集成度、可靠性、可扩展性等要求也越来越高。目前极海MCU+产品线已发展成跨高/中/低端、跨领域应用的广泛产品组合,满足了多领域的应用需求,展示了极海在技术和产品多样性上的强大实力。

面向电机控制领域

极海打造的APM32M3514电机控制专用SoC、GHD3440电机专用栅极驱动器在创新应用与展示区域精彩亮相,还展出了高压水泵、通用步进电机驱动器、手持吸尘器、破壁机等电机应用方案,方案均充分满足整机系统的可靠性、续航、成本、运行速率、噪声、可拓展性、安全等升级要求,极海提供多种核心电机控制算法满足行业需求,助力用户释放更多应用价值。

2.png

面向工业与能源领域

基于可靠性、兼容性与实时性需求,极海在现场展示了全球首款基于Arm® Cortex®-M52处理器Helium™技术双核架构的G32R5系列实时控制MCU。在MCU生态大会中,刘洋先生介绍了基于G32R5系列MCU的EtherCAT总线型高压伺服控制器、一拖二微型逆变器、双向电源等单芯片解决方案,搭配方案运行演示,生动展现了G32R5系列实时控制MCU在各领域的深厚应用潜力。

3.png

面向汽车电子领域

极海积极布局汽车通用/专用MCU、专用传感器及汽车前灯驱动控制IC,产品均符合车规认证标准。会中,刘洋先生介绍了最新推出的G32A1445/1465汽车通用MCU,该系列产品通过了ISO 26262 ASIL-B认证标准,可广泛适用于BMU、BCM、充电桩、倒车雷达、智能座舱、HAVC暖通空调系统、T-BOX、车灯等汽车细分应用场景。

4.jpg

大会演讲环节,刘洋先生表示“极海产品与应用方案开发,始终围绕市场与客户需求进行,重点发力关键领域,实现产品技术与一线应用市场的深度融合。极海的解决方案生态平台以及高质量的产品管控体系,旨在大幅降低客户的导入门槛,同时为客户提供强有力的质量保障。凭借其领先的系统级生态服务能力,帮助客户实现产品的快速量产,为工业和汽车智能化的发展注入新的动力。”

5.png

在大会圆桌环节,围绕“MCU+AI:开启边缘智能新纪元”现场嘉宾进行了讨论。刘洋先生代表极海公司表示,“MCU与边缘AI的融合也成为了一个重要的发展趋势。”近年来MCU厂商纷纷布局边缘AI,将AI算法部署在嵌入终端设备当中,从而大大提升终端侧的运算能力“。极海G32R5系列产品搭载了Arm的Helium™技术,DSP性能有2.7倍的提升,ML性能上有5.6倍提升,可满足实时控制应用中的AI需求,如光伏应用的故障电弧智能检测。预计将在年底,极海会带来首个基于G32R5系列的AI应用方案展示。”

来源:Geehy极海半导体

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 4

继上篇《基于MCU平台的HMI开发的性能优化与实战(上)》深入探讨了提升MCU平台HMI开发效率和应用性能的策略后,本文将专注于NXP i.MX RT1170 MCU平台的仪表盘开发实践。我们将重点介绍Qt for MCUs的优化技巧,展示如何通过实际案例应用这些策略,以实现高效且性能卓越的HMI解决方案。

NXP的i.MX RT1170是一款高性能双核MCU,集成1GHz Arm Cortex-M7和400MHz Cortex-M4内核,提供2MB SRAM和高级安全功能。它支持多种媒体功能和实时性能,适用于消费电子、工业和汽车应用。

1.gif

上图展示的HMI仪表设计图融入了丰富元素,如实时速度、导航、车辆与电池状态,以及伪3D效果、动态车道线和多图层图像叠加等。这些设计在MCU平台上的精确实现,对HMI的高保真呈现构成了挑战。

我们将深入探讨这一设计在实际开发中的应用策略。通过实施9项关键优化,显著降低了资源消耗并增强了程序性能,确保了MCU平台上动画的流畅性,从而提升了用户体验。

01、复用一个Text文本框达到多个Text的显示效果

2.png

UI设计中有许多文字部分,比如说像上图所示的能耗部分的文字显示,从常规思维来说 “XXX km”、“XXX wh/km”和“XX.X Kmh”三部分因为数字和单位的文字大小不一样,通常会用6个Text元素实现,但是会增加文本布局的计算开销,因此我们复用一个Text文本框以达到和多个Text相同的显示效果,避免多次针对文本的布局计算。

Text 
{        
    x: 56        
    y: 82        
    color: "#FFFFFF"        
    text: "km        wh/km        Kwh"        
    font: Qt.font({            
            "family": "MiSans VF",            "
            pixelSize": 12        
    })    
}

注:右滑可查看完整代码

02、烘焙素材,考虑素材之间的层叠关系

3 00_00_00-00_00_30~1.gif

在HMI开发中,为避免速度表动画因多图叠加导致的性能问题,我们优化了素材的层叠处理。原先通过五张图叠加实现的动效,因频繁像素计算而造成动画卡顿。我们对方案进行了改进,将指针、内外光晕合并为一张图,并仅使用上半部分。通过调整旋转中心,实现指针转动效果,这样既减少了图像处理的计算量,也降低了素材数量,有效节约了资源,提升了动画流畅度。

Image 
{        
    x: 25        
    y: 142        
    width: 284        
    height: 142        
    source: "images/Speedometer/CurrentSpdRound.png"        
    rotation: speed        
    transformOrigin: Item.Top    
}

注:右滑可查看完整代码

03、图片素材优化

UI设计给出的图片资源中有些图片规格很大,然而并不是整张图片的内容都会被用到,但是没有用到的图片内容在运行时也进行了像素计算,这部分计算就是多余的资源开销,此时我们就需要对图片进行剪切,将不需要的图片内容剪裁掉,避免资源浪费。

4.png

04、降低图片编码渲染格式

在UI设计中,我们根据图片的像素精细度需求,为它们分配了不同的编码渲染格式。例如,对于像素要求较低的纯色图像,我们采用ARGB4444格式;而对于细节丰富、色彩复杂的图像,则使用ARGB8888格式以保证质量。更多细节,请参考上一期的详细解析。

05、使用PathSVG来替代部分图片

5.png

PathSVG 是一个 SVG (Scalable Vector Graphics) 文件中的元素,通常用于定义矢量图形的路径。SVG 是一种基于 XML 的文件格式,用于描述二维矢量图形。Path 元素是其中最重要和最常用的元素之一,可以用来绘制任意形状的路径,如直线、曲线和复杂的多边形。如上图所示为能耗突变的矩形框,我们可以使用PathSVG绘制矩形框,使用Gradient实现矩形框内颜色渐变,减少了图片渲染。

ShapePath 
{        
    strokeColor: "#B7FF00"        
    strokeWidth: 2        
    startX: 0        
    startY: 0        
    PathSvg {            
        path: "M 16 0 L 246 0 Q 262 0 262 16 L 262 111 Q 262 127 246 127 L 16 127 Q 0 127 0 111 L 0 16 Q 0 0 16 0 Z"        
    }        
    fillGradient: LinearGradient {            
        x1: 0            
        y1: 0            
        x2: 262            
        y2: 0          
        GradientStop {                
                position: 0                
                color: "#405607"            
        }            
        GradientStop {                
                position: 1                
                color: "#1C2011"            
        }        
    }    
}

注:右滑可查看完整代码

06、数字动画替代Timer

6.gif

仪表界面上有许多数值是随着时间变化而不断变化的,通常我们会绑定value,通过调用Timer不断改变value的数值,实现界面数据变化,但当Timer正在运行且其属性之一发生更改时,经过的时间会被重置,发生“脏事件”检查,占用大量CPU,所以我们使用NumberAnimation代替Timer,增加运行性能。

7.png

07、优化Text写法

如下表所示,优化前相当于在设置字体相关属性之前先使用了一个Qt.font对象,随后又对其进行数值修改,优化后相当于直接构建一个自定义的Qt.font对象。这样的操作减少了多余的计算开销,在同时存在多个Text而且Text属性需时刻相同时效果尤为明显。

8.png

08、编译器优化

编译器优化是一个复杂的领域,它使用了一系列的技术和策略,可以在保持程序语义不变的情况下,提高程序的运行速度并减小可执行文件的大小。同时编译器提供多个优化级别,允许开发人员在性能和可维护性之间进行权衡,例如,GCC和Clang等编译器提供了如下的优化级别:

  • O0:无优化,默认的优化级别,编译器不执行任何优化。

  • O1:基本优化,执行一些基本的优化操作,如删除未使用的变量、内联简单函数等。

  • O2:中级优化,进行了更多的优化操作,包括更大范围的内联、循环展开、函数调用图优化等。

  • O3:高级优化,进行了更深入的优化操作,如更大范围的内联、循环变形、自动向量化等。

在MCU仪表的开发中,我们采用Ofast编译模式以确保程序运行效率最大化。Ofast模式通过结合-O3和-ffast-math的优化特性,提供了一种极端的优化设置。这种设置能够充分利用CPU的多核和向量化指令集等硬件特性,显著提升程序的执行速度。尽管使用这种模式会增加程序的编译时间,但为了性能考虑这种取舍是必要的。

09、启用图片资源压缩

当处理图片显示时,MCU会先将图片数据从外部ROM复制到外部RAM,经过缩放、旋转等处理后复制到图像缓冲区中,其中外部ROM->外部RAM的步骤会消耗大量的运行时间,影响程序运行速度,为解决此问题,我们配置了以下三个参数:

1. resourceCachePolicy

配置resourceCachePolicy: “OnDemand”启用图像缓存,此时,图像在首次加载并使用后,并不会立刻被释放,而是保存在一个专门的缓存空间内,在下次使用时将直接从缓存中拿取,避免了重复加载图像带来的时间开销。

2. maxResourceCacheSize

设置maxResourceCacheSize: xxxxxxxx可配置最大缓存空间。

3. resourceCompression

配置resourceCompression: true则可以启用对图像的资源压缩,尽可能的减小图像体积,节省外部ROM空间。

应用这些优化策略后,我们能够在NXP1170平台上高效地实现并流畅运行UI设计。

来源:东信创智

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 7

随着汽车座舱智能化的不断演进,车内显示设备的数量显著增加,从传统的仪表盘和中控屏扩展至空调控制、扶手、副驾驶区域以及抬头显示(HUD)等多样化的显示单元。为了有效支持这些功能单元,同时控制整车成本,越来越多的汽车制造商开始采用微控制器单元(MCU)芯片。MCU以其低功耗、高集成度和经济性,成为降低成本的优选方案。

但由于平台的计算能力和存储空间受限,如何有效利用有限的资源来实现功能丰富、页面切换平滑的HMI应用变得至关重要。资源是否被合理地使用将直接影响应用的性能和用户体验。如果计算能力或存储空间使用不当,程序可能在PC上运行流畅,但在MCU上会遇到卡顿甚至崩溃的情况,无法满足设计目标。为应对此挑战,专为资源受限设备量身定制的工具——Qt for MCUs应运而生。凭借其极小内存占用和高度优化的库,Qt for MCUs旨在为MCU和低端MPU提供高性能HMI应用程序开发工具。采用Qt for MCUs在MCU平台上可以获得极佳的开发体验以及更好性能的HMI应用。

Qt for MCUs极大地减轻了开发人员在移植和调优方面的成本,但在资源受限的MCU平台上,性能优化始终是一项不可回避的挑战。

本文将基于Qt for MCUs工具,探讨如何通过精简代码、提升运行效率以及优化内存和资源管理等策略,来提高MCU平台下的HMI开发效率和应用性能。

一、降低代码量

减少代码量不仅能够降低程序对存储空间的需求,还能简化程序结构,使代码更加清晰。这有助于系统承载更多功能,同时还可以避免因内存不足导致的系统崩溃。简化的代码逻辑减少了CPU的分支判断,从而减轻了处理器的负担。此外,减少的运行时间还能降低能耗,并且有助于编译器更有效地优化代码,生成更高效的机器码。

在Qt for MCUs平台,我们推荐从以下三个方面对代码量进行优化:

1、减少锚点的使用

锚点是一种布局方式,用于将一个元素相对于另一个元素进行定位。

通过设置元素的anchors属性,可以将元素的边缘与其父元素或其他元素的边缘对齐。锚点可以在不同大小的屏幕上自适应,并且可以根据不同的屏幕方向进行动态调整。每个项目都可以被认为有一组 6 条不可见的“锚线”:

左丨水平中心丨右丨顶部丨垂直中心丨底部

使用锚点进行开发虽然提供了布局的灵活性,但过度依赖它们可能会带来一些弊端。特别是在界面尺寸固定的情况下,锚点的动态计算过程不仅增加了代码的复杂度,还会带来不必要的性能开销。

通过直接指定坐标位置来替代部分锚点,可以简化代码结构,降低代码行数,从而提高代码的可读性和可维护性。

让我们通过一个简单的图形示例来比较锚点定位和绝对定位两种实现方式的不同。

0.png

下表左侧代码为绝对布局实现方式,右侧代码是锚点布局实现方式。

1.png

对比可以看出锚点布局的实现方式相较于绝对布局方式代码行数要多,且从代码逻辑上看,计算逻辑要更为复杂。

2、使用Repeater    

Repeater是Qt for MCUs提供的一个自动重复的功能组件。通过使用Repeater可以方便的创建多个相似的控件,而无需手动编写重复的布局和逻辑代码。这不仅可以减少代码量,还可以提高界面的一致性和可维护性。

import QtQuick
Item {    
    .........    
    //Column布局矩形元素竖向排列    
    Column{        
        spacing: 10 // 列元素之间的间距为10        
        Repeater { // 用于重复生成元素            
        model: 3 // 模型为3,生成三个矩形            
        //delegate 定义了每个重复元素的模板,这里每个元素都是矩形            
        delegate: Rectangle {                
            id: rect                
            width: 100                
            height: 100                
            color: getColor(index) // 使用预定义的函数获取矩形填充颜色            
          }        
       }    
  }    
  ..........
}

2.png

通过上图的例子可以看出,创建三个矩形,我们可以通过将编辑好的矩形样式应用到Repeater内的组件中来实现,无需三次重复编写矩形控件代码和使用布局来设置它们的位置。同时还可以通过函数调用的方式为每个矩形设置不同的属性。这种方法不仅减少了代码量,还提高了代码的可维护性。

3、增加可复用组件

在UI界面开发中,经常会遇到默认的组件样式无法完全满足设计需求的情况。为了解决这一问题,我们可以将基础组件进行样式定制,以满足特定的设计要求。然后,将这些定制的组件封装到一个独立的文件中,创建为自定义组件。这样,我们就可以像使用官方组件一样,通过几行简单的代码来调用这些封装好的自定义组件。这种方法不仅提高了代码的复用性,减少了冗余,也提升了整体的代码质量,如下图所示。

3.png

除了提取重复使用的组件样式代码外,我们还可以通过将多处出现的逻辑代码抽取并封装到单独的文件中,实现代码的集中管理和统一维护。

二、提高运行效率

提升运行效率能够显著加快系统的响应速度,从而增强用户的使用体验。我们可以通过以下四种策略来提高运行效率:

1、减少动态绑定依赖次数

如图所示,当属性与其他属性绑定并形成依赖关系时,若属性值发生变化,依赖属性会被标记为“脏”状态。随后,系统会触发并处理所有标记为“脏”的事件,确保依赖属性能够及时更新其值。这种动态更新机制虽然有效,但其复杂的依赖管理和事件处理过程可能会导致性能下降。通过减少不必要的动态绑定和依赖次数,我们可以降低属性刷新的频率,进而提升系统的运行效率。

4.png

2、修改控件源代码

修改Qt for MCUs的控件源代码,可以暴露更多的控制接口,从而能够更直接地操作控件的属性和行为,减少中间层的开销,提高运行效率。

3、错峰加载与预加载

Loader是Qt for MCUs中用于加载UI资源的组件。修改Loader的加载策略可以有效平衡性能消耗,减少资源加载期间的卡顿现象。

  • 错峰加载策略:分散资源或任务的加载时间

系统启动时可能会因资源争用而遇到性能下降或崩溃的问题。通过实施错峰加载机制,我们不是同时加载和初始化所有模块或任务,而是按计划的顺序和时间间隔分批进行。这种方法可以缓解启动时的资源竞争和高负载,确保系统的平稳运行。

  • 预加载策略:提前加载资源或执行任务

5.png

提前加载资源

预加载策略指的是在页面实际显示给用户之前,就预先加载未显示的页面。这样做可以防止在页面加载过程中出现空白屏幕,从而提升用户体验。

为了实现系统性能的优化和用户体验的提升,我们需要根据具体状况,选择最合适的加载策略。

4、局部数据刷新

全局数据刷新会触发整个界面的重绘,造成不必要的性能损耗。通过改进刷新策略,采用局部配置数据刷新代替全局刷新,可以只更新界面中需要变化的部分,减少不必要的渲染工作,从而提高运行效率。

6.gif

全局刷新

7.gif

局部刷新

如上图所示,当数据发生变化时,首先进行数据对比,有数据变化的部分重新加载刷新数据,无数据变化的部分保持不变,无需再次加载,减少了渲染操作,提高了运行效率。

三、内存管理

高效的内存管理对于提升HMI的应用性能和稳定性至关重要。它有助于减少内存碎片、加快访问速度、降低分配成本、防止内存泄漏,并优化内存使用。在资源受限的MCU环境中,可以确保HMI应用的流畅运行。我们提供三种关键的内存管理策略,旨在优化内存使用。

1、单例模式

单例模式是一种设计模式,它保证一个类在整个应用中只有一个实例,并且提供了一个统一的访问点。这种模式通过一个特定的类来实现,这个类负责自己的实例化,并且保证只实例化一次。它允许我们直接访问这个唯一的实例,无需通过常规的实例化过程。这有助于降低系统复杂性,提高性能,并节省宝贵的资源。

2、内部申请机制

我们采用统一且预定义的内存管理机制,有效预防出现内存泄漏、碎片化和过度分配等问题。

8.png

上图展示了FreeRTOS中pvPortMalloc的内存分配流程,这是FreeRTOS为动态内存分配特别设计的函数,与标准C库中的函数类似,但专为FreeRTOS的任务调度和内存管理机制优化。FreeRTOS提供了五种内存管理方案:

heap_1:最基础的实现,不支持内存释放。

heap_2:支持内存释放,采用简单的连续内存分配算法,可能产生内存碎片。

heap_3:使用标准库的malloc()和free()函数,依赖于标准库的实现。

heap_4:提供最佳平衡,采用首次适应算法,并通过合并空闲块减少碎片化。

heap_5:最灵活,支持多个独立堆区域,适合复杂内存管理场景。

开发者可以根据设备条件和需求选择最合适的内存管理方案。

3、内存池技术

内存碎片是嵌入式系统中普遍存在的问题,尤其是在频繁申请和释放小块内存时更为明显。内存池技术通过预先分配一定数量的小块内存,并在程序运行期间循环使用这些内存块来解决这一问题。需要内存时,直接从内存池中获取;不再需要时,则将其返还给内存池,而不是释放回系统。这种方法减少了内存的频繁分配与释放,有效防止了内存碎片的产生。此外,内存池还有助于优化内存对齐,进一步提升内存的使用效率。

9.png

如上图所示,程序启动时,我们预先分配一定数量的固定大小内存块。在申请内存时,直接从这些预分配的块中获取;释放内存时,则将其放回预分配的块中,以便再次使用。每个内存池针对特定的使用场景设计,与传统的malloc/free相比,它减少了复杂的逻辑处理,可以显著提高性能。

四、资源管理

资源管理的核心在于优化图片资源的性能,我们采用以下三种策略来应对系统对图片资源的各种需求,目的是不影响用户体验的前提下,降低图片存储的开销。

1、BorderImage

BorderImage属性允许在用户界面中绘制可伸缩的边框图像,非常适合创建大小可变且边缘不失真的UI元素,例如按钮、面板和背景。当处理图像内容简单(如纯色图片)时,BorderImage可以替代传统的Image属性。它能够无损放大图像边缘,防止拉伸时的失真,同时减少了存储空间中不必要的像素数据。在某些特殊场景下,这种方法几乎可以避免图像质量损失,具体效果如下方图示。

10.png

2、ColorizedImage

ColorizedImage组件用于展示图片并应用颜色遮罩,能够将指定颜色应用于原始图像,从而生成具有不同色彩效果的图像。当面对内容相同但颜色各异的大量图像时,ColorizedImage提供了一种高效的解决方案:只需存储一张基础图片并进行动态上色,这样可以大幅减少因颜色不同而需存储的多张图片所占用的存储资源。然而,这种方法在执行效率上可能略低于直接使用Image,因此更适合于小型图标以及显示数量较少的场景,具体效果可以参考以下图示。

11.png

3、降低图片编码渲染格式

Qt for MCUs针对图片资源提供了多种格式选项,允许开发者根据不同场景和图片特性选择最合适的格式,以优化存储效率。每种图片格式都有其特点和占用空间大小,合理选择格式有助于在图片资源的存储优化和MCU的计算能力之间找到最佳平衡点。

12.png

通过在合适的场景下使用适合的图片存储格式可平衡显示效果和存储、加载的空间占用,如下图所示,上方图片为在RGB444下的显示效果,下方图片为在RGB888下的显示效果,在色彩丰富的情况下可明显看出两者的区别,但同大小图片下RGB888的存储占用是RGB444的2倍,但在图像颜色简单的情况下两者区别肉眼难以发觉。

13.png

本文深入探讨了使用Qt for MCUs进行HMI应用开发时,通过优化代码、提升运行效率、管理内存以及合理使用资源来提高应用性能的策略。这些优化措施使开发者能够在资源有限的MCU平台上构建高效且功能丰富的HMI应用,确保用户获得流畅、稳定的操作体验。随着技术的不断发展,我们将探索和分享更多的优化方法,进一步提升MCU平台上的HMI应用性能。

下一章,我们将结合实际案例,深入开展Qt for MCUs的实战演练,通过具体示例详细讲解HMI开发过程中的各项优化策略的应用及其效果,帮助开发者全面掌握通过Qt for MCUs来进行HMI开发的实战开发技巧。

来源:东信创智

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 5

指尖在键盘上的每次敲击,都伴随着RGB灯光的绚烂闪动,宛如在键盘上演出夺目的光影秀,从流光溢彩的渐变,到震撼人心的波浪,再到动感十足的呼吸灯效,各种灯光模式绚丽夺目,再加上流畅的回馈手感,让游戏或打字体验变成了视觉与触觉的双重享受。

机械键盘的各种神奇魔力,均源自核心主控芯片MCU的加持。正是新一代MCU具有的强大性能和扩展功能,才不断重塑机械键盘的边界,使其不仅能实现更多样化的功能,还极大增强个性化定制的空间,进一步展现了科技创新带来的无限魅力。

市场与技术的双轮驱动

机械键盘早已从极客的最爱变成大众的选择。据Market Research Future(MRFR)的综合报告,机械键盘市场将以12.7%的复合年增长率增长,2030年市场规模将达到36.3亿美元。

这种走红并非偶然。首先,机械键盘的每个按键都采用独立的机械开关,带来清晰的触觉反馈和完美的按压感。红轴顺滑,青轴清脆,茶轴平衡,无论是追求速度的电竞选手,还是偏爱打字的作家,都能找到属于自己的绝佳手感。

其次,机械键盘配备多种RGB背光模式,用户可以随心所欲地定制灯光颜色、亮度和动态效果。完美的敲击感和光韵流转的动态灯光模式,可根据游戏场景的变化调整灯光颜色,让用户可以沉浸在紧张刺激的游戏体验中。

要让机械键盘充满魅力,选择一个高效的核心MCU就变得尤为关键。作为机械键盘的核心组件,MCU承担着处理输入、输出以及与其他设备通信的重要任务,从而确保键盘能够顺利执行包括宏编程、背光调节和游戏模式在内的各种复杂功能。因此在选择MCU的过程中,应当高度重视其在处理速度、低功耗设计、程序可移植性、硬件扩展能力等方面的综合性能表现。

首先,机械键盘需要MCU具备足够的处理能力来支持高回报率、无延迟的实时响应控制。其次,随着用户对机械键盘功能的不断增加,如背光灯控制、多模式切换等,对MCU的硬件扩展能力提出了更高的要求。第三,低功耗设计对于机械键盘长时间使用的场景至关重要。最后,在选择MCU时,不仅要考虑性能,还要考虑其在不同应用中的可移植性和开发便利性。因此,MCU不但要具有足够的处理能力,还要有能力去利用这些技术来提供更丰富的用户体验。

以这些要素来衡量,兆易创新最新推出的GD32L235将是一个非常合适的选择。GD32L235基于ARM® Cortex® -M23内核,主频最大64MHz,向下兼容M0/M0+内核产品。其新增的WLCSP25超小尺寸封装非常适用于可穿戴设备、便携式设备等有限的硬件空间应用场景。最为重要的是,该系列紧贴低功耗市场需求,拥有更优的功耗效率、丰富的接口资源、更高性价比,非常适合机械键盘等PC外设应用。

GD32L235.png

从能效到灯效 尽在GD32L235掌控中

与所有电子设备相同,功耗也是机械键盘性能的重要评判指标。尤其是无线机械键盘,如果采用三模(BLE/2.4G/USB)方式,再配置RGB背光,续航就将成为决定产品使用体验的关键。而作为整个键盘调度中心的MCU,其功耗特性将决定整个机械键盘的表现。

GD32L235系列在功耗方面表现出色。其针对功耗效率方面进行了一系列优化提升,支持包括深度睡眠(Deep-sleep)、部分睡眠(Sleep)和待机(Standby)等6种低功耗模式。在深度睡眠(Deep-sleep)模式下,电流降至1.8uA,唤醒时间低于2uS;待机(Standby)模式电流更是低至0.26uA。即使在最高主频全速工作模式下,其功耗也仅为66uA/MHz,实现了效能和功耗间的卓越平衡。

同时,在设计高性能机械键盘时,对MCU的PWM通道数量、I/O资源以及Flash存储能力提出了严格要求。GD32L235系列微控制器恰如其分地满足了这些高阶需求,展现了其在机械键盘领域的适应性。

如前文所述,RGB灯效已成为机械键盘受到消费者推崇的主要原因。如果要实现复杂绚丽的RGB背光效果,MCU的多路PWM输出能力必不可少。具体到GD32L235系列,其拥有多达11个定时器,包括2个16位低功耗定时器、6个通用16位定时器、1个高级定时器和2个基本定时器,充分满足了复杂RGB灯光效果的控制需求,使键盘能够呈现从静态色彩到动态光谱流转的全方位视觉体验。并且,这些丰富的PWM资源,也可以为机械键盘省去专门的灯光控制芯片,从而降低整个系统的功耗和成本。

考虑到键盘矩阵扫描与独立LED控制的双重需求,GD32L235还提供多个I/O接口,实现高效的信号检测与灯光指示功能的复用,确保键盘在高响应速度与复杂功能集成之间的完美平衡。具体而言,该系列集成2个低功耗LPUART、2个USART、2个UART、3个I2C、2个SPI等通用外设接口,还配备1个CAN2.0控制器和1个USB 2.0 FS控制器等标准通信接口。模拟外设方面,该产品系列配备1个12位ADC,支持差分输入和单端输入两种模式,提高了ADC模块的精度和性能;还集成1个12位DAC和2个比较器。这些丰富的外设资源不仅优化了硬件布局,还简化了布线复杂度,为开发者提供了极大的灵活性。

此外,GD32L235内置的Flash资源,最大支持128KB eFlash,不仅支持存储密集型的固件程序,还便于配合上位机驱动,实现软件层面的深度定制与升级,为用户提供更加丰富和流畅的操作体验。这不仅提升了键盘的可扩展性,还为未来功能的迭代预留了充足的空间。

有线和无线方案双发力

以GD32L235为核心,兆易创新的合作伙伴深圳智芯云技术有限责任公司基于GD32L235开发了全功能机械键盘解决方案,可助力客户实现丰富的功能和高度可定制性。

基于GD32L235的全功能机械键盘解决方案.png

图 基于GD32L235的全功能机械键盘解决方案

有线机械键盘作为主流产品,可充分发挥绚丽的RGB灯效。为此,该方案能实现每颗RGB独立控制,支持256级PWM;实现全彩控制,1600万色设定,内置20种炫酷灯效,支持客户自定义灯效。同时,自主研发的上位机QT平台支持多种系统,可以实现灯光设置、屏幕设置、宏编辑、Fn层设置等键盘配置。

这款有线方案还具备多按键模式,全键无冲;支持1000Hz回报率;可根据客户需要定制78/87/104键等不同键值的数目需求,支持多国语言版本;支持在线USB升级固件;响应PC休眠进入休眠、按键或PC唤醒;支持Win、Mac、Linux、安卓等系统。

相对有线方案,无线方案更偏重能效和连接的稳定性。为此,该无线方案增加以下功能:支持大容量1-2节锂电池充放电管理;无线模式下超低运行功耗远低于行业标准;USB/2.4G同时支持1kHz稳定回报率;具备更低的睡眠功耗,一级低功耗模式下<200uA,二级休眠模式下<100uA;多种连接模式切换逻辑可自定义;支持硬件开关/旋钮切换,支持自定义各种快捷键切换;支持在线USB/无线升级固件。

搭配智芯云自有的上位机系统,客户可以配置不同RGB灯效、RGB刷新速度、LCD屏显示效果等炫酷场景,根据不同场景的需求定制出不同的终端产品。

为了便于客户的产品能迅速推向市场,兆易创新还配备丰富的开发资源。GD32L235系列配套的文档手册及软件资源已经可以下载,针对GD32L235系列不同封装和管脚配置的配套开发工具也已同步推出。

除去GD32L235,兆易创新的MCU产品家族中还有GD32F303也可用于机械键盘方案的开发。该芯片采用ARM® Cortex® -M4核心,最高主频可达120MHz,支持高速DSP运算,具备完整的DSP指令集、并行计算能力和专用浮点运算单元(FPU)。兆易创新与合作伙伴已经推出了基于GD32F303 MCU的QMK固件机械键盘解决方案,并得到市场的好评。

机械键盘市场正以前所未有的速度蓬勃发展,而高性能MCU的不断涌现,成为推动这一市场迅猛增长的关键驱动力。这些先进的MCU不仅提升了键盘的响应速度,实现了近乎零延迟的输入反馈,还极大地丰富了自定义功能和灯光效果,可满足从专业电竞选手到日常办公用户多元化、个性化的需求。随着物联网、人工智能技术与机械键盘的深度融合,MCU在能效比、集成度以及智能化处理能力上的持续突破,正引领着机械键盘行业向更加智能、高效、定制化的方向演进。

欲了解更多基于GD32L235系列MCU全功能机械键盘的方案详情,请咨询:

Solution_GD@gigadevice.com 

文章来源:兆易创新GigaDevice

围观 6

有些特殊的外设会使用基于SPI模式,发送连续比特流来传输数据。本文主要介绍对于Renesa RA,如何使用SPI来实现高速比特流的发送。

注意,此方式仅针对搭载了支持该工作模式SPI外设的RA产品,使用前请在硬件手册中确认这一点。

灵活的Renesas Advanced(RA)32位MCU是采用Arm® Cortex®-M33、-M23、-M4和-M85处理器内核,并经过PSA认证的、行业领先的32位MCU。RA可提供更为强大的嵌入式安全功能、卓越的CoreMark®性能和超低的运行功率,相比竞争对手的Arm Cortex-M MCU具有重大优势。PSA认证可为客户提供信心和保障,帮助其快速部署安全的物联网端点和边缘设备,以及适用于工业4.0的智能工厂设备。

有关瑞萨RA MCU的更多信息,请访问下方网址:

RA MCU

https://www.renesas.cn/cn/zh/products/microcontrollers-microprocessors/ra-cortex-m-mcus 

有关SPI的更多信息,请访问下方网址:

SPI

https://www.renesas.cn/cn/zh/products/gadget-renesas/reference/gr-lychee/library-spi 

RSPI在正常的配置模式下,如果发送4个字节,总线上波形如下图所示。在每两个字节之间都有delay的插入。

1.png

手册上关于这部分的描述如下:

2.png

t1是从SSLn生效到第一个clock的延时

t2是最近一个CLK结束到SSLn失效的延时

t3是SSLn再次使能之前的延时

但是这样会造成比特流不连续,无法满足某些特定应用的要求。

SPI实际上还提供了Burst功能,用于产生连续的比特流,该功能尚未在FSP界面中支持,当前可通过手动修改R_SPI代码实现,把寄存器位SSLKP和BFDS置位。更新代码如下所示:

3.png

修改代码后,测试波形结果如下图:

4.png

细心的小伙伴会发现,最后一个字节没有发送完成。仔细检查发现,在最后一个字节发送的过程中,RSPCK上缺少两个clock,实际上程序也没有进入发送完成中断。

所以光这样还不行,还需要在发送中断程序中做一下处理。

在ra\fsp\src\r_spi\r_spi.c的函数r_spi_transmit函数中增加一个判断,在发送最后一个字节前,重新把SSLKP清零:

5.png

这是修改后的时序,字节间已经没有插入delay,保证了比特流的连续性。

6.png

需特别注意的是,假如生成连续比特流,则不支持通过DMA/DTC进行SPI传输。

另外,如果不切换FSP的版本,对于源码的修改,RA文件夹中可以保留,但是ra_cfg和ra_gen文件夹中的内容会被FSP重写。如果切换FSP的版本,则三个文件夹(ra,ra_cfg和ra_gen)中的内容均会被FSP重写。

对该功能的支持已加入FSP的开发计划,届时无需手动修改,仅需在FSP Stack中配置即可。

有关FSP的更多信息,请访问下方链接:

FSP(瑞萨灵活配置软件包)

https://www.renesas.cn/cn/zh/software-tool/flexible-software-package-fsp 

来源:瑞萨嵌入式小百科

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 6

作者:云途 技术市场总监  顾光跃

什么是智能ADB大灯      

ADB(Adaptive Driving Beam)是一种先进的智能远光控制系统,它可以根据实时路况自适应调整远光光型,以更好地适应不同的驾驶环境,提升驾驶安全性。相较于传统头灯,其具有以下几个方面的优点:

1、自适应调整:ADB系统通过车辆的传感器和摄像头实时监测路况和车辆行驶状态,以及道路上的其他车辆和障碍物。根据这些信息,系统自动判断是否需要开启或关闭远光,以及如何调整远光的光型。

2、避免眩目:ADB系统最显著的特点是能够根据前方视野中的车辆位置,自适应变换远光光型,以减少对其他道路使用者的眩目影响。它能够将光线投射到需要照亮的路面上,同时避免对其他车辆或行人造成眩目,从而大大提高了驾驶安全性。

3、提升可见度:与传统的固定光型的远光灯相比,ADB系统能够根据实际情况调整光型,使驾驶员在各种路况下都能够获得更好的视野。这有助于及时发现道路上的障碍物、行人或其他车辆,从而提前做出反应,避免事故发生。

4、车辆状态和环境感知:除了基本的自适应调整功能外,现代的ADB系统还集成了更多的传感器和功能,如环境感知和预测系统。这些系统可以通过感知周围环境的变化,如雨、雾、雪等天气条件,或者前方道路的弯道、路口等情况,进一步调整远光的光型和照射范围,以提供最佳的照明效果。

对于ADB大灯,其基本架构如下图所示:

1.png

对应的硬件框图如下:

2.png

相较于其他外饰灯,ADB大灯对MCU会有更高要求,以适应更复杂的算法和控制系统,从当前的客户需求来看,内核为Arm Cortex-M0+的MCU已无法满足ADB项目的需求,采用Arm Cortex-M4核或者性能更好的Arm Cortex-M33核的MCU才能满足要求,Flash一般需要512KB,部分项目如需支持AUTOSAR架构或者OTA升级,Flash则需要达到1MB。

云途半导体的YTM32B1M系列可以很好的满足这一需求。YTM32B1M为云途自主研发的基于Arm Cortex-M33的微控制器,主频高达120MHz,带有FPU/DSP,能够高效率处理复杂的浮点运算,适合运行复杂的算法,内置512KB/1MB flash, 产品通过AEC-Q100 Grade1级别测试,并已经取得ISO26262 ASIL-B等级功能安全产品级认证。其子系列中YTM32B1MD和YTM32B1ME系列都已在ADB大灯上有实际项目应用,另在组合车灯、贯穿式尾灯、头灯、ISELED氛围灯等项目上有量产实例。具体产品系列与规格如下:

1721640468831456.png

来源:云途半导体YTMicro

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 16

近日,2024慕尼黑上海电子展在新国际博览中心盛大举办。以“极海MCU+  全域布局,跨代创新”为主题,极海全方位展示了在汽车电子/工业与电源/电机控制等领域的创新产品与应用实践成果。

在智行芯片需求不断增长的趋势下,极海通过重点发力关键领域,实现产品技术与一线应用市场的深度融合,突破多项行业壁垒,为智能驾驶带来更稳定、更安全的产品支持。在本届展会上,极海汽车电子主题区动态展示了GALT61120汽车前灯LED矩阵控制芯片、GURC01超声波传感和信号处理器、G32A1465/1445汽车通用MCU,以及OBC/充电桩、前照流水灯/尾灯、ADB前灯控制模块、超声波传感器等行业领先的智行车灯方案,吸引了众多业内人士密切关注,与现场技术人员深入了解极海在汽车电子领域的成功案例。

1721370358497862.jpg

当前,随着汽车照明系统不断向智能化、功能多样化演进,赋予车灯芯片在汽车产业链上更多价值与机会。车灯芯片已成为推动智能驾驶升级的关键力量。作为国内领先的汽车电子芯片供应商,极海强化设计技术、产品和应用创新,基于对汽车照明系统的长期探索和主要应用的深度关注,围绕前照灯、后组合灯、氛围灯三个细分赛道已做全面布局。

GALT61120汽车前灯LED矩阵控制芯片

专为智能车灯照明系统设计

GALT61120是极海推出的首款汽车前灯LED矩阵控制芯片,符合AEC-Q100 Grade1车规可靠性标准,可显著增强前照灯的环境适应性,优化EMI性能,并大幅降低系统功耗和发热量,广泛适用于汽车前照灯系统、高亮度LED矩阵系统、ADB自适应车灯系统、动画日行灯、智能交互矩阵大灯、智慧投影大灯等。

GALT61120在技术层面已达到国际先进水平,提供像素级LED独立控制,根据实际应用需求实现不同功能模块的应用拓展,可实现1024级亮度的高精度控制,并且通过内部寄存器调整PWM配置相位与器件间同步,自动灵活调节LED灯珠光亮,增强前照视觉与安全性。

1721370390787875.png

1721370403883995.png

MCU+LED驱动+Solution

推动智能车灯照明系统应用创新

极海致力为客户转型升级提供关键助力,聚焦高像素、精细化的智能照明方案,推出汽车通用MCU+LED+驱动解决方案,包括汽车音乐律动氛围灯、汽车尾灯、LED矩阵式前照流水灯等解决方案,满足多场景需求。同时,极海丰富的开发生态,帮助客户提升研发效率并降低成本,加速项目快速落地。

1721370421839592.png

1721370437757844.png

1721370450802550.png

来源:Geehy极海半导体

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 8

页面

订阅 RSS - MCU