zoukankan      html  css  js  c++  java
  • 小型设备嵌入式开发(.NET Micro Framework)

     
     
    本文转自:http://blog.csdn.net/yfiot/article/details/5311773
     

    .NET Micro Framework介绍

          信息产业部软件与集成电路促进中心(CSIP)已与微软公司签署了Porting Kit 协议。作为目前国内唯一.NET Micro Framework的授权机构,CSIP将联合微软中国研发集团为国内OEM厂商提供技术咨询,技术引进、本地化、协作开发,及培训和顾问等服务。并和杭州平望科技有限公司确立合作伙伴关系,共同推广MF应用开发.
    .NET Micro Framework简介

    内容目录

    1 .NET Micro Framework是什么?

    2 哪些领域可以采用.NET Micro Framework技术?

    3 .NET Micro Framework 2.5的特点

    4 .NET Micro Framework的架构

    5 .NET Micro Framework与Window CE和Windows XP Embedded的区别

    6 .NET Micro Framework与其他.NET平台的区别

    7 .NET Micro Framework软件开发工具包(SDK)包括:

    8 使用.NET Micro Framework开发嵌入式应用程序

    9 支持.NET Micro Framework的开发套件

    10 .NET Micro Framework的应用实例

    11 更多.NET Micro Framework相关资源

    1  .NET Micro Framework是什么?

    Microsoft® .NET Micro Framework 将 .NET 的可靠性和效率与 Visual Studio® 的高生产率结合起来,以针对价格较低、资源受限的小型设备开发应用程序,可帮助人们使用熟悉的 Visual Studio 工具来构建托管的嵌入式应用程序。

    2  哪些领域可以采用.NET Micro Framework技术?

    .NET Micro Framework技术可以应用到:Windows Vista Sideshow、远程控制、智能家电、医疗电子、零售终端以及汽车电子等行业应用场景。

    3  .NET Micro Framework 2.5的特点

    1)        支持ARM7/ARM9等处理器, 可支持不具有 MMU 的处理器,降低 BOM 成本。
    2)        运行空间仅需要128 KB * 左右
    3)        可以直接运行在硬件上,也可以运行在其他操作系统上,如Windows CE,NETOS,uCOS等
    4)        使用Visual Studio 2005——C#进行开发
    5)        内置可扩展的模拟器,支持自动部署及单步调试
    6)        支持众多串行通讯和网络的标准接口(比如SPI、I2C、GPIO和UART)
    7)        本地 TCP/IP 网络
    8)        服务设备配置文件 (DPWS) 库的技术
    9)        闪存保护

    4  .NET Micro Framework的架构

    图1展现了.NET Micro Framework的基本结构,和其它.NET平台类似,.NET Micro Framework也提供了平台抽象层(PAL),使应用程序能最大限度的降低与其所运行的硬件相关性,使得开发和移植到其它平台变得更为容易。
    图片
    图1  .NET Micro Framework架构
     

    5  .NET Micro Framework与Window CE和Windows XP Embedded的区别

    .NET Micro Framework对存储器和处理器的要求更低。开发人员可以在低功耗,低成本的ARM7,及ARM9和Blackfin处理器上使用该框架,所开发出来的软件仅需要几百Kbytes的RAM或Flash/ROM的存储空间。而Windows Embedded CE的托管代码环境需要约10~12Mbytes的存储空间,基于.NET的应用编程设备只需要较少的存储空间,降低了产品成本。

     

     

    .NET Micro Framework

    Windows CE

    Windows XPe

    Example Devices

    Sensor Nodes, Aux displays, Health Monitoring, Remote Controls, Robotics

    GPS Handhelds, PDAs, 
    Automotive, Set Top Boxes

    Thin Clients, ATMs, Kiosks

    Device Features

    Connected, Small, Wearable, Graphical UI

    Connected, Graphical UI, Server, Browser, RAS, DirectX

    PC class performance, 
    PC networking

    Footprint

    250-500KB managed code 
    Full featured

    300KB+ without managed code 
    12MB with managed code

    40MB + Depending on features

    Power

    Very low power

    Low power

    More power

    CPU

    ARM7, ARM9, No MMU

    X86, MIPS, SH4, ARM, 
    with MMU

    X86

    Real-time

    Not Real-time

    Hard Real-time

    Real-time capable through 3rd party extensions

    Managed vs. Native Code

    Managed via .NET Micro Framework, 
    native code through interop only.

    Supports both

    Supports both, managed code 
    requires .NET Framework

    图2 与微软嵌入式平台产品Windows CE/XPe比较

    6 .NET Micro Framework与其他.NET平台的区别

    作为.NET家族的一员,.Net Micro Framework是微软专门针对超轻量级平台设计的软件架构。与.Net Framework和.Net Compact Framework不同的地方是,.Net Micro Framework具有自启动的特性,并且在HAL层,微软将操作系统的必要特性引入,如:启动管理、中断处理、线程调度、内存管理等。.Net Micro Framework可以单独使用,不需要依托其他操作系统,因此占用空间很小。

    图片

    图3 微软嵌入式应用平台系列
     

    7  .NET Micro Framework软件开发工具包(SDK)包括:

    1)        Microsoft Visual Studio 集成
    .NET Micro Framework 软件开发工具包与 Visual Studio 紧密集成,不仅支持 C# 开发,还提供了设备内调试、对象浏览、IntelliSense® 以及集成构建和部署等可提高工作效率的功能。
     
    图片
    图4 .NET Micro Framework开发环境及模拟器
     
    1) 可扩展仿真程序
    可使用 .NET Micro Framework 仿真程序来反映目标硬件的功能。为模拟外部设备(如显示器、传感器和伺服控制器等)编写您自己的 .NET 类,然后将应用程序部署到自定义仿真程序中,并在虚拟硬件上对其进行测试。
    2) 支持的 CPU
    .NET Micro Framework 可运行在多种与 ARM7 或 ARM9 兼容的处理器上,并可向其他体系结构开放。 有关当前支持的处理器的列表,请参见下面的网站。 最低存储配置为 128 KB RAM 和 256 KB 闪存。*
    3)  要面向 Microsoft .NET Micro Framework 2.0 进行开发,您需要:
    ü  Microsoft Windows® XP、Windows Vista™ 或 Windows Server® 2003
    ü  Microsoft Visual Studio 2005(标准版或专业版)

    8  使用.NET Micro Framework开发嵌入式应用程序

    使用可免费下载的 .NET Micro Framework 软件开发工具包,利用 .NET 库的子集在 C# 中开发嵌入式应用程序。 无论代码是部署在测试设备上还是运行在可扩展 .NET Micro Framework 仿真程序中,您都可以尽享 Visual Studio 的强大开发功能。
    1)更高的工作效率
    Microsoft .NET Micro Framework 将 .NET 的高效率优势带到了小型设备开发中。 为人熟知的 Visual Studio 工具、C# 语言和 .NET库可缩短学习过程,并允许您充分利用使用 .NET 开发的客户端或服务器解决方案中的代码。
    在小型设备环境中使用已掌握的 C# 和 .NET 技巧。
    使用可扩展仿真程序,直接在 PC 上快速进行嵌入式代码的开发、测试以及调试工作。
    无需离开 Visual Studio 即可对设备上运行的应用程序进行调试。
    提供许多熟悉的 .NET 名称空间,包括基于套接字的网络和类似于 WPF 的图形用户界面框架。
    2)针对小型设备进行优化
    Microsoft .NET Micro Framework 的目标对象为新一代价格较低、节能型 32 位嵌入式处理器。
    支持不具有 MMU 的处理器,降低 BOM 成本。
    将电源管理 API 向应用程序公开,有助于最大限度地延长电池寿命。
    任何 Microsoft .NET 平台上都只占用最小的空间。*
    3)可靠的托管环境
    .NET 公共语言运行库 (CLR) 子集的可启动、设备内实现将 .NET 开发的优势引入了小型设备。
    内置对垃圾收集以及异常处理的支持,使得代码更易于编写,更不容易出错。
    仅支持“安全的”IL 指令,可防止错误的执行。
          可以使用 C# 语言为通过支持接口(如 SPI、I2C、GPIO 和 USART)连接的硬件编写设备驱动程序,因此能够直接支持新硬件。
    4)顶级支持
    作为受到全面支持的 Microsoft 嵌入式平台,.NET Micro Framework 可访问 Microsoft 的资源、培训和工具网络以及遍及全球的合作伙伴社区。

    9  支持.NET Micro Framework的开发套件                     

          目前已推出的适用于.NET Micro Framework技术的开发套件如下,基于这些开发套件,可以加快设计和开发,并迅速将新应用投入市场:
    1)Digi推出的 Digi Connect ME JumpStart Kit,这也是业界首次推出适用于.NET Micro Framework 的以太网解决方案。
    2)飞思卡尔半导体(Freescale) 推出面向Microsoft Windows Vista Sideshow平台、.NET Micro Framework及用户定义应用的高性能开发包iMXS。除了Windows Vista SideShow应用之外,i.MXS开发工具包还支持其它Microsoft .NET Micro Framework应用,如手表、电视、桌面电话、收音机、时钟和其它小型嵌入式设计。
    3)EmbeddedFusion推出带有LCD的Tahoe开发套件
    4)Crossbow推出的Xbow iMOTE SDK,为无线传感应用领域提供适用于.NET Micro Framework的解决方案。

    10  .NET Micro Framework的应用实例

          基于.NET Micro Framework技术的产品已在消费电子,医疗器械,通信产品,汽车电子,工业控制等多个行业领域投入商用,带给用户全新的体验。
    1)智能手表
       Fossil推出支持MSN Direct的Abacus Smart Watch 2006(图5),可以直接从MSN Direct接收各种信息到手表中,能够接收MSN Messager消息和微软OfficeOutlook约会提醒。
    2)GPS导航
        Garmin推出的Nuvi 680(图6),可以从MSN Direct 获取服务:路况信息、汽油价格、天气预报、电影讯息。
    3)天气预报器
       Oregon Scientific推出的WMS801 WeatherNow(图7),使用MSN Direct 服务可以接收到整个区域内天气信息而可以不需要用户外的传感器。
    4)机器人
        iRobot推出的Scooba Floor Washing Robots(图8),具有区域识别及虚拟墙技术。
    5)Z Wave智能家居
       ControlThink推出的Z Wave技术智能家居照明控制系统 Intermatic HomeSettings HA07(图9)
    图片

    11  更多.NET Micro Framework相关资源

    请登录下列网址获取更多.NET Micro Framework相关资源:
    .NET Micro Framework技术专栏:http://www.winbile.net/CataLog_855.aspx
    .NET Micro Framework 相关信息及SDK下载:http://msdn2.microsoft.com/en-us/embedded/bb267253.aspx
     
    * 总占用空间取决于所选平台功能、应用程序需求以及设备特征,变化范围通常为 128 至 512 KB RAM 以及 256 KB 至 1 MB 闪存。

    ==============================================

    关于.NET Micro Framework被限制发展的原因及未来发展(刘洪峰)

    很久以前就曾多方位思考限制.Net Micro Framework发展的原因是什么?在物联网和Cortex-M3大行其道的今天,.Net Micro Framework应该有更大的发展空间才对,为什么现在还是关注者甚少?我想主要原因有三,一、源码代码是否开源;二、是否有低价开发板;三、TinyCLR是否够小。

    第一个原因,目前已经不是问题,.Net Micro Framework已经实现更为彻底的源代码授权方式(Apache 2.0 license);

    第二个原因,国外开发板推出较早,但是价格都在几百美元以上(折合人民币2000~5000元),而国内CSIP推出的.Net MF教育箱,主要面向高校,其价格上万,更不是一般用户所能接受。不过今天这个局面已经被打破,最低只需三百多元就可以获得一个.Net MF开发板。

    第三个原因,我目前裁减最小的TinyCLR大概在280k左右(这是debug版本,release版本大概在220k左右),不过这还是略显过大,对RAM的要求也比较高,一般需要64k+128K左右,希望今后的TinyCLR只需片内资源就可以运行。

    至于为什么采用Cortex-M3的开发板作为未来.Net Micro Framework的主要载体。考虑到Cortex-M3芯片代表了ARM最新的技术成果,并且芯片没有MMU,Wince和Linux都不能运行其上,而运行其上的ucosII略显简单,并且开发必须为C/C++,对一般用户的应用开发要求过高,而.Net Micro Framework对硬件要求不高,而且应用采用C#开发,所以Cortex-M3天生适合承载.Net Micro Framework系统。更为详细的原因,我在以前所写的《【.Net Micro Framework PortingKit – 15】移植总结(兼谈MF未来发展)》已有提及,有兴趣的朋友可以参考一下。 
    QQ:83199235
  • 相关阅读:
    MySQL初始化以及更改密码
    对付小白的ARP的简单介绍
    PXE批量安装CentOS7操作系统
    20不惑
    辩论会
    学习
    JAVA语言的特点
    程序流程图对新手来说很重要。
    浅谈博客、微博与轻博客的区别与联系
    要学好JAVA要注意些什么?
  • 原文地址:https://www.cnblogs.com/softcg/p/6511044.html
Copyright © 2011-2022 走看看