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

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

3天内不再提示

面向特定应用的硬件、库和软件工具的单一来源如何简化嵌入式开发

星星科技指导员 来源:microchip 作者:microchip 2023-04-24 09:38 次阅读

简介

“一刀切”正变得不是一种可行的电子产品策略,无论是消费类还是工业应用。用户电子设备的灵活性和可定制性是新的设计范式。每年,常见的电子产品类别都在合并,获得功能并变得更加以用户为导向。虽然电子产品中的功能倍增是行业的常态,但最新设计中实现的功能的速度和数量正在加快。对于电子设备设计师和开发人员来说,这意味着他们现在需要在与以前的设计相同甚至更小的空间中集成更多功能。

在当今时代,嵌入式设计师必须是万事通,拥有一支技能非常广泛的团队,或者依靠外部承包商来填补下一代产品所需的功能空白。很少有嵌入式设计师在一天中拥有一系列技能和时间来亲自设计必要的功能,以满足用户需求并保持竞争力。例如,使用电机控制系统的嵌入式设计人员不太可能也足够精通无线技术,除非有陡峭的学习曲线,并且可能需要数月的反复试验,从而在其最新的电机产品中包括无线控制/连接。

这就是为什么Microchip不断扩展其硬件,软件库和开发工具的生态系统的原因。这些资源具有丰富的功能和灵活性,使整个电子行业的开发人员无需每个功能类别的专业知识即可开发最新产品。本文的目标是提供对Microchip硬件平台、软件库和开发工具的见解,使设计人员能够快速将工业级功能集成到其嵌入式电子设备中,而无需在嵌入式编程或学习每个功能背后的技术细微差别方面付出重大努力。

硬件

每个产品设计阶段都需要在生产前进行原型设计和概念验证。电子设备的理想逻辑、外设和附件硬件是功能丰富、紧凑、易于集成和易于使用。此外,理想的硬件还将配备经过专业构建和测试的丰富软件库,以及开箱即用的兼容软件开发工具。易于操作的高度可扩展的开发板在构建工具链时,在建立项目的可行性和设计人员的熟悉程度方面也发挥着关键作用。

Microchip提供两种开发板系列——入门级Curiosity开发板和功能齐全的Explorer开发板,有助于满足这些需求,并为早期产品和概念验证/原型开发提供高度灵活的方法。好奇号板支持 8 位、16 位和 32 位微控制器MCU),并且具有高度可定制的灵活连接选项和 mikroBUS™ 接头,可与大量MikroElektronika 点击板™兼容。这些点击板可以轻松更换,以创建从混合信号设计到电机控制、时钟和定时、电源管理等应用。

芯片的 Explorer 板比好奇板更灵活、更具可扩展性。Explorer 主板还提供 mikroBUS 插槽并接受处理器插件模块 (PIM),支持交换 16/32 位处理器,以帮助取消签名者找到理想的解决方案。此外,Explorer 板还可以通过可定制的PICtail™ Plus 子板进行扩展,从而通过预构建的应用程序实现快速开发。许多PICtail子板和其他硬件套件都是围绕特定应用的硬件构建的,并由广泛的软件库以及专业开发和用户生成的代码示例提供支持。

软件库 除了Microchip的开发板和特定应用的硬件外,还有开发人员快速部署每个应用的功能和特性所需的软件库

和代码资源。Microchip不必像通常那样组装一系列软件库和功能来实现一些简单的任务,而是提供了丰富且经过严格测试的软件库和代码示例,这些软件库和代码示例与嵌入式设计一样即插即用。这些软件库和代码示例是专门为每个特定于应用程序的硬件解决方案设计的。MPLAB CodeConfigurator和MPLAB®Harmony都具有广泛的库,用于USB,文件系统等常见功能。

特定于应用的设计工具 要利用任何嵌入式硬件平台的多功能性,开发人员可以利用并适应其应用程序需求的兼容且用户友好的工具

链至关重要。Microchip提供功能齐全,甚至是图形化的编程软件工具,如MPLAB X集成开发环境(IDE),MPLAB代码配置器和Atmel START,它们可以通过插件进行扩展,就像Microchip的硬件平台一样。其中许多插件通过其他特定于应用程序的设计工具增强了基本 IDE,从而降低了入门级开发人员对每个给定应用程序的门槛。

MPLAB X IDE的一个插件是MPLAB HarmonyGraphics Suite (MHGS),它与MPLAB Harmony软件框架完全集成。MHGS 提供了一套工具,可以比标准工具更快、更高效地方便地创建、自定义和优化图形用户界面 (GUI) 应用程序。MHGS的众多功能之一是开发人员能够在几分钟内从概念到玻璃,而无需编写任何代码。拖放对象可以直接输入到 MHGS 的设计中,并且可以使用其他插件来进一步支持其他不支持的非标准显示器的开发。

