嵌入式开发环境和硬件平台调研报告.docx

上传人:b****3 文档编号:5487789 上传时间:2022-12-17 格式:DOCX 页数:9 大小:150.32KB
下载 相关 举报
嵌入式开发环境和硬件平台调研报告.docx_第1页
第1页 / 共9页
嵌入式开发环境和硬件平台调研报告.docx_第2页
第2页 / 共9页
嵌入式开发环境和硬件平台调研报告.docx_第3页
第3页 / 共9页
嵌入式开发环境和硬件平台调研报告.docx_第4页
第4页 / 共9页
嵌入式开发环境和硬件平台调研报告.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

嵌入式开发环境和硬件平台调研报告.docx

《嵌入式开发环境和硬件平台调研报告.docx》由会员分享,可在线阅读,更多相关《嵌入式开发环境和硬件平台调研报告.docx(9页珍藏版)》请在冰豆网上搜索。

嵌入式开发环境和硬件平台调研报告.docx

嵌入式开发环境和硬件平台调研报告

 

嵌入式开发环境和硬件平台调研报告

 

嵌入式开发环境和硬件平台调研报告

调研的主要目标:

软件:

●找到一款适合今后发展的嵌入式软件开发平台,此平台适合大多数嵌入式硬件开发;

●满足主流应用开发(例如物联网应用,手持机开发,各类接口,通讯协议,常见器件等)。

●开发周期短。

IDC预计,到,ARM在嵌入式处理器市场的份额将提升至68%,高于的60%。

由此看出未来嵌入式将进入ARM的时代。

考虑到了未来发展,硬件上采用的是32位arm核心的MCU处理器。

这样就围绕着arm来确定开发的软件环境。

首先说说arduino,紧接着是MBED,其次是Keil和IAR,再是coocex,最后是各个厂家自己的arm开发环境。

硬件:

●选择需要满足今后若干年(10~20年)不会落后,具有先进的前瞻性技术。

●产品性能稳定可靠,功耗要低。

●应用前景广泛,各类硬件接口丰富。

●开发周期短。

●技术支持力度强。

主流厂商,销量大,技术支持好(案例多)产品生态链全。

为适应未来发展,选择了arm核的32位嵌入式MCU,核心是基于精简指令集(RSIC)的ARM系列,现在主要是ARM的cortex-M系列芯片。

软硬件环境相互关联,首先是硬件决定软件,软件开发的难易程度,技术支持度又反过来决定具体的硬件。

当然本次选型中主要集中在了arm系列的软硬件环境,这是由于现在最多的嵌入式开发都集中在ARM上。

我们人手一部的手机,工业控制mcu短短几年也被arm占去很大一块市场。

知名的半导体厂商NXP也提出今后其全面转向arm市场。

一、下面先介绍软件开发环境:

开发环境调研找了很多,有arduino,mbed,cocoon,keil,air,各半导体厂商自己的IDE,各家都有优点。

最终确定以mbed和STM32cubemx两个环境交互使用(两个环境代码基本通用),当需要跑仿真和分析时用KEIL。

这样确保了无论在何种情况下都能够将工程不停顿的进行下去。

下面将选型中几个很有特色的开发环境一一列出,除了arduino,它们有个共同特点,都支持大多数半导体厂商的ARMcortex-M系列芯片。

还有个小强,叫:

arduino,无硬件基础的人能够快速上手。

1、Arduino:

Arduino是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的Arduino板)和软件(ArduinoIDE)。

Arduino是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的Arduino板)和软件(ArduinoIDE)。

硬件部分是能够用来做电路连接的Arduino电路板,MCU是爱特梅尔公司的8位51单片机(近些年也出了3款arm核的开发板);另外一个则是ArduinoIDE。

编程语言:

C/C++。

中文官网:

平台特点:

可在Windows、MacintoshOSX、Linux三大主流操作系统上运行。

简单清晰:

ArduinoIDE基于processingIDE开发。

对于初学者来说,极易掌握,同时有着足够的灵活性。

Arduino语言不需要太多的单片机基础、编程基础。

开放性:

Arduino的硬件原理图、电路图、IDE软件及核心库文件都是开源的,在开源协议范围内里能够任意修改原始设计及相应代码。

发展迅速:

Arduino不但仅是全球最流行的开源硬件,也是一个优秀的硬件开发平台,更是硬件开发的趋势。

Arduino简单的开发方式使得开发者更关注创意与实现,更快的完成自己的项目开发,大大节约了学习的成本,缩短了开发的周期。

仅仅凭借十几款8位51核的mcu和开源的软硬件环境在短短十年,从无到有风靡全球,最大的优势在于庞大的库资源,能够减少大量在硬件上花费的精力,使其开发周期能够很短,开发难度很低。

近些年arduino已经开始应用到无人机,3D打印机,可穿戴设备。

可是其选型中对功耗的考虑较少,导致可穿戴设备只能测试,不能用于实际工程。

内存不足,导致很多高端应用无法展开。

