开发者社区> KB小秘书> 正文

.Net Micro Framework开发板用户简明手册

简介:   作为.NET家族的一员,.Net Micro Framework是微软专门针对超轻量级平台设计的软件架构。与.Net Framework和.Net Compact Framework不同的地方是,.Net Micro Framework具有自启动的特性,并且在HAL层,微软将操作系统的必要特性引
+关注继续查看

0前言
  Microsoft .NET Micro Framework 将 .NET 的可靠性和效率与 Visual Studio的高生产率结合起来,以针对价格较低、资源受限的小型设备开发应用程序,可帮助人们使用熟悉的 Visual Studio 工具来构建托管的嵌入式应用程序。2009年5月,.Net Micro Framework采用Apache 2.0 license,比Linux等开源软件更为彻底的方式实现了源代码完全开放。

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

  .NET Micro Framework技术可以应用到:Sideshow、远程控制、智能家电、教育类机器、医疗电子、销售终端以及汽车电子等行业应用场景;此外由于.Net MF集成了各种接口,如串口、网口、Wifi、Zigbee、I2C、SPI、SDIO、USB等通信接口,加上其应用开发简便,所以在物联网时代,将大有作为。

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

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

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

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

1硬件开发板
目前全球已经有都多款.NET Micro Framework开发板供用户选择,其售价大概在4、5千人民币以上,而国内工信部(CSIP)提供的教育箱,价格更贵一些,其售价万元以上。

开发板相关列表:http://www.microsoft.com/netmf/hardware/default.mspx

为了让更多的用户能使用到低价、平价的开发板,我于年前携手PowerAVR推出了基于STM32芯片的低价.NET Micro Framework开发板,以期更多的用户有机会学习和了解.NET Micro Framework。

1.1开发板采购
(1)、无LCD .NET Micro Framework开发板(348元)

 http://item.taobao.com/item.htm?id=7252366988

(2)、LCD2.8 .NET Micro Framework开发板(438元)

 http://item.taobao.com/item.htm?id=7117999726

(3)、LCD3.2 .NET Micro Framework开发板(478元)

 http://item.taobao.com/item.htm?id=7117493982

 

更多的开发板信息,请随时关注如下链接:

http://space.cnblogs.com/group/topic/41236/

1.2 购买固件
如果用户已经采购了1.1项所提到的开发板,那么为了学习.NET Micro Framework,可以仅需购买.NET Micro Framework固件就可以了。

固件采购:http://item.taobao.com/item.htm?id=7074883848

2固件升级
用户在购买.NET Micro Framework开发板时,其开发板上就已经部署了当时最新的.NET Micro Framework版本。但是由于.NET Micro Framework是一种不断发展和改进的技术,所以固件会不定期升级,相关固件的升级信息,请随时关注如下链接:

http://space.cnblogs.com/group/topic/40405/

2.1 固件下载地址
(1)http://space.cnblogs.com/group/topic/40405/

(2)http://www.sky-walker.com.cn/yefan/MFV40/STM32/mfv4_redox.bin

2.2 部署工具
工具名称:YFAccessFlash

下载地址:http://www.sky-walker.com.cn/yefan/MFV40/YFAccessFlash.rar

2.3 部署步骤
image.png

 

(1)、运行YFAccessFlash.exe,选择串口方式,单击连接(Connection按钮),如果通信正常,则出现上图界面;

(2)、清空Flash;

(3)、选择最新的.NET Micro Framework固件文件;

(4)、部署固件;

(5)、校验部署结果(这步不是必须);

(6)、运行;

2.4 部署注意事项
(1)、部署时,确保开发板Boot0和Boot1的跳线如下图所示;

image.png

 (2)、如果无法连接开发板,请打开YFAccessFlash.exe目录下的config.xml,修改中的默认波特率,修改比较低的一个值,如9600,然后重启YFAccessFlash.exe,再进行连接测试。

(3)、部署后,如果TinyCLR启动不正常,请检测一下JP11跳线是否在如图位置:

 image.png

