通信接口

硬件接口通信速度

偶尔善良 提交于 2019-12-16 19:36:23
1.rs232: 数据传输率是115kbps~230kbps 2.I2C: I2C协议v2.1规定了100K,400K和3.4M三种速率(bps)。 3.SPI: 数据传输速度总体来说比I2C总线要快,速度可达到几Mbps。(另一种说法:SPI是一种事实标准,由Motorola开发,并没有一个官方标准。已知的有的器件SPI已达到50Mbps。具体到产品中SPI的速率主要看主从器件SPI控制器的性能限制。) 4.usb: usb2.0: 30MB/s, 15MB/s usb3.0: 300MB/s, 150MB/s 5.Ethernet: 标准的以太网(10Mbit/s)、快速以太网(100Mbit/s)和10G(10Gbit/s)以太网。它们都符合IEEE 802.3 备注:注意kbps与MB/s的区别 来源: https://www.cnblogs.com/cj2014/p/4153088.html

总线

若如初见. 提交于 2019-12-15 20:58:04
总线有三种:内部总线、系统总线和外部总线。内部总线是微机内部各外围芯片与处理器之间的总线,用于芯片一级的互连;而系统总线是微机中各插件板与系统板之间的总线,用于插件板一级的互连;外部总线则是微机和外部设备之间的总线,微机作为一种设备,通过该总线和其他设备进行信息与数据交换,它用于设备一级的互连。 除了总线外,还有一些接口,他们是多种总线的集合体,或者说来者不拒。 SPI SPI(Serial Peripheral Interface): MOTOROLA公司提出的同步串行总线方式。高速同步串行口。3~4线接口,收发独立、可同步进行。 因硬件功能强大而被广泛应用。在单片机组成的智能仪器和测控系统。如果对速度要求不高,采用SPI总线模式十个不错的选择。他可以节省I/O端口,提高外设的数目和系统性能。标准SPI总线由四根线组成:串行时钟线(SCK)、主机输入/从机输出线(MISO)、主机输出/从机输入线(MOSI)和片选信号(CS)。有的SPI接口芯片带有中断信号线或没有MOSI。 SPI总线由三条信号线组成:串行时钟(SCLK)、串行数据输出(SDO)、串行数据输入(SDI)。SPI总线可以实现多个SPI设备互相连接。提供SPI串行时钟的SPI设备为SPI主机或者主设备间可以实现全双工通信,当有多个从设备时,还可以增加一条从设备选择线。如果用通用IO口模拟SPI总线,必须要有一个输出口

Android 跨进程通信 深入浅出AIDL(二)