其高端mcu(ARM核)arduinoDUE的板子上市晚(底上市),支持力度不足。

使其在高端开发上受阻。

2、Mbed:

arduino的成功很大的刺激了各大半导体厂商,这其中就有ARM公司。

她自己也做了一个公用开发平台,在上线了MBED。

其基本上完全效仿了arduino的开发形式,即简短精炼的开发语句,最少的涉及硬件,mbed还把很多与硬件相关的程序使用中间件进行封装,这使得操作硬件不必再特意关心底层驱动,开发者只需要调用友好接口就能够。

开发资源首先由厂商提供,扩充由开发者共享到网上。

在web平台上建立论坛讨论。

所有软硬件资源开源。

现在已经有近20家半导体厂商提供了自己的mbed开发板。

下面是arm公司的mbed网站自己对mbed的定义:

使用mbed能够开发什么?

首先,您能够非常快速地设计项目原型。

mbed操作系统可为您处理与硬件通信的繁琐工作,而且不特定于板。

这就意味着,您在mbed操作系统上编写的代码可在任何板上运行,因此您能够试用不同的板而无需重新编写代码。

为进一步帮助您进行原型设计和测试,mbed不但提供了操作系统,还提供了与云进行交互的方式、编程环境、调试接口和测试工具。

其次,您无需切换mbed工具即可将原型转化为产品。

mbed工具包括设备端安全,云连接(包括负载平衡、服务器安全和多种通信协议),以及其它开发人员服务。

mbed是一个面向ARM处理器的原型开发平台,它具体包括免费的软件库(SDK),硬件参考设计(HDK)和在线工具(Web)三部分内容,各个部分的具体介绍如下:

SDK:

mbed设计了一个硬件抽象层,从而屏蔽了不同mcu厂商提供了微处理之间的差异,对于用户来说,她只需要和这个硬件抽象层打交道即可,也就是说,用户基于mbed开发的应用能够很方便地更换使用不同厂商的arm微处理器,从而留给用户更多的选择。

HDK:

HDK是mbed提供的硬件参考设计,它是面向用户开发设计的,因此HDK提供了统一了程序上载接口,单步调试接口,串口调试接口,用户无需购买其它硬件就能够开始软件开发工作。

WEB:

为了省去用户开发环境安装的麻烦,mbed提供了一个完备的基于浏览器的微处理器软件开发环境,包括代码编写,程序编译,版本控制等功能,用户只要上网就能够开发,编译结果只要下载保存到mbed开发板上即可工作,非常方便。

3、Keil软件:

1、Keil公司原来由两家私人公司联合运营,分别是德国慕尼黑的KeilElektronikGmbH和美国德克萨斯的KeilSoftwareInc。

Keil公司在被ARM公司收购。

ARM现在有针正确开发环境MDK-ARM软件,为基于Cortex-M、Cortex-R4、ARM7、ARM9处理器设备提供了一个完整的开发环境。

MDK-ARM专为微控制器应用而设计,不但易学易用,而且功能强大,能够满足大多数苛刻的嵌入式应用。

是各类MCU开发最基础最常见的开发环境,基本上所有MCU都能够在此环境中进行开发,在朝库调用的方式精简开发。

KeilMDK功能特点

∙完美支持Cortex-M、Cortex-R4、ARM7和ARM9系列器件。

∙行业领先的ARMC/C++编译工具链

∙确定的KeilRTX,小封装实时操作系统(带源码)

∙μVision4IDE集成开发环境,调试器和仿真环境

∙TCP/IP网络套件提供多种的协议和各种应用

∙提供带标准驱动类的USB设备和USB主机栈

∙为带图形用户接口的嵌入式系统提供了完善的GUI库支持

∙ULINKpro可实时分析运行中的应用程序,且能记录Cortex-M指令的每一次执行

∙关于程序运行的完整代码覆盖率信息

∙执行分析工具和性能分析器可使程序得到最优化

∙大量的项目例程帮助你快速熟悉MDK-ARM强大的内置特征

∙符合CMSIS(Cortex微控制器软件接口标准)

缺点:

就是要收费(单机6~10万),开发方式还是一开始的命令行方式和寄存器操作方式。

4、IAR

systemsIAREmbeddedWorkbench是瑞典IARSystems公司为微处理器开发的一个集成开发环境(下面简称IAREW),支持ARM,AVR,MSP430等芯片内核平台。

EWARM中包含一个全软件的模拟程序(simulator)。

用户不需要任何硬件支持就能够模拟各种ARM内核、外部设备甚至中断的软件运行环境。

从中能够了解和评估IAREWARM的功能和使用方法。

其比较好的是其编译器比较高效。

其它基本上与keil类似。

IAREWARM的主要特点如下[3]:

1、高度优化的IARARMC/C++Compiler

2、IARARMAssembler

3、一个通用的IARXLINKLinker

4、IARXAR和XLIB建库程序和IARDLIBC/C++运行库

5、功能强大的编辑器

6、项目管理器

7、命令行实用程序

