物联网承诺给无数设备增加网络连接,这些设备(如家用电器或手表)传统上不具备网络连接的能力。 即将到来的物联网变革将给医疗设备、工业过程控制、汽车等领域带来变化。
在许多情况下,增加连接涉及将一个微控制器——和其整个附带软件基础设施——连接到此前的“哑巴”的设备。除了应用代码本身,微控制器还包括一个实时操作系统 (RTOS),低级别设备驱动器、TCP/IP 堆栈、安全功能(如加密和验证)以及许多其它模块。 更广泛的软件生态系统包括各种开发工具,如编译器、编辑器、调试器、仿真工具等等。
图 1:物联网——为您提供您喜爱的产品(来源:Texas Instruments)
传统上,这些开发工具源于各种微控制器供应商的产品组合,而软件源于单独的供应商。 这种方法可提供最大的灵活性,但同时也存在互操作和集成问题的风险。 此外,对于所选的特殊微控制器,许多低级别功能(如设备驱动器)可能必须从零开始写入。 这样的问题有,它们可能占据开发时间——且在终端用户看来,并没有增加产品的特殊性——即使是在写入首行应用代码之前。
软件开发已经成为影响产品周期的一个很大因素。 在具有竞争性的物联网环境中,延长不必要的开发时间可能意味着成功或失败。
意识到这一点,为了给客户一个无痛的开发周期并最大程度缩减上市时间(必然缩短他们的盈利时间),微控制器生产商正在大量投资开发端到端软件开发工具。 他们投资的两种方式包括:加强内部软件团队和投资或收购独立的软件公司。
从硬件供应商处外包所有软件开发意味着,开发环境可以优化到所选的微控制器。 此外,微控制器供应商能使用他们详细的设备结构知识来提供经测试的代码段,以实现低级别功能,如 I/O 驱动器,或要求与硬件紧密交互(图形引擎、加密或认证)的算法。
美国微芯科技 (Microchip) 的 MPLAB X 程序设计平台可在个人电脑(Windows、Mac 操作系统或 Linux)上运行以加速 Microchip 设备的应用开发。 MPLAB X 兼容所有 Microchip 的微控制器和数字信号控制器,是基于甲骨文公司 (Oracle) 的开放源代码 NetBeans IDE 重新设计的。
MPLAB X 支持相同编译器的多种版本;用户可以为每个项目分配一个不同的编译器。 此外,它支持多个调试器同时运行,使工程师能够在使用单个 MPLAB X 安装时同时调试多个目标程序。
除了其 IDE 产品以外,Microchip 同样给他们的应用产品和软件提供实时操作系统 (RTOS),例如 Bluetooth、数位过滤器、编译码器 (CODEC) 和压缩编码技术、辅助编码系统 (AES)、对称加密和 Ipv4/v6 TCP/IP 堆叠。
来自飞思卡尔 (Freescale) 的 Code Warrior (CW) 产品系列涵盖了其所有微控制器和数字信号处理器 (DSP)——8 位 S08/RS08 和 16 位 S12 (X) 系列、Kinetis ARM 微控制器、32 位 Qorivva 和 ColdFire、DSP 系列和其它多种产品。 Code Warrior 程序组包含了一系列功能:集成开发环境 (IDE)、全功能调试器、模拟器、微调编译器输出的构建工具、性能分析工具等等。
CW 程序组具备日益强大的功能组件以及可调代码长度,适用于基础、标准和专业版本。 也有专用于网络化应用的一套 CW 程序组件;它们支持多种结构且添加了大量网络工具,如并串转化器 (SerDes) 验证和数据包解析。
为了帮助用户确认哪一款最为合适,提供了限时运行的免费下载评估版本。 也提供全功能的特别版本——这也是免费下载的,但对于代码长度有限制。 无限制的系列可以通过订购或永久许可证进行购买。
CrossCore 嵌入式工作室是模拟设备 Blackfin 和 SHARC 处理器系列的一个 IDE。 通过在 Windows 上运行,基于 Eclipse 的 IDE 可提供 C/C++ 和汇编语言编辑、代码生成和调试支持。
对于驱动器、服务和算法软件模块,CrossCore 嵌入式工作室还为 Blackfin 和 SHARC 开发人员提供集成插件支持。 这些包括芯片上和芯片外围设备的驱动器支持、以太网和 USB 堆栈、RTOS 和文件系统。
为了帮助评估产品,提供了 90 天的免费下载。 提供了多种购买选择,包括单用户许可以及允许某个特定公司网络上的无限个用户使用的公司许可。
Atmel 的 Studio 6 是一个集成开发平台 (IDP),用于开发和调试使用 C/C++ 或汇编码写入的 ARM Cortex-M 和基于微控制器的 Atmel AVR 应用程序。 最新版本 Studio 6.2 包括先进的调试功能,如数据和中断追踪,改进了 RTOS 集成性并优化了调试代码的能力。 这也是免费提供的。
Studio 6 元件包括:一个带 visual assist C/C++ 代码完成工具的集成编辑器、一个调试器、一个性能测试应用程序、仿真芯片、以及带 Atmel 所有内电路接口的系统内可编程功能。
IDP 可集成 Atmel 软件架构 (ASF)——含有 1600 ARM 和 AVR 项目实例的一个 免费源代码库。 ASF 通过提供现成代码的访问,减少了项目所需的低级别设计,以帮助设计师们缩短开发周期。 该公司还提供 Atmel Space:云端计算协同工作空间,工程师在这里可以与同事们安全地共享嵌入式设计和项目跟踪进度。
除了他们内部产品,微控制器供应商也通过认证多种应用的代码来帮助开发人员。 例如,德州仪器 (Texas Instruments) 的 SafeTI 功能安全软件开发流程被认证为:适合开发符合 ISO 26262 和 IEC 61508 的软件元件,可达到 ASIL 和 SIL 3 级安全集成性。
该公司还提供一份 SafeTI 合作伙伴的清单,这些合作伙伴提供的工具、软件和咨询服务专门针对功能安全系统并支持 SafeTI 元件。