(4)、固件部署完毕后,Boot0和Boot1的跳线必须都在2-3位置(用户模式)。

3应用开发
3.1 VS2008SP1 + MF SDK安装
(1)、安装VS 2008 SP1

.Net Micro Framework支持VS 2008 Express版本,这是一款免费的开发工具,不过建议有条件的朋友可以优先考虑安装专业版或企业版。

VS 2008 Express sp1的下载地址如下:

http://www.microsoft.com/express/download/

(2)、安装.NET Micro Framework 4.0 SDK

http://www.microsoft.com/downloads/details.aspx?familyid=77DBFC46-14A1-4DCF-A809-EDA7CCFE376B&displaylang=en

3.2 调试信息输出
开发板COM1是调试口,连接PC串口后,可以通过超级终端或其它串口工具就可以看到开发板输出的调试信息。

串口参数配置如下:波特率 115200,数据位 8,无奇偶校验,无数据流控制。

 image.png
image.png

   

3.3 USB驱动安装
3.3.1 USB驱动下载
下载链接:http://www.sky-walker.com.cn/yefan/MFV40/USB_Driver.rar

相关讨论:http://space.cnblogs.com/group/topic/39871/

3.3.2 USB驱动安装
3.3.2.1 Windows XP下安装
(1)、插入MF开发板,则提示安装驱动;

(2)、选择从指定位置安装,选择所下载的USB驱动位置即可;

(3)、安装MF驱动,提示没有签名,仍继续安装;

(4)、安装完毕;
image.png

3.3.2.2 Windows 7/Vista下安装
image.png

(1)、插入开发板默认安装SideShow设备,并提示安装失败;

(2)、打开设备管理面板,右键单击安装未成功的SideShow设备,选择更新驱动;

(3)、选择浏览计算机查找驱动安装;

(4)、单击 从计算机设备驱动列表中安装;
image.png

 

(5)、选择从磁盘安装,选择我们所下载的MF驱动目录。

(6)、选择后的界面,提示无签名;

(7)、始终安装驱动程序;

(8)、安装成功。

注:可参考如下帖子:http://space.cnblogs.com/group/topic/40414/

3.4 程序开发
3.4.1 新建.Net Micro Framework项目
打开VS2008,新建一个基于控制台的.Net Micro Framework的应用程序,如下图:

image.png

 

3.4.2 Hello World!代码编写

using System;  

using Microsoft.SPOT;  

using System.Threading;  

namespace HelloWorld  

{  

    public class Program  

    {  

        public static void Main()  

        {  

            while (true)  

            {  

                Debug.Print("Hello World!");  

                Thread.Sleep(1000);  

            }  

        }  

    }  

} 

3.4.3 设定调试端口
打开工程属性面板,选择【.Net Micro Framework】面板,设定usb方式,如下图:
image.png

       

3.4.4调试运行
 
image.png

在Debug.Print("Hello World!")行加断点,单击运行,程序运行到断点处,按F10,单步调试,此时你会发现Output区将打印出“Hello World!”字符串。

此时你也可以查看超级终端,你会发现输出区,也会出现“Hello World!”,如下图:
image.png

 

3.4.5程序部署
3.4.5.1通过VS2008部署
 
image.png

在工程项目上,单击右键,选择右键菜单上的部署,则部署相关固件到硬件开发板上。

3.4.5.2通过YFAccessFlash部署
image.png

 

(1)       选USB接口,进行设备连接;

(2)       选择进入Deployment面板;

(3)       清空Flash区;

(4) 选择需要下载的pe文件(MF项目编译后,debug输出目录中会有相关pe文件),根据需要,可以一次选多个pe文件同时下载。

(5) 下载pe文件;

(6) Pe文件下载正确性校验(非必须);

(7) 运行应用程序(或重启开发板进行运行);

注:对大一些应用,建议采用这种方式进行项目部署,一是部署快,而是不容易出问题。