Microchip的另一个灵活的设计工具和插件是motorBench®开发套件,它为低压电机的磁场定向控制(FOC)提供了基于GUI的软件开发工具。电机控制器嵌入式开发的一个常见挑战是轻松启动和高效运行带负载/无负载的新电机,如果电机参数未知,这尤其困难。提供直观的图形开发环境,motorBench 开发套件省去了创建工业级电机控制解决方案的许多耗时步骤。它通过促进关键电机参数的精确测量,同时调整反馈控制增益来快速获得速度和扭矩的稳定PI控制,从而实现这一点。此外,该开发套件能够通过电机控制应用框架(MCAF)和用户界面为MPLAB X IDE项目生成源代码,该用户界面使用现成的帮助文件和资源逐步引导用户完成整个过程。

应用示例

最新的电子设备中集成了许多常见的特性和功能。许多传统的电子产品现在都增加了显示器、触摸功能以及外部电机/电源控制和转换。这些功能有助于将产品与越来越多的竞争对手区分开来,还可以实现最适合每个细分市场的产品开发。以下应用示例展示了Microchip针对特定应用的硬件、软件和开发解决方案的灵活环境。

在电子产品的界面上添加用户友好且有吸引力的显示屏,既可以为用户提供有关产品操作/控制的宝贵反馈,也可以增加与同类产品中的其他产品的美学差异化。Microchip的几款MCU和微处理器(MPU)都配备了集成的图形控制器。还提供低成本控制器和外部图形控制器,并与Microchip的逻辑器件兼容。集成控制器能够驱动简单的分段式LCD显示器、带有静态图像的小型显示器、高达宽四分之一视频图形阵列(WQVGA)的8/16位彩色显示器,甚至高达WVGA分辨率的16/24位彩色显示器。还提供外部 LCD 控制器和图形硬件加速设备,可驱动高达 24 位 WVGA 显示器,用于交互式 UI 或视频图形。

如前几节所述,Microchip提供广泛的硬件开发平台、软件库和MHGS开发工具,以及免费的Microchip图形库,以利用各种预制图形对象和资源。这些工具,以及一系列应用笔记和附加代码示例,可帮助开发人员在不使用这种灵活支持的情况下,在一小部分时间内推出可行的显示解决方案。

向产品添加触摸或手势界面是为产品带来强大且低成本功能的有效方法。随着用户对触摸控制和图形接口越来越舒适,如果不提供这些功能,就很难保持竞争力,特别是对于销售点、汽车、智能家居和工业应用。Microchip 借助适用于 8 位 PIC® 和 AVR® MCU 以及 32 位 SAM MCU 的 2D 触摸库,使集成的2D 触摸手指跟踪和表面手势识别变得简单。这种类型的触摸应用可以包括电容式触摸滑块、触摸板,甚至触摸/手势系统。

无论是集成到MCU中的触摸传感技术还是外部触摸传感器/控制器,Microchip都能提供多种开发电路板、套件、2D/3D 触摸板、软件库,甚至图形可编程开发环境,可帮助设计人员轻松实现触摸或手势解决方案。

除电机控制外,还有其他电源应用越来越多地由逻辑器件驱动,即数字电源转换。除了支持电机控制应用外,Microchip还开发了一个灵活的硬件、软件和开发工具系统,使数字电源设计人员能够更轻松地部署其解决方案。

除了数字电源入门套件、参考设计、开发板和数字信号控制器(DSC)外,Microchip还提供完整的软件库和专用的数字电源设计套件。这些工具通过分析工具和全面的设计示例,使编写和优化功耗算法变得简单明了。因此,即使是没有经验的开发人员也可以拿起数字电源开发板、免费软件、固件、示例代码、应用笔记和培训资源,并在数周而不是数月内部署专家级嵌入式解决方案。

结论

增强电子产品或产品线,增加特性和功能,几乎是创造竞争优势和获得更大市场份额的标准方法。但是,这些特性和功能是以额外的开发时间和资源为代价的,并且通常需要具有应用领域专业知识的开发人员。幸运的是,借助Microchip灵活的特定应用硬件、软件库和开发工具生态系统,即使是新手开发人员也可以快速有效地为各种应用构建新的解决方案。

审核编辑:郭婷

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

    关注

    48

    文章

    7644

    浏览量

    151847
  • mcu
    mcu
    +关注

    关注

    146

    文章

    17310

    浏览量

    352193
  • 开发板
    +关注

    关注

    25

    文章

    5120

    浏览量

    97950
