Windows 10 IoT Serials 1 - 针对Minnow Board MAX的Windows 10 IoT开发环境搭建
目前,微软针对Windows IoT计划支持的硬件包括树莓派2,Minnow Board MAX 和Galileo (Gen 1和Gen 2)。其中,Galileo (Gen 1和Gen 2)运行的是剪裁的Windows 8.1,而且官方声明目前没有对其升级到Windows 10 IoT的计划。所以,对于Windows 10 IoT,目前可选的硬件有树莓派2和Minnow Board MAX。有关树莓派2的Windows 10 IoT,可以参考叶帆的博客: 【Window 10 IoT - 1】Window 10系统安装(树莓派 Pi2)。
相比于Minnow Board MAX,树莓派2拥有更大的用户群,更好的性价比,和更广的硬件社区支持率。但是,如果对于性能有要求的场景,也可以考虑Minnow Board MAX,毕竟,其核心是64位 Intel® Ato E38xx Series SoC(虽然目前Windows IoT也是32位的)。本文详细介绍了Minnow Board MAX的Windows 10 IoT开发环境搭建过程。
1、硬件及环境
1.1 一台运行Windows 10 PC系统的电脑,本人使用的是Surface Pro 2,版本Windows 10 Pro Insider Preview Build 10122.
1.2 Minnow Board Max一块
1.3 电源,包括Minnow Board MAX需要的5V直流电源,如果使用MicroHDMI转接口,还需要准备MicroHDMI转接口的电源。
1.4 Class 10 速度的8Gb Micro SD卡一张,速度更快容量更大的当然更好,用于Windows 10 IoT Core for Minnow Board的烧录。
1.5 因为Minnow Board自带MicroHDMI接口,所以,如果已经有HDMI接口的显示器,请准备一个MicroHDMI转HDMI的转接头和一根HDMI线。如果是VGA接口的显示器,请准备请准备一个MicroHDMI转HDMI的转接头和一个有源的HDMI转VGA模块。请注意,HDMI转VGA模块一定要使用有源的,无源的模块可能导致无法正常显示。
1.6 以太网线一根,用于Minnow Board Max的联网与调试。
1.7 路由器一个,用于开发机与Minnow Board MAX的联网。
1.8 USB鼠标和USB键盘各一个,用于Minnow Board Max的设置。
1.9 U盘一个,用于更新Minnow Board Max的固件。
2、Minnow Board Max硬件连接
2.1. 连接一个USB接口的键盘
2.2 将MicroHDMI转HDMI接口的转接头插入2中,另一端连HDMI接口的显示器,或者是连有源的HDMI转VGA的模块,再连接到VGA接口的显示器。
2.3 连接网线到3口,网线的另一端接在与开发机相同网段的路由器上。
2.4 连接5V的直流电源,供电能力最好在3A左右。
2.5 MicroSD卡插槽。
3、更新Minnow Board Max固件
3.1 由于当前的Windows IoT Core只有32位的版本,所以,首先需要从Intel的官网上下载Minnow Board Max的最新固件,笔者写稿时的最新版本是0.79。
3.2 将下载的zip文件解压,然后拷贝所有.efi和.bin文件到FAT格式的U盘。
3.3 确保Minnow Board Max没有连接任何的外部存储设备(如SD卡),把包含.efi和.bin文件的U盘插入Minnow Board Max的USB接口。
3.4 根据2.1节的内容,连接USB接口的键盘;根据2.2节的内容,连接MicroHDMI接口的显示模块。检查无误后,给Minnow Board Max上电
3.5 如果一切正常,可以在显示器上看到UEFI的命令行。之后,在命令行中输入以下命令:
o fs0:
o .\MinnowBoard.MAX.FirmwareUpdateX64.efi _filename_.bin
例如:
o Shell> fs0:
o fs0:> .\MinnowBoard.MAX.FirmwareUpdateIA32.efi MinnowBoard.MAX.I32.079.R01.bin
如下图所示:
注意:Minnow Board Max出厂默认自带的是64位的固件,如果将其更新为32位的固件以后,下一次更新固件时,应该使用以下格式的命令:
o fs0:
o .\MinnowBoard.MAX.FirmwareUpdateIA32.efi _filename_.bin
3.6 之后,系统会更新固件,如下图所示,且在固件更新完毕以后,自动关机。
4、烧写Windows IoT Core 镜像文件
4.1 使用LiveID注册Windows Embedded Pre-Release Programs,在下载页面中选择“Windows 10 IoT Core Insider Preview Image for MinnowBoard MAX”,如下图所示。
4.2 下载“Windows 10 IoT Core Insider Preview Image for MinnowBoard MAX”。解压其中的.ffu文件到C盘根目录,如下图所示,以备后用。
4.3 将MicroSD卡插入读卡器,并将读卡器插入电脑,在命令行工具中,使用diskpart和list disk命令获取MicroSD卡的PhysicalDrive属性,如下图所示。
笔者使用的电脑只有一个C盘,插入的读卡器的盘符为Disk 1。
4.4 用管理员权限打开” Deployment and Imaging Tools Environment工具,如下图所示,
定位到ffu文件所在的目录,运行命令:
dism.exe /Apply-Image /ImageFile:flash.ffu /ApplyDrive:\\.\PhysicalDriveN /SkipPlatformCheck
其中,“PhysicalDriveN”中的“N”用实际的盘符号代替,笔者以C盘根目录为例,如下图所示。
烧写镜像完毕以后,原来的MicroSD卡变成了一个系统盘,盘符名称为“MainOS”,而且容量也发生了变化,如下图所示。
5、设置Minnow Board MAX的BIOS
5.1 将烧写好系统的MicroSD卡插入Minnow Board MAX板子的MicroSD卡插槽,接入USB键盘和显示接口。
5.2 给Minnow Board MAX上电,Boot时,选择F2,进入BIOS设置。
5.3 依次选择“Manager -> System Setup -> South Cluster Configuration -> LPSS & SCC Configuration”,该页面设置如下,按F10保存更改:
- Set “LPSS & SCC Device Mode” to “ACPI Mode”
- Set “DDR50 Capability Support for SDCard” to “Disable”
- Set “ACPI Reporting MMC/SD As” to “Non-Removable”
页面截图如下:
5.4 导航到“Boot Mainenance Manager-> Boot Options > Change Boot Order”,更改Boot的顺序,使得“EFI Misc Device”放在首位,按F10按钮保存更改,如下图所示:
然后退回到Boot页面,重启设备。第一次启动会花费较多时间,启动完成以后,进入的页面如下:
同时,在Windows 10 PC上安装并运行Windows IoT Core Watcher(在下载的MInnowBoardMAX压缩包中,名称为WindowsDeveloperProgramForIoT.msi),那么,该软件的页面上就可以看到板子的信息了。如下图所示。
6、利用Power Shell连接Minnow Board MAX
6.1 在Windows 10 PC中,用管理员权限打开Windows PowerShell,如下图所示:
6.2 在PS控制台输入以下命令,确保PC机已经运行WinRM service:
· PS C:\> net start WinRM
6.3 在PS控制台输入以下命令,设置目标机器为信任设备:
·
PS C:\> Set-Item WSMan:\localhost\Client\TrustedHosts -Value <machine-name or IP Address>
其中,<machine-name or IP Address>
用设备名称或
IP
地址代替。
6.4 为了回避已经发现的客户端的一个Bug,输入以下命令:
·
PS C:\> remove-module psreadline –force
6.5
发起一个与
Windows IoT Core设备的Session,输入以下命令:
·
PS C:\> Enter-PsSession -ComputerName <machine-name or IP Address> -Credential <machine-name or IP Address or localhost>\Administrator
其中的
<machine-name or IP Address>
用设备名称或
IP
地址代替。
在弹出的对话框中,输入默认的密钥:p@ssw0rd。
之后,就可以等待建立与客户端的连接了,如下图所示。
至此,针对Minnow Board 的Windows IoT开发环境搭建已经完成,其过程与树莓派相比,稍微有些复杂,主要是涉及到了固件的更新和Boot的设置。其他过程与树莓派类似。
参考链接:
1. MBM Get Started:http://ms-iot.github.io/content/win10/SetupMBM.htm
- 2. Using PowerShell to connect and configure a device running Windows IoT Core:
http://ms-iot.github.io/content/win10/samples/PowerShell.htm
Windows 10 IoT Serials 1 - 针对Minnow Board MAX的Windows 10 IoT开发环境搭建的更多相关文章
- Scala学习1————scala开发环境搭建(windows 10)
Scala开发环境搭建 先讲几点我学习scala的目的或者原因吧: JVM在企业中的霸主地位,Scala也是JVM上的语言,很有可能未来会从Java过度到Scala也不是不可能. 先进的函数式编程和面 ...
- 基于WDF的PCI/PCIe接口卡Windows驱动程序(1)-WDF概述及开发环境搭建
原文出处:http://www.cnblogs.com/jacklu/p/4619110.html 本科毕业设计是这方面的工作,所以想开几篇博客来介绍使用WDF开发PCI/PCIe接口卡的驱动程序方法 ...
- 大数据应用之Windows平台Hbase客户端Eclipse开发环境搭建
大数据应用之Windows平台Hbase客户端Eclipse开发环境搭建 大数据应用之Windows平台Hbase客户端Eclipse环境搭建-Java版 作者:张子良 版权所有,转载请注明出处 引子 ...
- Spark+ECLIPSE+JAVA+MAVEN windows开发环境搭建及入门实例【附详细代码】
http://blog.csdn.net/xiefu5hh/article/details/51707529 Spark+ECLIPSE+JAVA+MAVEN windows开发环境搭建及入门实例[附 ...
- win10 + VS2010 + OpenCV2.4.10重编译OpenCV开发环境搭建
win10 + VS2010 + OpenCV2.4.10重编译OpenCV开发环境搭建 重编译的优点:能够调试的时候看OpenCV的源码. 重编译要得到的东西:Debug版本号和Release版本号 ...
- [Flutter] Windows平台Flutter开发环境搭建(Andorid Studio)
前两天网友在群里说起了Flutter,就了解了一下,在手机上跑了它的demo,直接就被打动了. 虽然网上有很多教程,但真正开始的时候,还是会碰到很多坑.下面详细的讲解Flutter + Android ...
- XE6移动开发环境搭建之IOS篇(7):在Mac OSX 10.8中安装XE6的PAServer(有图有真相)
XE6移动开发环境搭建之IOS篇(7):在Mac OSX 10.8中安装XE6的PAServer(有图有真相) 2014-08-22 21:06 网上能找到的关于Delphi XE系列的移动开发环境的 ...
- ubuntu-10.10嵌入式开发环境搭建【转】
本文转载自:http://blog.csdn.net/zjhsucceed_329/article/details/8036781 版权声明:本文为博主原创文章,未经博主允许不得转载. ubuntu- ...
- Qt开发环境搭建 - Windows + VS2010 + VS插件
Qt 开发环境搭建 - Windows+VS2010+VS插件 1.Qt在Windows平台下的三种开发环境 方案 编辑器 编译器 调试器 一 Qt Creator MinGW GDB 二 Qt Cr ...
随机推荐
- iOS开发——高级特性&Runtime运行时特性详解
Runtime运行时特性详解 本文详细整理了 Cocoa 的 Runtime 系统的知识,它使得 Objective-C 如虎添翼,具备了灵活的动态特性,使这门古老的语言焕发生机.主要内容如下: 引言 ...
- Android之debug---menu的getActionView()return null
MainActivity代码 @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this a ...
- 1Z0-053 争议题目解析86
1Z0-053 争议题目解析86 考试科目:1Z0-053 题库版本:V13.02 题库中原题为: 86.Your production database is running in archivel ...
- 使用 CSS3 实现超炫的 Loading(加载)动画效果
SpinKit 是一套网页动画效果,包含8种基于 CSS3 实现的很炫的加载动画.借助 CSS3 Animation 的强大功能来创建平滑,易于定制的动画.SpinKit 的目标不是提供一个每个浏览器 ...
- C#缓存操作
1.缓存辅助方法类的接口代码: public interface IThrottleStore { /// <summary> /// 试图获取值 /// </summary> ...
- HTML中使用javascript解除禁止input输入框代码:
转:表单中Readonly和Disabled的区别 参考资料: disabled和readonly区别: 参考博文1地址:http://blog.csdn.net/symgdwyh/article/d ...
- 使用Apache Server 的ab进行web请求压力测试
参考:http://www.cnblogs.com/spring3mvc/archive/2010/11/23/2414741.html 自己写代码经常是顺着逻辑写下去,写完后run一下,ok就玩完事 ...
- Go语言异常处理defer\panic\recover
Go语言追求简洁优雅,所以,Go语言不支持传统的 try…catch…finally 这种异常,因为Go语言的设计者们认为,将异常与控制结构混在一起会很容易使得代码变得混乱.因为开发者很容易滥用异常, ...
- do{...}while(0)的妙用
在学习第一门编程语言时,就已经介绍了顺序分支.条件分支.循环分支.比如循环分支有for.while.do-while语句.在随后的学校及工作中,如果手工循环一般使用for.while,很少使用do-w ...
- 【原创】Kafka console consumer源代码分析(二)
我们继续讨论console consumer的实现原理,本篇着重探讨ZookeeperConsumerConnector的使用,即后续所有的内容都由下面这条语句而起: val connector = ...