4相关资料
4.1 应用开发示例
(1)、【STM32 .Net MF开发板学习-01】Hello world

http://www.cnblogs.com/yefanqiu/archive/2010/06/04/1751566.html

(2)、【STM32 .Net MF开发板学习-02】GPIO测试

http://www.cnblogs.com/yefanqiu/archive/2010/06/29/1767495.html

(3)、【STM32 .Net MF开发板学习-03】TinyGUI绘图示例

http://www.cnblogs.com/yefanqiu/archive/2010/06/30/1768434.html

(4)、【STM32 .Net MF开发板学习-04】TinyGUI位图显示

http://blog.csdn.net/yefanqiu/archive/2010/07/03/5710264.aspx

(5)、【STM32 .Net MF开发板学习-05】PC通过Modbus协议远程操控开发板

http://blog.csdn.net/yefanqiu/archive/2010/07/05/5712678.aspx

(6)、【STM32 .Net MF开发板学习-06】蜂鸣器和LED数码管显示

http://blog.csdn.net/yefanqiu/archive/2010/07/05/5714668.aspx

(7)、【STM32 .Net MF开发板学习-07】全屏位图无闪烁显示

http://blog.csdn.net/yefanqiu/archive/2010/07/07/5717320.aspx

(8)、【STM32 .Net MF开发板学习-08】远程PLC读写控制

http://blog.csdn.net/yefanqiu/archive/2010/07/08/5721397.aspx

(9)、【STM32 .Net MF开发板学习-09】AD模拟量采集

http://blog.csdn.net/yefanqiu/archive/2010/07/20/5751112.aspx

(10)、【STM32 .Net MF开发板学习-10】SPI测试之触摸屏坐标获取

http://blog.csdn.net/yefanqiu/archive/2010/07/25/5764784.aspx

(11)、【STM32 .Net MF开发板学习-11】步进电机控制(非PWM模式)

http://blog.csdn.net/yefanqiu/archive/2010/08/02/5783878.aspx

(12)、【STM32 .Net MF开发板学习-12】【STM32 .Net MF开发板学习-12】跳动的音符(PWM合成)

http://blog.csdn.net/yefanqiu/archive/2010/08/19/5822609.aspx

4.2 移植开发示例
(1)、【.Net Micro Framework PortingKit - 01】移植初步:环境搭建

http://blog.csdn.net/yefanqiu/archive/2010/01/01/5117554.aspx

(2)、【.Net Micro Framework PortingKit - 02】STM3210E平台构建

http://blog.csdn.net/yefanqiu/archive/2010/01/02/5119171.aspx

(3)、【.Net Micro Framework PortingKit - 03】调试初步:点亮LED灯

http://blog.csdn.net/yefanqiu/archive/2010/01/02/5121851.aspx

(4)、【.Net Micro Framework PortingKit - 04】修改启动代码&重写向量表

http://blog.csdn.net/yefanqiu/archive/2010/01/03/5125745.aspx

(5)、【.Net Micro Framework PortingKit - 05】SRAM初始化&设置NVIC中断表偏移

http://blog.csdn.net/yefanqiu/archive/2010/01/03/5125769.aspx

(6)、【.Net Micro Framework PortingKit - 06】设置芯片时钟

http://blog.csdn.net/yefanqiu/archive/2010/01/03/5125786.aspx

(7)、【.Net Micro Framework PortingKit - 07】NVIC中断处理

http://blog.csdn.net/yefanqiu/archive/2010/01/18/5210149.aspx

(8)、【.Net Micro Framework PortingKit - 08】GPIO驱动

http://blog.csdn.net/yefanqiu/archive/2010/01/20/5218846.aspx

(9)、【.Net Micro Framework PortingKit – 09】串口驱动

http://blog.csdn.net/yefanqiu/archive/2010/01/24/5252018.aspx

(10)、【.Net Micro Framework PortingKit – 10】世界首款Cortex-M3内核MFV4诞生