8、IARC-SPY调试器(先进的高级语言调试器)

5、Coocex:

CooCox品牌名称的含义是CooperateonCortex。

自成立之日起,CooCox团队就一直致力于为用户提供免费和开源的ARM开发工具,专注于ARMCortexM系列的开发。

当前CooCox工具已支持大部分主流CortexM4,M3,M0和M0+芯片。

CooCox包含一套完整的开发工具:

CooCox工具链

CoIDE——基于Eclipse和GCC的全功能集成开发环境(IDE),傻瓜组态式编程软件|免费;

CoFlash——独立的Flash编程软件|免费;

CoSmart——图形化智能管脚配置和代码生成工具|免费;

CoAssistant——寄存器助手,有在线版本和CoIDE集成版本|免费;

CoX——基于ARMCortexMCU的统一外设接口|免费和开源(Github开源项目);

Colink——JTAG调试器|硬件开源;

CoLinkEx——SW/JTAG调试器|硬件开源;

CoMDKPlugin——支持各类调试器的MDK插件|免费;

CoOS——嵌入式实时操作系统(RTOS)|免费和开源

除免费的开发工具外,CooCox经过论坛或邮件,还提供在线的技术支持。

,用户可方便地向CooCox提出问题和建议。

CooCox把所有的启动代码、外围库、驱动、OS等抽象为一个个组件(components),再搭配相应的例程(examples)。

事实上,从广义上讲,包括例程在内的所有可复用的源代码均可称为组件。

这样一来就大大简化和加速了开发,让嵌入式开发如同“搭积木”一般简单。

CooCox正在打造一个汇聚全球行业专家、业余爱好者、半导体厂商的平台。

平台不但可供自由交流分享,还要集中丰富的可复用源码及文档资源。

 

6、stm32cubemx

类似于arduino和mbed的初始化开发环境stm32cubemx,

编译还是到stm32自己的TrueSTUDIO或者keil、IAR中编译、下载到芯片中。

据意法自己网站宣传,将会把stm32cube应用到所有的stm32项目中去。

这个软件只能够对意法自己的芯片操作。

7、赛普拉斯的PSOCCreator3.3:

其能够将大多数的程序用图形化编程完成,用户需要的特有流程需要经过代码或逻辑流程来实现。

功能还是比较强大,可是这个软件只能够对赛普拉斯自己的芯片操作。

以上这些开发环境自成体系,各有优缺点,keil和IAR偏向底层开发,历史悠久,开发比较繁琐,周期相对会长一些,属于收费软件,技术支持会好一些。

cooked、stm32cubemx和赛普拉斯的PSOCCreator3.3属于免费软件,都有像图形化编程发展的趋势,图形化软件开发会大量缩短开发周期,也相对直观很多。

可是由于是免费版的,其技术支持度和版本更新速度不是很快。

有时碰到技术问题可能无法及时解决。

Mbed也是一个相对非常类似于ArduinoIDE的一种开发环境,两者的共同特点是软硬件都免费开源,软件开发形式类似,都是代码编程,有非常简练,清晰直观的指令。

Arduino的IDE环境能够在本地进行,Mbed是来自ARM公司的基于互联网的编译环境。

两个都不能进行在线调试,只有经过其它的办法解决,mbed能够导入keil或IAR等软件,arduino经过其它软件例如VirtualBreadboard(VBB),SimulatorforArduino调试。

 

二、硬件:

1、首先就是产品生态链全的,例如高中低端的芯片都有,各类接口丰富。

2、arm主流的用于嵌入式32位机CORTEX—M0~M4芯片高低速都有。

3、市场占有率高的,库资源多的,技术支持有力。

这样的厂商主要有飞思卡尔,意法,恩智浦,艾特梅尔,三星,美国国家半导体等等。

在以上软件环境中这些半导体厂商支持或者针对其开发的有:

 

Mbed(arm)

keil

IAR

coocex(arm)

Arduino

飞思卡尔

7种开发板

1

意法

25种开发板

2

恩智浦

22种开发板

艾特梅尔

4种开发板

15

三星

 

美国国家半导体

 

德州仪器

 

由此找到了arm核mcu销量最大的(市场占有率45%,10亿颗)半导体厂商意法的stm32系列芯片;其在世界和国内的应用都非常广泛,能够参考的例程也最丰富。

意法针对mbed定制了25款开发板,基本上涵盖了cortex-m0~m7各系列。

其编译和仿真环境能够是keil和air,或者是SW4stm32(意法自己的编译环境)。

这次选择的两款芯片都具有低功耗模式。

特别是stm32l476,采用了意法自己专利低功耗技术,获得极低的功耗表现。

这款芯片属于CORTEX-M4系列,具备DSP数字信号处理能力,和1M的flash。

它能够广泛的用于物联网设备,手持机,无人机飞控,数字信号算法,低功耗设备应用。

这将为今后优化浇灌中温湿度算法,充放电节能功耗优化,在系统中增加微型操作系统,给后期开发带来的开发带来很多便利。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 其它模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1