《Windows IoT 应用开发指南》

物物互联的时代已经到来,智能家居、智慧校园、智慧交通、可穿戴、无人机、全息投影,各种各样的新名词、黑科技层出不穷。当我们为五年前能够通过手机控制家电而欣喜若狂的时候,可曾憧憬过当前使用增强现实设备完成各种不可思议的工业设计、亦或是沉浸于精彩绝伦的游戏场景。随着互联网、物联网、计算机等技术的飞速发展,人们的工作和生活方式在不断地被颠覆,出门打车、看电影、吃饭、甚至于喝酒代驾都有App来帮忙,动动手指就可以完成以前想都不敢想的事情。以上这一切的基础,便是信息的互联互通。物联网(Internet of Things)的目标就是物物互联,所以,从这个角度来看,它的确是非常基础而且重要的一环。
随着Windows 10 for IoT RTM的发布,广大智能硬件开发者和社区对此的关注度也越来越高。然而,通过调查发现,国内介绍Windows IoT方面的书籍却非常之少。笔者是微软和.NET技术的爱好者,也是全球首批Windows Hardware Engineering方向的MVP,因此,有机会参与了早期的“Windows Developer Program for IoT” 项目和“Windows 10 IoT Core Insider Preview” 项目,在此期间就萌发了写一本Windows IoT书籍的想法。在近一年的时间里,笔者通过不断地学习来跟踪Windows IoT最新的进展,通过持续的动手实践来验证Windows IoT的系统特性。本书主要参考了微软MSDN关于IoT开发的文档,并在此基础上进行了扩展和发挥,结合Microsoft Azure,展示了“云+端”的综合应用开发。
本书的内容和面向的读者
目前,微软的Windows IoT有两个分支,一个是早期的以Intel Galileo为平台的Windows IoT 版本,其内核是Windows 8.1 Update;另一个是以Raspberry Pi 2和MinnowBoard Max为平台的Windows IoT版本(最近也会推出针对高通DragonBoard 410c的版本),其内核是Windows 10 IoT Core。除了操作系统内核不同以外,其开发语言、系统运行模式、面向的市场也大不相同。本书内容分为三篇共12个章节,分别从基于Intel Galileo的Windows IoT平台应用开发、基于Raspberry Pi 2和MinnowBoard Max的Windows 10 IoT Core平台应用开发和综合应用开发这三个角度进行讲述,其中前两篇注重单个IoT终端的应用和实物制作,第三篇在前两者的基础上,结合Microsoft Azure和通用应用 (UWP),详细介绍了“云+端”的Windows通用应用开发。
如果读者熟悉Arduino平台的应用制作与开发,那么,本书第一篇内容相对来说会比较简单,因为Intel Galileo 是基于英特尔x86架构、兼容Arduino的产品,在硬件规格、软件编程上有很大的相似性,通过简单的操作,读者可以将面向Arduino的各种应用移植到Intel Galileo上。
如果读者希望了解Windows 10 for IoT的技术细节,可以细读本书第二篇内容,而忽略本书的第一篇内容。当然,目前Visual Studio中,支持Windows 10 for IoT应用开发的语言包括C#和C++,因此,希望读者有以上一种或者两种语言基础(书中的实例以C#为主)。同时,鉴于第三篇Windows通用应用的开发,也希望读者具备一些XAML语言设计界面的知识。另外,对于软件开发者来说,理解本书中元器件的连接和硬件工作原理也是比较有挑战性的一件事情,我的建议是,本书中用到的各种元器件淘宝上可以买到,价格也不贵,尽量自己动手实践,LED灯亮了,传感器数据上来了,电机开始转了,蜂鸣器开始叫了,你会为自己每一次的进步而激动不已,能力也在不断的摸索中逐渐成长。
本书内容(含25个实例的软硬件需求及使用说明)
第一篇:基于Intel Galileo的Windows IoT平台应用开发
1. 开发环境和工具
1.1 开发坏境的搭建
1.2 开发工具和配置工具的使用
2. 基础实例
2.1 LED灯的控制
2.2 按钮的使用
2.3 温度传感器的使用
2.4 PWM波的输出
2.5 串口通信
3. 实物制作
3.1 PWM调光灯
3.2 感光灯
3.3 火焰报警器
3.4 智能风扇
第二篇:基于Raspberry Pi 2和MinnowBoard Max的Windows 10 IoT Core平台应用开发
3. 开发环境和工具
3.1 开发坏境的搭建
3.2 开发工具和配置工具的使用
4. 基础实例
4.1 控制台应用
4.2 LED灯的控制
4.3 按钮的使用
4.4 Web Server应用
4.5 I2C接口通信
4.6 SPI接口通信
4.7 串口通信
4.8 Node.js及Node.js Server实例
4.9 Python及Python Server实例
4.10 蓝牙通信及TI SensorTag实例
第三篇 基于Microsoft Azure和Windows IoT的综合应用开发
5. 综合应用框架
6. Microsoft Azure门户配置
6.1 Event Hub
6.2 Azure Storage
6.3 Stream Analytics
7. 综合应用开发
7.1 Windows 8.1 IoT设备端应用开发
7.2 Windows 10 IoT Core设备端应用开发
7.3 Windows 10 for Mobile/ PC端通用应用开发
购买方式
1. 京东
2. 淘宝
3. 亚马逊
4. 当当网
本书资源下载
《Windows IoT 应用开发指南》的更多相关文章
- 简单物联网:外网访问内网路由器下树莓派Flask服务器
最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...
- 利用ssh反向代理以及autossh实现从外网连接内网服务器
前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...
- 外网访问内网Docker容器
外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...
- 外网访问内网SpringBoot
外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...
- 外网访问内网Elasticsearch WEB
外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...
- 怎样从外网访问内网Rails
外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...
- 怎样从外网访问内网Memcached数据库
外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...
- 怎样从外网访问内网CouchDB数据库
外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...
- 怎样从外网访问内网DB2数据库
外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...
- 怎样从外网访问内网OpenLDAP数据库
外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...
随机推荐
- geotrellis使用(七)记录一次惨痛的bug调试经历以及求DEM坡度实践
眼看就要端午节了,屌丝还在写代码,话说过节也不给轻松,折腾了一天终于解决了一个BUG,并完成了老板安排的求DEM坡度的任务,那么就分两段来表. 一.BUG调试 首先记录一天的BUG调试,简单copy了 ...
- AOP的实现机制--转
原文地址:http://www.iteye.com/topic/1116696 1 AOP各种的实现 AOP就是面向切面编程,我们可以从几个层面来实现AOP. 在编译器修改源代码,在运行期字节码加载前 ...
- 【数据挖掘】朴素贝叶斯算法计算ROC曲线的面积
题记: 近来关于数据挖掘学习过程中,学习到朴素贝叶斯运算ROC曲线.也是本节实验课题,roc曲线的计算原理以及如果统计TP.FP.TN.FN.TPR.FPR.ROC面积等等.往往运用 ...
- 【JUC】JDK1.8源码分析之LinkedBlockingQueue(四)
一.前言 分析完了ArrayBlockingQueue后,接着分析LinkedBlockingQueue,与ArrayBlockingQueue不相同,LinkedBlockingQueue底层采用的 ...
- 9.Struts2在Action中获取request-session-application对象
为避免与Servlet API耦合在一起,方便Action类做单元测试. Struts2对HttpServletRequest.HttpSession.ServletContext进行了封装,构造了三 ...
- JS实现-页面数据无限加载
在手机端浏览网页时,经常使用一个功能,当我们浏览京东或者淘宝时,页面滑动到底部,我们看到数据自动加载到列表.之前并不知道这些功能是怎么实现的,于是自己在PC浏览器上模拟实现这样的功能.先看看浏览效果: ...
- 【C#公共帮助类】分页逻辑处理类
分页逻辑处理类 PageCollection.cs using System; using System.Collections.Generic; using System.Linq; using S ...
- ASP.NET5,MVC 6,Beta 7与VS 2015 RTM的兼容问题
温馨提示:本文杂而乱,最终不知所云. Visual Studio 2015 RTM已经于2015年7月20号正式发布,我也在第一时间下载安装了起来. 虽然在5月份就开始使用RC版本,但是还是很期待正式 ...
- C#中 字符串转换为计算公式,并计算结果
根据总结,大概分为以下三种: 第一种: 用DataTable中的Compute方法. 例如:" 1*2*3 " 代码如下: var a = new System.Data.Dat ...
- jquery 之for 循环
jquery 的 for 循环: 1. var userList = [11,22,33,44]; $.each(userList,function(i,item){ console.log(i, i ...