收藏 人收藏

    评论

    相关推荐

    嵌入式开发教程之程序设计与开发维护

    、汇编语言、面向过程的语言、面向对象的语言、汇编/编译与解释程序的基本原理。  3、嵌入式软件开发环境:宿主机、目标机、嵌入式
    发表于 05-26 14:59

    嵌入式开发是什么意思

    分立元件或集成器件进行电路设计、结构设计,再进行软件编程(通常是高级语言),实验,经过多轮修改设计、制作,最终完成整个系统的开发。这种嵌入式开发,适用于未来产品比较单一,产量比较大,产
    发表于 10-28 08:35

    嵌入式开发工具使用

    嵌入式开发工具使用.实验目的二.实验内容三.预备知识四.实验设备及工具(包括软件调试工具)五.实验步骤5.1 交叉编译
    发表于 10-28 09:43

    嵌入式开发工具有哪些

    慕课电子科技大学.嵌入式系统.第六章.嵌入式软件系统概述.嵌入式开发工具0 目录6 嵌入式软件
    发表于 11-08 09:18

    如何简化嵌入式开发项目

    如何简化嵌入式开发项目
    发表于 10-24 10:16 13次下载
    如何<b class='flag-5'>简化</b><b class='flag-5'>嵌入式开发</b>项目

    嵌入式开发语言有哪些_最全面嵌入式开发语言概述

    嵌入式开发语言有哪些?嵌入式开发的入门门槛还是比较高的,不仅要懂较底层软件,对软件专业水平要求较高,而且必须懂得硬件的工作原理,
    发表于 01-29 14:47 9870次阅读
    <b class='flag-5'>嵌入式开发</b>语言有哪些_最全面<b class='flag-5'>嵌入式开发</b>语言概述

    嵌入式开发者必备的基础硬件知识

    嵌入式系统开发,经常要接触硬件。做嵌入式开发对数字电路和模拟电路要有定的了解。这样才能深入的研究下去。下面我们简单的介绍
    发表于 06-18 17:02 2992次阅读

    嵌入式开发中常用的工具软件

    嵌入式开发中那些常用的工具软件
    的头像 发表于 01-14 17:00 1.4w次阅读

    嵌入式开发人员如何利用好微控制器中的硬件软件

    要使设备安全有效的运行,需要开发人员选择种包含特定硬件软件特性的微控制器。这些特性包括真正的随机数生成器,也可以是安全的
    发表于 06-29 09:41 705次阅读

    嵌入式开发

    学习总结嵌入式开发概述1.嵌入式技术是什么?在已有的硬件上移植操作系统,在操作系统之上做上层应用开发,在操作系统之下做底层
    发表于 10-20 21:36 3次下载
    <b class='flag-5'>嵌入式开发</b>

    嵌入式开发

    分立元件或集成器件进行电路设计、结构设计,再进行软件编程(通常是高级语言),实验,经过多轮修改设计、制作,最终完成整个系统的开发。这种嵌入式开发,适用于未来产品比较单一,产量比较大,产
    发表于 10-21 11:51 4次下载
    <b class='flag-5'>嵌入式开发</b>

    嵌入式开发培训学什么?嵌入式开发板知识讲解

    ,arm11,powerpc,mips,mipsel等,或加上操作系统也属于嵌入式开发嵌入式开发项系统工程,要求 嵌入式系统 厂商不
    发表于 11-02 20:21 16次下载
    <b class='flag-5'>嵌入式开发</b>培训学什么?<b class='flag-5'>嵌入式开发</b>板知识讲解

    慕课嵌入式系统(第六章.嵌入式开发工具)

    慕课电子科技大学.嵌入式系统.第六章.嵌入式软件系统概述.嵌入式开发工具0 目录6 嵌入式软件
    发表于 11-03 12:21 10次下载
    慕课<b class='flag-5'>嵌入式</b>系统(第六章.<b class='flag-5'>嵌入式开发工具</b>)

    嵌入式硬件软件开发工具趋势

    嵌入式硬件软件开发工具趋势
    的头像 发表于 12-28 09:51 1093次阅读

    嵌入式开发中,嵌入式硬件软件有什么区别?

    嵌入式指的是把软件直接烧录在硬件里,而不是安装在外部存储介质上,就像赋予机器人灵魂,从而方便人类操控。在嵌入式开发中,分为嵌入式
    的头像 发表于 07-18 18:11 3517次阅读
    <b class='flag-5'>嵌入式开发</b>中,<b class='flag-5'>嵌入式</b><b class='flag-5'>硬件</b>和<b class='flag-5'>软件</b>有什么区别?