在上一篇文章中.我们通过编写EV3 Port Viewer项目实现了iOS监測EV3的实时端口数据. 程序最核心的部分就是我们的开源码库iOS_WiFi_EV3_Library. 那么,在本文中,我们将具体介绍我们这个库的编写.为了完毕这个库,本人參考了网上许多资料,主要包括EV3的源码,win版本号的代码库以及Monobrick相关以及网上的各种资料,在此就不一一列举了. 因为水平有限,本代码库还存在各种问题,望使用的读者见谅. 大家也能够在这个基础之上自己进行改造完好. 为了具体说明代码库的…
在前两篇文章中,我们对iOS与EV3混合机器人编程做了一个主要的设想.而且介绍了要完毕项目所需的软硬件准备和知识准备. 那么在今天这一篇文章中,我们将直接真正開始项目实践. ==第一个项目: EV3 Port Viewer== 项目目的:在iOS设备上通过WiFi连接EV3而且读取EV3每个端口的数据. 大家能够在App Store上搜索EV3 Port Viewer,那么我已经做了一个范例App公布了.下载地址为:https://itunes.apple.com/cn/app/ev3-port…
乐高Mindstorm EV3智能机器人(下面简称EV3)自从在2013年的CES(Consumer Electronics Show美国消费电子展)上展出之后,就吸引了全球广大机器人爱好者的眼球!EV3相比其上一代机器人NXT最大的提升就在于其硬件上.除了更强大的ARM处理器,并载入了Linux操作系统之外.EV3还配备了蓝牙,支持外接USB,外接WiFi.由于有了这么多的硬件提升,EV3最酷的特性在于EV3支持iOS设备! ! .这使得我们能够使用iOS设备比方iPhone来控制EV3.乐高…
在上一篇文章中.我们解说了怎样用开源码库CocoaAsyncSocket来实现iOS上的UDP和TCP数据通信.那么在本文中.我们将介绍在CocoaAsyncSocket的基础怎样使用UDP和TCP连接EV3的机制. 之所以我们能够通过无线连接EV3,根本原因在于EV3的源码内建了一套无线连接通信的机制. 这套机制是这种: 1)EV3在连接到无线网络后,就不断地从3015port发送UDP数据.数据的格式例如以下: Serial-Number: 0016533f0c1ePort: 5555Nam…
原文:.NET 4 并行(多核)编程系列之四 Task的休眠 .NET 4 并行(多核)编程系列之四 Task的休眠 前言:之前的几篇文章断断续续的介绍了Task的一些功能:创建,取消.本篇介绍Task的休眠,本篇的内容比较的少. 本篇的议题如下: 秒钟之后就打印出一条信息.在例子中,在我们敲一下键盘之后,CancellationToken就会被Cancel,此时休眠就停止了,task重新唤醒,只不过是这个task将会被cancel掉. 有一点要注意:WaitOne()方法只有在设定的时间间隔到…
TCP/IP网络编程系列之四-基于TCP的服务端/客户端 理解TCP和UDP 根据数据传输方式的不同,基于网络协议的套接字一般分为TCP和UDP套接字.因为TCP套接字是面向连接的,因此又称为基于流的套接字.在了解TCP之前,先了解一下TCP所属的TCP/IP协议栈. 如图所示,TCP/IP协议栈共分为4层,可以理解成数据收发分成了4个层次化过程. 链路层 它是物理链接领域标准化结果,也是最基本的领域,专门定义LAN.WAN.MAN等网络标准.若两台计算机通过网络进行数据交换,链路层就负责整个物…
通过前面几个小节的学习,现在我们想要把之前学到的知识点给串联起来,实现一个很小型的Web框架.虽然很小,但是用到的知识点都是比较多的.如Socket编程,装饰器传参在实际项目中如何使用.通过这一节的学习,希望能把我们以前的知识点掌握的更加牢靠! 一.客户端与服务器通信过程 在这里我们以浏览器来说明访问服务器时,会做什么处理! 说明: TCP服务器: 1. 服务器主要是用来处理客户端的连接请求,然后把请求的url,传递给框架来处理具体的逻辑: 2. 服务器中需要定义一个处理响应头和状态码的函数,并…
首先看一个例子 ''' 多个装饰器装饰一个函数 ''' # 定义第一个装饰器 def set_func1(func): def wrapper1(*args,**kwargs): print('装饰内容开始1') func(*args, **kwargs) print('装饰内容结束1') return wrapper1 # 定义第二个装饰器 def set_func2(func): def wrapper2(*args,**kwargs): print('装饰内容开始2') func(*arg…
8天玩转并行开发 8天玩转并行开发——第一天 Parallel的使用 8天玩转并行开发——第二天 Task的使用 8天玩转并行开发——第三天 plinq的使用 8天玩转并行开发——第四天 同步机制(上) 8天玩转并行开发——第五天 同步机制(下) 8天玩转并行开发——第六天 异步编程模型 8天玩转并行开发——第七天 简要分析任务与线程池 8天玩转并行开发——第八天 用VS性能向导解剖你的程序 并行编程系列 .NET 4 并行(多核)编程系列之一入门介绍 .NET 4 并行(多核)编程系列之二 从…
.NET 4 并行(多核)编程系列之一入门介绍 本系列文章将会对.NET 4中的并行编程技术(也称之为多核编程技术)以及应用作全面的介绍. 本篇文章的议题如下:  1. 并行编程和多线程编程的区别.  2. 并行编程技术的利弊  3. 何时采用并行编程 系列文章链接: .NET 4 并行(多核)编程系列之一入门介绍 .NET 4 并行(多核)编程系列之二 从Task开始 .NET 4 并行(多核)编程系列之三 从Task的取消 .NET 4 并行(多核)编程系列之四 Task的休眠 .NET 并…