徘徊边缘 提交于 2019-12-10 04:23:34
前言 概要 解剖 asInterface asBinder IInterface DESCRIPTOR onTransact服务端接收 transact客户端调用 总结 前言 继 上一篇AIDL 的简单介绍,相信应该对AIDL有一个大致的了解,那么这一篇我们来深入探讨一下AIDL为什么能够完成这个跨进程操作,这其中是否隐藏着一些不为人知的秘密,让我们跟着笔者的思路,慢慢拨开笼罩在AIDL上的谜团。 概要 先用上图整体描述这个AIDL从客户端(Client)发起请求至服务端(Server)相应的工作流程,我们可以看出整体的核心就是Binder 解剖 asInterface 用于将服务端的Binder对象转换成客户端所需的AIDL接口类型的对象,这种转换过程是区分进程的【如果客户端和服务端位于同一进程,那么此方法返回的就是服务端的Stub对象本身,否则返回的是系统封装后的Stub.proxy对象】 private ServiceConnection connection = new ServiceConnection() { @Override public void onServiceConnected(ComponentName name, IBinder service) { IDemandManager demandManager = IDemandManager.Stub

Android 跨进程通信 深入浅出AIDL(一)

落花浮王杯 提交于 2019-12-10 04:09:23
前言 简介 快速上手 服务端 创建载体MessageBean 创建AIDL文件MessageBeanAIDL 创建AIDL文件IDemandManagerAIDL 埋坑与完善 创建Service 客户端 拷贝AIDL文件夹 开启服务 关联对象调用方法 附加技能定时推送消息 服务端项目推送消息 客户端项目接收定时推送 结束语 项目下载 前言 本文主要讲述AIDL作用以及如何快速上手AIDL项目 简介 A [android] I [Interface] D [Definition] L [Language] Android接口定义语言。 作用:方便系统为我们生成代码从而实现跨进程通讯,仅此而已。(玉刚老师如是说也),也就是说这个AIDL就只是一个快速跨进程通讯的工具。 快速上手 本篇文章意在快速实现AIDL项目,更多详细内容下篇继续阐述。 在服务端创建AIDL文件,用来声明java Bean以及传输调用的接口。【声明文件】 在服务端创建Service并且实现上面的接口。【创建服务】 客户端绑定Service。【绑定服务】 客户端调用服务端接口。【跨进程调用】 服务端 创建服务端项目 首先我们在app/src/main 目录下创建AIDL文件夹。 创建载体 MessageBean 首先我们在这个AIDL文件夹里创建用来传输的java Bean对象(包名并不重要),并且实现

客户端GUI测试技术和自动化测试架构设计简谈

北城余情 提交于 2019-12-08 01:25:47
客户端自动化特点 客户端的自动化,通常做过的人都不是很愿意深入讨论。因为除了功能和逻辑之外,不得不面对各种界面变化,各种和环境交互,各种兼容问题以及想不到灰色地带,就算这样,也找不到太多有效的bug。然而即便如此,客户端的自动化必须去做,尤其是GUI的。它的自动化特点是: 复杂 成本高 不容易发现问题 技术要求高 架构很难通用 下面,从一些基本的东西开始一点点的讨论客户端GUI测试的一些问题和处理办法,以及自动化架构设计的一些思路。事实上就像上面说的,GUI的测试并不是为了发现bug,而是回归的一种方式,作为保证而已——它过了不能说明质量多么好,但是不过,质量肯定不达标。即使在微软内部,客户端的GUI一样不是个受欢迎的家伙,通常用来做BVT的测试(或一些重要性回归,冒烟等)。 客户端自动化简述 这里并不花过多的笔墨介绍什么是客户端,或者如何分类的种种——这些东西教材和网上的东西一坨一坨很多很多,这里可能“漫谈”的,是实际工作中,客户端和GUI自动化中可能遇到的一些底层技术,基本上原理,架构设计方法以及一些项目存在困惑,这些方面的一些处理的方法。 最早的自动化 我个人认为所谓的计算机行业的自动化,是一直跟着这个行业的发展在走,比如下面的这些: 老式计算机——CPU计算: 最早自动解决手工分配穿孔的卡片问题 内存分配任务调度:操作系统的核心就是内存和任务的自动管理 系统配置Loader

Android RIL结构分析与移植

橙三吉。 提交于 2019-12-07 19:19:51
Android RIL结构分析与移植 介绍 本文档对Android RIL部分的内容进行了介绍,其重点放在了Android RIL的原生代码部分。 包括四个主题: 1.Android RIL框架介绍 2.Android RIL与 WindowsMobile RIL 3.Android RIL porting 4.Android RIL的java框架 在本文档中将Android代码中的重要模块列出进行分析,并给出了相关的程序执行流程介绍,以加深对模块间交互方式的理解。 对于java代码部分,这里仅进行简单的介绍。如果需要深入了解,可以查看相关参考资料。 本文档中还对Android RIL的Porting部分内容进行了描述和分析。 针对对unix操作系统环境并不熟悉的读者,本文档中所涉及到的相关知识包括: Unix file system Unix socket Unix thread Unix 下I/O多路转接 以上信息可以在任意一份描述Unix系统调用的文档中找到。 1.Android RIL框架介绍 术语: fd unix文件描述符 pipe unix管道 cond 一般是condition variable的缩写 tty 通常使用tty来简称各种类型的终端设备 unsolicited response 被动请求命令来自baseband event loop

静态路由

断了今生、忘了曾经 提交于 2019-12-07 17:58:40
1.静态路由及默认路由基本配置 1.1 原理概述   静态路由是指用户或网络管理员手工配置的路由信息。当网络的拓扑结构或链路状态发生改变时,需要网络管理人员手工修改静态路由信息。   默认路由是一种特殊的静态路由当路由表中与数据包目的地址没有匹配的表项时,数据包将根据默认路由条目进行转发。   配置静态路由的两种方式:1)在配置中采取指定下一跳IP地址;2)指定出接口的方式。 1.2 实验内容 1.3 实验拓扑   静态路由及默认路由基本配置的拓扑如图, 1.4 实验步骤 1.基本配置   根据实验编址表进行相应的基本配置,并使用ping命令检测各直链链路的连通性。   各直链链路间的IP连通性测试完成后,现尝试在主机PC1上直接ping主机PC2。(发现无法连通)   假设PC1与PC2能正常通信,通信过程如下:主机A发送数据给网关R1;R1收到后将根据数据包中的目的地址查看它的路由表,找到相应的目的网络的所在路由条目,并根据该条目中的下一跳和出接口信息将该数据转发给下一台路由器R2;R2采取同样的方法将数据发送给R3;最后R3也采取同样的方法将数据发送给与自己直连的主机PC2;PC2收到数据后,采取同样的方法,发送回应消息给PC1。   查看主机PC1与其网关设备R1间能否正常通信。(通信正常)   检查网关设备R1上的路由表。(在R1的路由表上

静态路由及默认路由基本配置

青春壹個敷衍的年華 提交于 2019-12-07 12:52:27
静态路由及默认路由基本配置 原理概述 静态路由是指用户或网络管理员手工配置的路由信息。当网络的拓扑结构或链路状态发生改变时,需要网络管理人员手工修改静态路由信息。相比于动态路由协议,静态路由无需频繁地交换各自的路由表,配置简单,比较适合小型、简单的网络环境。 静态路由不适合大型和复杂的网络环境,因为当网络拓扑结构和链路状态发生变化时,网络管理员需要做大量的调整,且无法自动感知错误发生,不易排错。 默认路由是一种特殊的静态路由,当路由表中与数据包目的地址没有匹配的表项时,数据包将根据默认路由条目进行转发。默认路由在某些时候非常有效,如在末梢网络中,默认路由可以大大简化路由器配置,减轻网络管理员的工作负担。 实验目的 ●掌握配置静态路由(指定接口)的方法 ●掌握配置静态路由(指定下一跳IP地址)的方法 ●掌握测试静态路由连通性的方法 ●掌握配置默认路由的方法 ●掌握测试默认路由的方法 ●掌握在简单网络中部署静态路由时的故障排除方法.掌握简单的网络优化方法 实验内容 在由3台路由器所组成的简单网络中,RI 与R3各自连接着一台主机,现在要求能够实现主机PC-1与PC-2之间的正常通信。本实验将通过配置基本的静态路由和默认路由来实现。 实验拓扑 实验步骤 1.基本配置 根据实验编址表进行相应的基本配置,并使用ping命令检测各直连链路的连通性。 其余直连网段的连通性测试省略。

不同VLAN之间通信的原理

二次信任 提交于 2019-12-06 10:02:24
在划分VLAN后,不同VLAN之间不能直接进行二层通信。如果要实现VLAN间通信,可以采取以下3种方案之一。 1.三层VLANIF接口方案 这是一种通过计算机网络体系结构中第三层(网络层)来实现VLAN间通信的解决方案。每个VLAN都可以配置一个三层VLANIF逻辑接口,而这些VLANIF接口就作为对应VLAN内部用户主机的缺省网关,通过三层交换机内部的IP路由功能可以实现同一交换机上不同VLAN的三层互通,不同交换机上不同VLAN间的三层互通需要配置各VLANIF接口所在网段间的路由。 该方案除S1700系列外,其他所有华为S系列交换机均支持。 在图6-20所示的网络中,Device交换机上划分了两个VLAN:VLAN2和VLAN3。可通过如下配置实现VLAN间互通。 (1)在Device上创建两个VLANIF接口并配置VLANIF接口的IP地址,但这两个VLANIF接口对应的IP地址不能在同一网段。 (2)将各VLAN中的用户设备缺省网关设置为所属VLAN对应VLANIF接口的IP地址。 现在仅以位于VLAN 2中的主机A向位于VLAN 3中的主机C发起通信为例,介绍通过VLANIF接口进行VLAN间三层互通的基本原理。具体通信流程如下。 (1)在主机A向主机C发送的数据包到了网络层后,主机A先将包中的目的IP地址-主机C的IP地址和自己所在网段进行比较。 (2

dbus通信与接口介绍

大城市里の小女人 提交于 2019-12-06 07:45:29
DBUS是一种高级的进程间通信机制。DBUS支持进程间一对一和多对多的对等通信,在多对多的通讯时,需要后台进程的角色去分转消息,当一个进程发消息给另外一个进程时,先发消息到后台进程,再通过后台进程将信息转发到目的进程。DBUS后台进程充当着一个路由器的角色。 DBUS中主要概念为总线,连接到总线的进程可通过总线接收或传递消息,总线收到消息时,根据不同的消息类型进行不同的处理。DBUS中消息分为四类: 1. Methodcall消息:将触发一个函数调用 ; 2. Methodreturn消息:触发函数调用返回的结果; 3. Error消息:触发的函数调用返回一个异常 ; 4. Signal消息:通知,可以看作为事件消息。 1.2 DBUS应用场景 根据DBUS消息类型可知,DBUS提供一种高效的进程间通信机制,主要用于进程间函数调用以及进程间信号广播。 1 . 函数调用 DBUS可以实现进程间函数调用,进程A发送函数调用的请求(Methodcall消息),经过总线转发至进程B。进程B将应答函数返回值(Method return消息)或者错误消息(Error消息)。 2 . 消息广播 进程间消息广播(Signal消息)不需要响应,接收方需要向总线注册感兴趣的消息类型,当总线接收到“Signal消息”类型的消息时,会将消息转发至希望接收的进程。 1.3 DBUS通信特点