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

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

0前言

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

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

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

  2.NET Micro FrameworkWindow CEWindows XP Embedded的区别?

  .NET Micro Framework对存储器和处理器的要求更低。开发人员可以在低功耗、低成本的ARM7ARM9BlackfinCortex-M3处理器上使用该框架(不需要MMU支持),所开发出来的软件仅需要几百KbytesRAMFlash/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开发板供用户选择,其售价大概在45千人民币以上,而国内工信部(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 固件下载地址

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

2http://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 部署步骤

 

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

2)、清空Flash

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

4)、部署固件;

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

6)、运行;

2.4 部署注意事项

1)、部署时,确保开发板Boot0Boot1的跳线如下图所示;

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

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

 

4)、固件部署完毕后,Boot0Boot1的跳线必须都在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,无奇偶校验,无数据流控制。

 

   

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)、安装完毕;

3.3.2.2 Windows 7/Vista下安装

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

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

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

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

 

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

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

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

8)、安装成功。

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

3.4 程序开发

3.4.1 新建.Net Micro Framework项目

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

 

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方式,如下图:

       

3.4.4调试运行

 

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

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

 

3.4.5程序部署

3.4.5.1通过VS2008部署

 

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

3.4.5.2通过YFAccessFlash部署

 

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

(2)       选择进入Deployment面板;

(3)       清空Flash区;

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

(5) 下载pe文件;

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

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

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

4相关资料

4.1 应用开发示例

1)、【STM32 .Net MF开发板学习-01Hello world

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

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

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

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

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

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

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

5)、【STM32 .Net MF开发板学习-05PC通过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开发板学习-09AD模拟量采集

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

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

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 - 02STM3210E平台构建

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 - 05SRAM初始化&设置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 - 07NVIC中断处理

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

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

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 11NandFlash驱动开发

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

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

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

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

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

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

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/

                                                         

相关文章
|
3月前
使用的是.NET Framework 4.0,并且需要使用SMTP协议发送电子邮件
使用的是.NET Framework 4.0,并且需要使用SMTP协议发送电子邮件
62 1
|
3月前
|
开发框架 缓存 监控
NET Framework 到 .NET 5/6 的迁移是重大的升级
本文详细介绍了从 .NET Framework 4.8 迁移到 .NET 5/6 的过程,通过具体案例分析了迁移策略与最佳实践,包括技术栈评估、代码迁移、依赖项更新及数据库访问层的调整,强调了分阶段迁移、保持代码可维护性及性能监控的重要性。
70 3
|
3月前
|
机器学习/深度学习 编解码 算法
【小样本图像分割-4】nnU-Net: Self-adapting Framework for U-Net-Based Medical Image Segmentation
《nnU-Net: 自适应框架用于基于U-Net的医学图像分割》是一篇2018年的论文,发表在Nature上。该研究提出了一种自适应的医学图像分割框架nnU-Net,能够自动调整模型的超参数以适应不同的数据集。通过2D和3D U-Net及级联U-Net的组合,nnU-Net在10个医学分割数据集上取得了卓越的性能,无需手动调整。该方法强调数据增强、预处理和训练策略等技巧,为医学图像分割提供了一个强大的解决方案。
113 0
【小样本图像分割-4】nnU-Net: Self-adapting Framework for U-Net-Based Medical Image Segmentation
winform .net6 和 framework 的图表控件,为啥项目中不存在chart控件,该如何解决?
本文讨论了在基于.NET 6和.NET Framework的WinForms项目中添加图表控件的不同方法。由于.NET 6的WinForms项目默认不包含Chart控件,可以通过NuGet包管理器安装如ScottPlot等图表插件。而对于基于.NET Framework的WinForms项目,Chart控件是默认存在的,也可以通过NuGet安装额外的图表插件,例如LiveCharts。文中提供了通过NuGet添加图表控件的步骤和截图说明。
winform .net6 和 framework 的图表控件,为啥项目中不存在chart控件,该如何解决?
|
5月前
|
开发框架 缓存 前端开发
实战.NET Framework 迁移到 .NET 5/6
从.NET Framework 迁移到.NET 5/6 是一次重要的技术革新,涵盖开发环境与应用架构的全面升级。本文通过具体案例详细解析迁移流程,包括评估现有应用、利用.NET Portability Analyzer 工具识别可移植代码、创建新项目、逐步迁移代码及处理依赖项更新等关键步骤。特别关注命名空间调整、JSON 序列化工具更换及数据库访问层重构等内容,旨在帮助开发者掌握最佳实践,确保迁移过程平稳高效,同时提升应用性能与可维护性。
174 2
|
5月前
|
开发框架 JSON 监控
实战指南:从 .NET Framework 迁移到 .NET 5/6 的策略与最佳实践
【8月更文挑战第28天】从 .NET Framework 迁移到 .NET 5/6 是一次重要的技术升级,涉及开发环境与应用架构的改进。本文通过具体案例分析,介绍迁移策略与最佳实践,帮助开发者顺利完成转变。
105 1
|
5月前
|
缓存 程序员
封装一个给 .NET Framework 用的内存缓存帮助类
封装一个给 .NET Framework 用的内存缓存帮助类
|
5月前
|
XML JSON 程序员
总结一下 .NET FrameWork 和 .NET Core 创建的项目的不同点
总结一下 .NET FrameWork 和 .NET Core 创建的项目的不同点
122 0
|
5月前
|
消息中间件 开发框架 .NET
闲话 .NET(7):.NET Core 能淘汰 .NET FrameWork 吗?
闲话 .NET(7):.NET Core 能淘汰 .NET FrameWork 吗?
|
5月前
|
开发框架 前端开发 .NET
闲话 .NET(3):.NET Framework 的缺点
闲话 .NET(3):.NET Framework 的缺点