使用Redpark Serial cable SDK 开发软件连接iphone的研究

原创 2012年03月31日 15:21:02

1、Introduction简介

  • 这个SDK以及包里带的一个接口使用例子提供给:IOS程序开发者,并且需要了解Serial data communications

1.1、 Overview

  • 这个SDK包含一个objective-c类“RscMgr”  (Redpark serial cable Manager)这个类封装和抽象化了redpark serial cable protocol,使它变得简单和容易使用。
  • RscM类提供了一些接口方法去做: init , setBaud , open , read , write ... 还有style of interface to the serial port 串行端口的接口类型,要使用它要include "RscMar.h"和"libRscMgr.a" 到你的项目。
  • 前提:要熟悉编写cocoa程序给ios设备和知道objective-c delegate protocol interfaces work.
  • 下载的SDK镜片里面有一个IOS 例子"RSC Demo" 示范如何使用RscMgr类去和RSC serial port交互。 项目里面的“RootViewController.h”和“RootViewController.m” 就是一个例子如何使用RscMgr class

2、Notes for Developers
2.1、Using the Redpark Serial Cable Manager

  • 应该实例化一个RscMgr在程序里面然后调用init , 这个RscMgr会向ios设备注册一个通知检测是否有配件连接或者断开。如果是ios4.2系统设备断开和连接的通知也被检测到当程序进入后台或者打开。这个同样应该处理RSC serial port的硬件连接和断开连接,如果附加配件匹配了协议支持 initWithProtocol ,那么RscMgr就会调用cableConnected callback。
  • RscMgr类需要另外一个objective-c object去制定为它的delegate 去响应多种与cable相关的事件(例如:cableConnected, cableDisconnected, readBytesAvailable.......)习惯上哪个类用来实例化RscMgr就让这个类做这个RscMgr的委托类。可以参考viewDidLoad在RootViewController.m 是一个例子用来初始化这些process
  • 一旦连接成功,程序可以打开一个连接到serial port和开始数据交互,任何时间,程序可以改变port configuration,调用有"set"前置的方法,例如:setBaud, setDataSize, setParity, setStopBits.
  • A new key needs to be added to the application plist " Supported external accessory protocols", with Item 0's value being "com.redpark.hobdb9" .
  • 程序必须调用open在调用write或者read.  委托的物体会接收到readBytesAvailable 回调当serial data 已经到达时候。 这个委托类需要调用read 在这个回调方法里面获取有效的数据避免超时读取。看看readBytesAvailable:function in RootViewController.m.  这个RscMgr类会缓存1024bytes数据在下一次数据到达前。
  • 这个委托类同时接受port status更新在portStatusChanged callback回调方法内。程序也许希望去搜索modem signal states可以使用getModemStatus 访问器。如果流量控制使用,那么程序需要调用 getPortStatus和query the specific bits in the serialPortStatus structure.(在redparkSerial.h内)

Advanced Options:高级选项
  • 在基础的serial port configuration options(setBaud, setDataSize....etc...) 一个开发者也许需要某些额外的需求而直接使用serialPortConfig和serialPortControl structures (在redparkSerial.h)。然而开发者应该谨慎开启这些“advanced” 特殊属性除非他们了解他们的设备需要这些。
  • 还有一些关于TX/RX的....暂时不翻译了。


Run Loop:
  • 要记住一点:the RscMar 输入和输出流需要在程序的Runloop里面。因此,任何writes or reads都是异步的,并且有可能没有被处理知道你的程序回到RunLoop. 这个程序仅有的一个问题是需要精确地传送和准时的接收。正如前面有提及的:程序需要使用readBytesAvailable delegate 委托方法去检测是否数据已经到达才马上读取。

packet tracer5.0中的两个路由器使用DCE相连,怎么它提示“the cable cannot be connected to that port”呢

packet tracer5.0中的两个路由器使用DCE相连,怎么它提示“the cable cannot be connected to that port”呢,请问各位高手这是怎么回事啊?DCE就...
  • zhuguangliang
  • zhuguangliang
  • 2009年12月06日 18:46
  • 3098

iPhone游戏开发:使用到的工具和技术

本文从开发过程中使用到的工具和技术的角度,介绍了iPhone游戏开发主要用到这些技术和工具:Objective-C或C/C++, Xcode, UIKit, Quartz 2D, Core Anima...
  • huangtingting_ios
  • huangtingting_ios
  • 2016年08月23日 12:51
  • 889

Android G1 Serial to USB Cable

Intro Android G1 Serial to USB Cable Learn how to make an Android G1 2.8v serial to USB Serial d...
  • bjash
  • bjash
  • 2012年12月25日 13:44
  • 780

Xcode6中使用iOS7 SDK的方法

从XCOD 5的目录中: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDK...
  • IDOshi201109
  • IDOshi201109
  • 2014年10月27日 13:56
  • 3428

为什么我的IPHONE连接到电脑,电脑提示无法使用此IPHONE

一、先试一下在计算机管理中找到Apple Mobile Device服务,并手动启动。 方法如下:右键“计算机”-管理-服务和应用程序-服务,在服务项中查找Apple Mobile Device,并...
  • qingfengke78
  • qingfengke78
  • 2011年10月11日 13:48
  • 14485

各个版本的iPhone SDK下载地址

使用app store的帐号登录后,直接敲地址可下载: (苹果已经删除了3.1.2以前的版本) iPhone SDK 3.1.3 with XCode 3.1.4 for Leopard (1...
  • kmyhy
  • kmyhy
  • 2011年08月05日 13:37
  • 20523

origen_4412编译烧录日志

kernel: Makefile中, 将ARCH改为ARCH  ?= arm 添加CROSS_COMPILE   ?= /home/lizm/arm-2009q3/bin/arm-none-li...
  • lizhenmingdirk
  • lizhenmingdirk
  • 2013年01月21日 16:04
  • 2416

SDK简介

  什么是SDK?         SDK是 Software Development Kit 的缩写,即“软件开发工具包”。        SDK是一个覆盖面相当广泛的名词,可以...
  • lijianyue
  • lijianyue
  • 2007年07月02日 13:40
  • 282

USB-serial驱动分析(usb转串口)

转自:http://blog.csdn.net/istone107/article/details/8123482  在linux 内核中,有一个叫 usbserial 的模块可用作 usb mode...
  • xmzzy2012
  • xmzzy2012
  • 2015年01月05日 17:33
  • 2358

Virtual Audio Cable正确使用方式

现在很多电脑没有内录功能,不支持混音录制,这对有需求的人来说是一个很头疼的问题。 Virtual Audio Cable,虚拟音频线路,用来架设虚拟线路以实现混音功能的设备,它只是起到架设虚拟线...
  • dj0379
  • dj0379
  • 2013年04月09日 22:34
  • 25519
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用Redpark Serial cable SDK 开发软件连接iphone的研究
举报原因:
原因补充:

(最多只允许输入30个字)