http://blog.csdn.net/yefanqiu/archive/2010/02/13/5308329.aspx

(11)、【.Net Micro Framework PortingKit – 11】NandFlash驱动开发

http://blog.csdn.net/yefanqiu/archive/2010/02/15/5309306.aspx

(12)、【.Net Micro Framework PortingKit – 12】SysTick驱动开发

http://blog.csdn.net/yefanqiu/archive/2010/02/17/5310050.aspx

(13)、【.Net Micro Framework PortingKit – 13】LCD驱动开发

http://blog.csdn.net/yefanqiu/archive/2010/02/17/5310448.aspx

(14)、【.Net Micro Framework PortingKit – 14】TinyCLR编译与测试

http://blog.csdn.net/yefanqiu/archive/2010/02/18/5310634.aspx

(15)、【.Net Micro Framework PortingKit – 15】移植总结(兼谈MF未来发展)

http://blog.csdn.net/yefanqiu/archive/2010/02/19/5311773.aspx

4.3 更多资料请随时关注如下链接
4.3.1 开发板示例
http://space.cnblogs.com/group/topic/40339/

 

4.3.2 开发板固件
http://space.cnblogs.com/group/topic/40405/

4.3.3 MF博客文章
http://blog.csdn.net/yefanqiu/category/633947.aspx

4.4 其它信息
【淘宝店】http://netmf.taobao.com/
【MSN群】group155781@msnzone.cn
【微软MSDN中文技术论坛·NET Micro Framework】

http://social.msdn.microsoft.com/Forums/zh-CN/microframeworkzhchs/threads

【·NET Micro Framework中文讨论组】

http://space.cnblogs.com/group/MFSoft/

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
19065 0
SharePoint Framework 开发工具和库
博客地址:http://blog.csdn.net/FoxDave SharePoint Framework包含一些客户端JavaScript库,你可以用来构建自己的解决方案。
1020 0
【STM32 .Net MF开发板学习-06】蜂鸣器和LED数码管显示
无论是蜂鸣器还是LED数码管显示,其实这二者对代码编写来说没有太大区别,都是GPIO的一个典型应用。
513 0
【.Net Micro Framework PortingKit – 11】NandFlash驱动开发
对.Net Micro Framework系统来说,正常情况下Flash(包括NandFlash和NORFlash)分为六个区,分别为: 1、        BLOCKTYPE_BOOTSTR...
490 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
17796 0
数据同步框架MS Sync Framework - IDE快速开发支持Local Database Cache
数据同步框架MS Sync Framework [术语、例子、参考资料、Tips] http://www.cnblogs.com/2018/archive/2011/02/22/1961654.html  数据同步框架MS Sync Framework-不同场景使用例子和简要分析 http://www.cnblogs.com/2018/archive/2011/02/23/1961657.html 以上两篇文章对框架的基础有了描述,通过IDE的提供Local Database Cache可以快速的实现一个常用的同步应用。
797 0
《Windows 8 开发权威指南:HTML5 和JavaScript卷》——1.3 Microsoft Design新特性
Microsoft Design风格应用与各种输入源协作良好,其中包括触控、笔、鼠标以及键盘输入。可以使用用于所有这些输入源的单组事件。Microsoft Design风格应用获取一组默认风格,这些风格可确保UI元素适用于触摸方案。如图1-19所示,支持大小调整的区域。
1669 0
+关注
1091
文章
1260
问答
来源圈子
更多
阿里云最有价值专家,简称 MVP(Most Valuable Professional),是专注于帮助他人充分了解和使用阿里云技术的意见领袖阿里云 MVP 奖项为我们提供了这样一个机会,向杰出的意见领袖表示感谢,更希望通过 MVP 将开发者的声音反映到我们的技术路线图上。
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
OceanBase 入门到实战教程
立即下载
阿里云图数据库GDB,加速开启“图智”未来.ppt
立即下载
实时数仓Hologres技术实战一本通2.0版(下)
立即下载