精华内容
下载资源
问答
  • 1.前言:USB(Universal Serial Bus)通用串行总线,市面上USBS接口让人眼花缭乱,傻傻分不清,官方貌似喜欢改名字,造成同一接口有很多不同叫法。...引脚说明(1)USB2.0 Type A/B 引脚说明:pin1.VBUS ,pin2.D-...

    1.前言:USB(Universal Serial Bus)通用串行总线,市面上USBS接口让人眼花缭乱,傻傻分不清,官方貌似喜欢改名字,造成同一接口有很多不同叫法。有些无良商家更是以此来误导消费者。在此写下该文章以做记录也便更多人简单了解USB接口。

    2.电气接口一览图:

    ce1bd2261755f7b95096f79ecccea7bb.png

    该图图块来自viki

    3.引脚说明

    (1)USB2.0 Type A/B 引脚说明:

    pin1.VBUS , pin2.D- , pin3.D+  ,pin4.GND

    (2)USB2.0 mini/micro 引脚说明:

    pin1.VBUS ,pin2.D- , pin3.D+ ,pin4.ID , pin5.GND

    (3)USB 3.X  Type A引脚说明:

    b7687e8e161c9a4c4f1a0201ec5a3127.png

    (4)USB 3.X  Type B引脚说明:

    638c540e82e9bdeaf571eebe837700b9.png

    (5)USB 3.X   Micro-B引脚说明:

    0570915ef94955c1d8f17078fe677118.png

    4.传输速率

    各个版本的名称及速度,平时我们觉得传输速度是达不到理论速度的,这是因为,传输用户数据的同时也有协议开销,也有带宽保留,USB2.0理论速度达60MB/s,但实际速度只有24MB/s左右。

    82484aead1fa80f9339deed559a3f798.png

    5.常用设备类别和ID

    6d7d50f8e634eea9b2529d071e31e3c2.png

    该图源来自viki

    6.传输方式

    (1)控制传输(Control)——一般用于短的、简单的对设备的命令和状态反馈,例如用于总线控制的0号管道。

    (2)同步传输(Isochronous)——按照有保障的速度(可能但不必然是尽快地)传输,可能有数据丢失,例如实时的音频、视频。

    (3)中断传输(Interrupt)——用于必须保证尽快反应的设备(有限延迟),例如鼠标、键盘。

    (4)批量传输(Bulk)——使用余下的带宽大量地(但是没有对于延迟、连续性、带宽和速度的保证)传输数据,例如普通的文件传输。

    7.关于速率换算

    (1)十进制比特率,多用于在通信领域,USB传输速率采取该换算方式:

    1Gbit/s=1000Mbit/s ,1Mbit/s=1000kbit/s ,

    1Kbit/s =1000bit/s

    1Tbit/s=10^12bit/s,1Gbit/s=10^9bit/s,

    1Mbit/s=10^6bit/s,1Kbit/s=10^3bit/s,

    (2)二进制比特率,多用于存储领域:

    1Gibit/s =1024Mibit/s ,1Mibit =1024 Kibit/s,

    1Kibit/s=1024bit/s

    1Tibit/s =2^40bit/s,1Gibit=2^30bit/s,

    1Mibit=2^20bit/s,1Kibit=2^10bit/s

    (3)1Byte(字节)=8bit(位),平时看速率单位时,要注意区分大小写B/b,其所代表的意义不一样,大写B代表Byte,小写b代表的是bit。

    展开全文
  • 令牌申请教程:https://bbs.perfdog.qq.com/article-detail.html?id=55安装包下载:https://perfdog.qq.com/sdk一、 概述...本文档主要对PerfDogService提供的接口进行说明,并提供可运行的DEMO供有诉求的同学快速上...

    令牌申请教程:https://bbs.perfdog.qq.com/article-detail.html?id=55安装包下载:https://perfdog.qq.com/sdk一、 概述
    PerfDog性能狗服务组件,用户可基于service组件二次开发自己PerfDog性能工具或自动化服务。本文档主要对PerfDogService提供的接口进行说明,并提供可运行的DEMO供有诉求的同学快速上手。二、 快速指引
    1、 本地解压PerfDogService安装包

    d51c784b03d687f60c308d58dfc1f349.png


    PerfDogService.exe:Service启动文件,一般不用手工启动,自动化脚本会自动启动此程序。
    perfdog.proto: grpc接口和protobuf结构体的定义文件
    demo/python: python3的demo,依赖库grpcio和protobuf
    demo/java: java的demo,依赖库grpc-netty-shaded, grpc-protobuf, grpc-stub
    2、 快速运行Demo(以demo/python为例)
    1) 安装Python3环境
    2) 安装demo依赖库grpcio和protobuf,建议使用pip安装
    3) 打开demo/Python目录

    9de48f97a98271489975b9a975d9f9cf.png


    4) 打开目录中的demo.py文件,修改输入参数

    a2333c7c2af36155e6bb0240fb739a99.png


    5) 打开命令窗口,运行demo.py文件

    58662ab8bec7bf1f5f0cc3adb9a83ddc.png


    6) Demo成功运行,查看输出结果

    caac04627a21652ed5be3c42c5b5b4c1.png

    三、 整体架构
    产品组件

    6d47a12cc699024a8abb6a244aeef129.png


    整体框架

    ab756e1a8d5d362c1e48628d80342a13.png

    四、 工作流程
    PerfDogService支持多台设备同时测试。工作流程如下图所示,具体使用方法可以参考Demo

    6e9ca8a2720220ea5788e4d747d97c58.png

    五、 方法列表
    loginWithToken
    用途
    用户登录接口
    定义rpc loginWithToken (Token) returns (UserInfo) {}
    参数
    Token: 登录令牌
    返回值
    UserInfo: 登录用户的帐号信息
    备注
    如果需要令牌,需要在官网申请令牌
    startDeviceMonitor
    用途
    启动设备监听器,使用此接口可以收到移动设备到PC的连接和断开事件
    定义rpc startDeviceMonitor (Empty) returns (stream DeviceEvent) {}
    参数
    Empty: gprc占位符参数,无实际意义
    返回值
    stream DeviceEvent: 设备连接、断开事件流,可单独启动线程从返回值获取相应的事件
    前置依赖
    用户已登录
    initDevice
    用途
    初始化设备
    定义rpc initDevice (Device) returns (Empty) {}
    参数
    Device: 用于标识设备,可以从DeviceEvent中取得。
    返回值
    Empty: grpc返回值占位符,无实际意义
    前置依赖
    用户已登录
    getDeviceInfo
    用途
    获取设备信息
    定义rpc getDeviceInfo (Device) returns (DeviceInfo) {}
    参数
    Device: 用于标识设备
    返回值
    DeviceInfo: 设备基本信息
    前置依赖
    用户已登录
    设备已初始化
    getDeviceStatus
    用途
    获取设备状态
    定义rpc getDeviceStatus (Device) returns (DeviceStatus) {}
    参数
    Device:设备标识结构体
    返回值
    DeviceStatus: 设备状态信息
    前置依赖
    用户已登录
    getAppList
    用途
    获取设备APP列表
    定义rpc getAppList (Device) returns (AppList) {}
    参数
    Device:设备标识结构体
    返回值
    AppList: 设备上安装的APP的列表
    前置依赖
    用户已登录
    设备已初始化
    enablePerfDataType
    用途
    启用测试数据指标
    定义rpc enablePerfDataType(EnablePerfDataTypeReq) returns (Empty) {}
    参数
    EnablePerfDataTypeReq: 需要开启的类型,参见pb定义文件PerfDataTypem枚举类型说明
    返回值
    Empty: grpc参数占位符,无实际意义
    前置依赖
    用户已登录
    设备已初始化
    disablePerfDataType
    用途
    禁用测试数据指标
    定义rpc disablePerfDataType (DisablePerfDataTypeReq) returns (Empty) {}
    参数
    DisablePerfDataTypeReq: 需要关闭的数据类型
    返回值
    Empty: grpc参数占位符,无实际意义
    前置依赖
    用户已登录
    设备已初始化
    getPerfDataType
    用途
    获取已开启数据类型的列表
    定义 rpc getPerfDataType (Device) returns (PerfDataTypeRet) {}
    参数
    Device:设备标识结构体
    返回值
    PerfDataTypeRet: 开启数据类型的列表,参见附件协议文件
    前置依赖
    用户已登录
    设备已初始化
    getAvailableDataType
    用途
    获取设备支持的测试数据指标类型
    定义rpc getAvailableDataType (Device) returns (PerfDataTypeRet) {}
    参数
    Device:设备标识结构体
    返回值
    PerfDataTypeRet: 可以开启数据类型的列表
    前置依赖
    用户已登录
    设备已初始化
    setScreenShotInterval
    用途
    设置截屏时间间隔
    定义 rpc setScreenShotInterval (ScreenShotInterval) returns (Empty) {}
    参数
    ScreenShotInterval: 设置设备测试过程中截屏时间间隔,单位秒
    返回值
    Empty: grpc参数占位符
    前置依赖
    用户已登录
    startTestApp
    用途
    开始App测试
    定义rpc startTestApp(StartTestAppReq) returns (StartTestRet) {}
    参数
    StartTestAppReq: 填写需要配置测试App的相关信息
    返回值
    StartTestRet: grpc返回值占位符,无实际意义
    前置依赖
    用户已登录
    设备已初始化
    备注
    Android默认开启的数据类型有FPS、CPU_USAGE、MEMORY、CPU_TEMPERATURE、NETWORK_USAGE、FRAME_TIME和BATTERY(wifi模式);
    iOS默认开启的数据类型有FPS、CPU_USAGE、MEMORY、IOS_GPU_USAGE、NETWORK_USAGE、CTX_SWITCH、FRAME_TIME(usb模式)和BATTERY(wifi模式);
    如果需要开启或者关闭其他数据类型,请使用enablePerfDataType和disablePerfDataType接口。
    startTestSysProcess
    用途
    开始系统进程测试
    定义rpc startTestSysProcess (StartTestSysProcessReq) returns (StartTestRet) {}
    参数
    StartTestSysProcessReq: 设置开始测试的设备和系统进程
    返回值
    StartTestRet: grpc返回值占位符,无实际意义
    前置依赖
    用户已登录
    设备已初始化
    备注
    数据类型方面规则与startTestApp相同
    openPerfDataStream
    用途
    打开实时测试指标流,可以用来获取实时测试指标数据
    定义rpc openPerfDataStream (OpenPerfDataStreamReq) returns (stream PerfData) {}
    参数
    OpenPerfDataStreamReq: 需要指定设备,会获取指定设备测试指标数据流
    返回值
    stream PerfData: 流式返回性能数据
    前置依赖
    用户已登录
    设备已初始化
    设备已开始测试
    stopTest
    用途
    结束测试
    定义rpc stopTest (StopTestReq) returns (Empty) {}
    参数
    StopTestReq: 需要指定停止测试设备,perfdog支持同时测试多台设备
    返回值
    Empty: grpc返回值占位符,无实际意义
    前置依赖
    用户已登录
    设备已初始化
    设备已开始测试
    setLabel
    用途
    测试过程中添加标签,标签起始时间为当前时间,直到有下一个标签,都属于新添加标签说明的范围
    定义rpc setLabel (SetLabelReq) returns (Empty) {}
    参数
    SetLabelReq: 需要填写的包括设备信息和标签名字
    返回值
    Empty: grpc返回值占位符,无实际意义
    前置依赖
    用户已登录
    设备已初始化
    设备已开始测试
    updateLabel
    用途
    修改label的名字
    定义rpc updateLabel (UpdateLabelReq) returns (Empty) {}
    参数
    UpdateLabelReq: 更新标签请求,需要填写设备信息、标签起始时间(代表标签)、新标签信息
    返回值
    Empty: grpc参数占位符,无实际意义
    前置依赖
    用户已登录
    设备已初始化
    设备已开始测试
    addNote
    用途
    添加标注
    定义rpc addNote (AddNoteReq) returns (Empty) {}
    参数
    AddNoteReq: 添加标注请求,需要填写设备信息、标注的时间点和标注内容
    返回值
    Empty: grpc参数占位符,无实际意义
    前置依赖
    用户已登录
    removeNote
    用途
    删除批注
    定义rpc removeNote (RemoveNoteReq) returns (Empty) {}
    参数
    RemoveNoteReq: 删除标注请求,需要填写设备信息、标注的时间位置
    返回值
    Empty: grpc参数占位符
    前置依赖
    用户已登录
    setGlobalDataUploadServer
    用途
    设置第三方数据上传服务,当保存数据选择上了上传时,如果设置了第三方数据服务,将不会上传到官方的云服务,而是将数据上传此处设置的数据服务。
    定义rpc setGlobalDataUploadServer (SetDataUploadServerReq) returns (SetDataUploadServerRsp) {}
    参数
    SetDataUploadServerReq: 设置第三方数据服务请求,需要设置上传服务url地址,和需要上传的格式,格式支持json和pb
    返回值
    SetDataUploadServerRsp: grpc返回值占位符,无实际意义
    前置依赖
    用户已登录
    saveData
    用途
    保存测试数据
    定义rpc saveData (SaveDataReq) returns (SaveDataRsp) {}
    参数
    SaveDataReq: 保存测试数据请求,需要填写的有设备信息、数据开始时间、数据结束时间、是否上传到数据服务(官方云存储或者第三方数据服务)、是否保存到文件,以及选择到文件时保存的路径和格式
    返回值
    SaveDataRsp: 保存文件结果,包括上传结果和导出到文件结果
    前置依赖
    用户已登录
    getDeviceCacheData
    用途
    获取设备的缓存数据,数据流式返回
    定义rpc getDeviceCacheData (GetDeviceCacheDataReq) returns(stream CachePerfData) {}
    参数
    GetDeviceCacheDataReq: 拉取数据请求,需要填写设备信息字段
    返回值
    stream CachePerfData: 流式返回缓存性能数据,参见CachePerfData结构定义
    前置依赖
    用户已登录
    备注
    适用于测试过程中设备断开连接的情况,也可用于测试过程中或结束测试后按条拉取数据,缓存的性能数据会在开始新一次测试时清空
    getDeviceCacheDataPacked
    用途
    获取设备的缓存数据, 指标数据会打包返回
    定义rpc getDeviceCacheDataPacked (GetDeviceCacheDataPackedReq) returns (stream CachePerfDataPacked) {}
    参数
    GetDeviceCacheDataPackedReq: 拉取缓存数据请求,需要提供设备信息、以及返回数据格式,返回格式支持json和pb格式
    返回值
    stream CachePerfDataPacked: 流式返回设备缓存的测试数据,有 2 + n次的返回,第一次返回测试指标数据,第二次返回测试应用图标,后面n次返回测试过程中生成的截图,如果有的话。
    前置依赖
    用户已登录
    备注
    适用于测试过程中设备断开连接的情况,也可用于测试过程中或结束测试后拉取打包好的全部数据,缓存的性能数据会在开始新一次测试时清空
    getAppRunningProcess
    用途
    获取设备上app正在运行的进程列表
    定义rpc getAppRunningProcess (GetAppRunningProcessReq) returns (GetAppRunningProcessRet) {}
    参数
    GetAppRunningProcessReq: 拉取进程列表请求,需要填写设备信息和app信息
    返回值
    GetAppRunningProcessRet: 进程列表
    前置依赖
    用户已登录
    设备已初始化
    getAppWindowMap
    用途
    获取设备上app每个进程对应的Activity和SurfaceView,仅适用于Android设备
    定义rpc getAppWindowsMap (GetAppWindowsMapReq) returns (GetAppWindowsMapRet) {}
    参数
    GetAppWindowMapReq: 获取app进程对应的Activity和SurfaceView请求,需要填写设备信息和app信息
    返回值
    GetAppRunningProcessRet: 返回的数据可以理解为一个map,key值为pid,value值为此pid所涉及的Activity和SurfaceView列表
    前置依赖
    用户已登录
    设备已初始化
    getRunningSysProcess
    用途
    获取设备系统进程列表
    定义 rpc getRunningSysProcess (Device) returns (GetRunningSysProcessRet) {}
    参数
    Device: 需要获取系统进程列表的设备
    返回值
    GetRunningSysProcessRet: 进程列表
    前置依赖
    用户已登录
    设备已初始化
    updateAppInfo
    用途
    刷新app的信息
    定义rpc updateAppInfo (UpdateAppInfoReq) returns (UpdateAppInfoRet) {}
    参数
    UpdateAppInfoReq: 更新App请求,需要填写设备信息和app信息
    返回值
    UpdateAppInfoRet: 返回最新的app信息
    前置依赖
    用户已登录
    设备已初始化
    备注
    一般用于开始测试前更新app信息,防止开始测试前app被卸载或者升级等意外情况
    createTask
    用途
    创建任务,用于归类上传测试数据。
    定义rpc createTask (CreateTaskReq) returns (CreateTaskRsp) {}
    参数
    CreateTaskReq: 创建Task请求,需要task名称,不能超过50个字符
    返回值
    CreateTaskRsp: 返回新创建task Id
    前置依赖
    用户已登录
    archiveCaseToTask
    用途
    将上传官方云存储case归档到task
    定义rpc archiveCaseToTask (ArchiveCaseToTaskReq) returns (ArchiveCaseToTaskRsp) {}
    参数
    ArchiveCaseToTaskReq: 归档请求,需要填写任务Id和Case ID
    返回值
    ArchiveCaseToTaskRsp: 返回值占位符,无实际意义
    前置依赖
    用户已登录
    shareCase
    用途
    分享上传到官方云储存case数据
    定义rpc shareCase (ShareCaseReq) returns (ShareCaseRsp) {}
    参数
    ShareCaseReq: 分享的case id和分享有效时间(单位分钟,0代表永不过期)
    返回值
    ShareCaseRsp: 返回分享后的查看case 链接和查看密码
    前置依赖
    用户已登录
    killServer
    用途
    停止PerfDogService
    定义rpc killServer (Empty) returns (Empty) {}
    参数
    Empty: gRPC参数占位符,无实际意义
    返回值
    Empty: gRPC返回值占位符,无实际意义

    性能测试技术交流群:720150565

    查看PerfDog详情:https://perfdog.qq.com/?ADTAG=media.dev_website

    展开全文
  • Digi XBee模块操作说明本文旨在帮助初次使用Digi公司的XBee无线模块快速熟悉产品和操作配置方法。...大多数XBee 模块产品的串口引脚和电源引脚均相同,可以直接替换。Digi公司的开发套件中带有通过电脑串口或USB口...

    Digi XBee模块操作说明

    本文旨在帮助初次使用Digi公司的XBee无线模块快速熟悉产品和操作配置方法。模块操作以Zigbee协议为例,其它无线协议方法类似,具体请查看相关模块的产品说明书。一、使用前的准备工作XBee 模块产品按协议和频率,传输能力的不同,共有数十种。大多数XBee 模块产品的串口引脚和电源引脚均相同,可以直接替换。Digi公司的开发套件中带有通过电脑串口或USB口操作模块的开发底板,用户可以很方便使用串口调试工具或是Digi公司的X-CTU 调试工具对模块进行各种配置。X-CTU是Digi出品的一款Windows下的模块调试配置工具,拿到Digi产品,首先必须安装X-CTU。请确保计算机能访问互联网,在安装过程中会出现提示:

    aa6871a8a7a8968fdca4f4d15d9cd38e.png

    请选择Yes,以下载Digi模块产品的固件库,这样在操作不同模块时,X-CTU能识别最新固件的模块,并显示相应的AT命令集。下载过程较长,大约需15-30分钟。安装好X-CTU后,如果您使用USB接口的底板或产品,还需要安装一下USB转串口的驱动程序。Digi模块产品的说明书和驱动,均可以在www.digi.com网站上找到。使用Digi的底板调试程序,其中USB接口的XBIB-U开发底板需装驱动程序。小贴示:查找Digi产品的使用说明书和驱动,工具等,可以通过Digi.com菜单上,点击”Support”,在提示框中输入产品的部分或全部名称来搜索相关文档。安装好驱动后,将模块产品接上电脑,打开X-CTU,在PC Settings标签下,就可以看到对应的串口,就可以对模块进行AT命令或API命令帧方式操作。二、两种工作模式1、AT模式AT模式也叫透传模式,是指除按约定的方式进入命令模式外,XBee模块的串行口总是工作在传输模式下,将所收到的数据通过无线的方式发往目标地址。工作在AT模式下,用户可以通过输入+++来进入命令模式,在命令模式下,输入AT命令会被立即执行,并返回执行结果。在命令模式下,过一定时间没有任何命令,则会返回传输模式。该超时时间可以通过AT命令设置。2、API模式API模式是XBee模块的最主要工作模式,在该模式下通过向XBee串行口发送包含地址和数据的命令帧,从而转为无线的方式发往目的地址。API模式中数据输出方式,API模式中有个AT 命令参数AO,决定如何显示收到的命令帧,可以是仅输出0x90接收帧格式数据(对应0x10发送数据命令帧),也可以输出完整的0x91接收帧格式(对应0x11明确寻址发送数据命令)。这样,在 Zigbee协议中,可以将APS应用支持子层的数据从串口中获取,从而支持不同的profile应用。对Zigbee 模块的I/O口操作,也只能通过API方式。三、模块操作实战将带有模块的底板接上电脑,打开X-CTU,在PC Settings上可以找到对应串口,并可配置波特率和流控等参数。默认出厂时,模块的波特率设置为9600,数据位8,停止位1,无奇偶校检位。不修改默认参数,点击Test/Query,可以测试模块是否能正常通信,类型,固件版本号,Mac地址等信息,如下图所示。

    af3e24ae6b770b1e87533e849d0198f9.png

    模块通信正常后,点击OK关闭对话框。点选Modem Configuration标签页,首先点击Read按钮,把模块的参数读出来。

    c2dd866cc8d583c7ddb0e6b028278bb9.png

    这里,Modem XBEE是模块类型,Function Set是模块所带有的功能集,不同的模块类型会有不同的功能集,而Version则显示该模块的固件版本号。尽管不同类型的模块在硬件引脚上大多相互兼容,但值得注意的是,只有相同硬件类型,才可以相互烧写不同的模块类型固件。XBEE硬件类型以S开头来区分,有S1,S2,S2B,S2B PRO,S2C ,S2C PRO,S3等,因此除非您了解,在进行固件升级时请不要随意更改Modem XBEE类型,而总是先Read出其模块类型,Function Set和 Version则可以任意变换。在模块的参数区,可以看到该固件版本所支持的各种AT命令及其含义,相关的AT命令表也可以在产品说明书中查询到,可以在这里直接设置或查看模块的现有参数值。修改相应参数后,点击Write按钮就会将所有参数写入模块。在透传模式下,更常用的方式还是利用Terminal串口调试终端对产品进行修改,点选Terminal标签页,输入+++三个加号,返回OK,则表示已经进入命令模式,这时可以打入各种AT命令,如ATID显示设置的PAN ID值,ATSH和ATSL分别读取模块的高位和低位地址,ATDH和ATDL则是模块上设置的目标地址,目标地址为0时总代表协调器的地址,广播模式下目标地址为FFFF。一些模块参数是可以设置的,只需在AT命令后面直接输入相应的参数值即可,如ATDLFFFF,就可以把DL 值设置为FFFF。

    b8f5170c6d6a30b7b25a2f0d92f771f1.png

    可以用其它串口调试工具实现AT 命令的功能,常用的在Windows下有串口调试助手,在Linux下有minicom,但如果要用API的通信模式,则需要用X-CTU更为方便。四、透传模式测试1. 准备两个XBee ZB模块,用X-CTU读取模块信息,并设置为AT模式。设置方法:S2B模块,查看读取的信息中Function Sets 是否为AT的固件,如果不是则更新固件为AT 版本。其中一个模块烧成Coordinator AT,另一个模块烧写为Router AT。选中固件集后,点一下”Show Default”,在always update firmware上打勾。然后更新固件S2C模块,固件集成为一个,只需设置AP=0,AO=0 即为AT 透传模式,可以通过AT 命令来设置:+++OKATAP1ATAO12. 设置模块的目标地址为对方地址每个模块都有一个出厂的序列号,也就是64位的MAC地址,在AT命令中为SH和SL,分别代表高位和低位地址。要实现A和B的透传,就要把模块A的目标地址(DH,DL)设置为B的MAC地址,而把B的目标地址设为A的MAC地址。设置方法:以A为例,假设B的MAC 地址为13a20040669e10,在模块A上用AT 命令:+++OKATDH13a200ATDL40669e10如果A是协调器,那么B无需任何设置即可以A通信(默认目标地址为0,指代协调器,用默认参数时,B已经是设置为0了),如果不是,可以参照上述方法,把B的目标地址设为A的MAC地址。注:另外一个特殊地址值是FFFF,这通常用来指代广播地址。此时,在串口调试工具中键入任何字符,就会出现在另一端的串口调试工具中,透传模式已置好。(在没有两台电脑时,可以将另一端的XBee模块底板上的回环插针插上,这样远端XBee模块中的串口输出直接送入其串口输入在同台电脑上可以看到发出去数据收回来了,以此来验证连通模性)注:有时我们发现,两个模块的PAN ID和信道完全一样,可是仍无法通信;这是因为两个模块在某一时间配置成直接通信方式(无Zigbee网络情况直接透传),而当我们配置成网络通信时,并没有退出原有通信状态,从而出现通信异常,这时只需将该模块退网:ATNR0命令。五、API模式测试这里以S2C模块为例,为了方便我们看测试结果,我们将要测试的一个模块A设置为API( 模式的协调器AP=1,AO=1,CE=1),另一个模块B设置为AT模式的Router。在X-CTU中,A模块的Terminal中,打开Show Hex查看16进制字符。用API模式是以指命定令的帧方式通信,可以同模块的网络参数进行交互,串口中输入的数据必须按指定的数据传输帧或命令帧格式。模块的用户手册给出了各种不同功能命令帧的定义。我们来测试一下API模式:我们先从AT模式的模块打入个字符t,该ASCII码对应的16进制为74,可以看到,接收端收到的是:

    8d887c8222b4ebf072fb73c21402f24a.png

    在命令帧生成工具中,选择0x91类型的命令帧,这是Zigbee个工具可以看到协议中明确寻址传输的接收包帧类型,根据这Digi模块默认的Zigbee Profile是Digi Drop-IN Networking Profile,Profile ID为0xC105,而该Profile下用于无线数据端点Source Endpoint和Destination Endpoint都是0xE8,透传数据Cluster ID为0x11。接着我们用它来发个数据,0x11明确寻址发送数据命令帧包含了Zigbee寻址的功能,将上述值填入命令帧生成工具,地址用ffff填入(广播),在RF Data中填入我们要传输的内容64,点击Build Packet按钮,生成命令帧:7E 00 15 11 01 00 00 00 00 00 00 FF FF 00 00 E8 E8 00 11 C1 05 00 00 74 D4发送出去后,在接收端B可以看到数据”t”。如果把接收端也换成API模式(AP=1,AO=1),则接收到的是0x91格式的接收包帧格式。如对DIGI产品感兴趣,请联系:武经理18611101552;或直接扫码添加下面的微信。

    ef4da332d40ebc00792395c7f67c41f0.png

    往期热门文章(点击文章标题即可直接阅读)

    1、几种常见的近距离无线通信技术比较

    2、浅谈Digi Xbee模块的AT指令

    3、浅谈Digi Xbee模块的透传和API模式

    4、浅谈Digi 900HP Digimesh组网通信测试

    5、浅谈Digi XBee3 ZigBee组网和通信测试

    6、XBee3 Zigbee开始使用Micropython;

    7、某电路板支持Digi S3B但不支持S2C之谜。

    展开全文
  • USB引脚定义

    2018-12-23 18:55:28
    usb引脚定义 各种封装定义说明 尺寸 每个引脚功能 有图片说明
  • Usb-type-C端口实现的挑战与设计方案USB Type-C port implementation challenges and design solutionsUSB from 1.1 to 3.2 and Beyond通用串行总线(universal serial bus,USB)于1996年首次推出,它统一了多种...

    Usb-type-C端口实现的挑战与设计方案

    USB Type-C port implementation challenges and design solutions

    USB from 1.1 to 3.2 and Beyond

    通用串行总线(universal serial bus,USB)于1996年首次推出,它统一了多种不同类型连接的角色,在计算和消费类科技产品中无处不在。它的到来使得连接多个外围设备,如键盘、鼠标、打印机、相机、外置驱动器或其他设备,都可以轻松方便地连接到计算机上。外围设备不再由接口定义,用户也不再需要处理多种电缆类型来连接他们想要使用的设备。 USB1.1允许的最大数据速率为12Mbps。usb2.0将标准提高到480Mbps,以处理各种角色,包括流式视频和从外部设备快速传输数据到PC硬盘。通过指定的VBU和接地引脚,USB接口可在5V直流电下提供高达2.5W的电源,用户还可以为小型设备(如外部驱动器)供电,或为笔记本电脑和移动电话充电,而无需额外的电源连接。2007年,智能手机行业要求手机的USB充电接口允许从标准的USB Type-a插座充电,并避免因废弃的专用充电器而造成的电气浪费负担。

    清视频系统,这些系统需要将内容投射到越来越大的屏幕大小,并与高速的千兆存储驱动器交换数据。新的标准如6Gbps的HDMI、8.1Gbps的DisplayPort和20Gbps的Thunderbolt等都出现了,以应对不断增长的需求。

    为了保住USB的通用王冠,USB实施者论坛(USB-IF)首先介绍了USB 3.2规范,该规范确定了三种传输速率:USB 3.2 Gen1(5Gbps)、USB 3.2 Gen2(10Gbps)和USB 3.2 Gen2x2(20Gbps利用双通道物理接口)。这些产品以超高速USB 5Gbps、超高速USB 10Gbps和超高速USB 20Gbps向消费者销售。

    最近,USB4被指定支持20Gbps(USB4 20Gbps)和40Gbps(USB4 40Gbps)传输速率。USB4向后兼容USB 3.2、USB 2.0和Thunderbolt 3,引入了包括面向连接的隧道体系结构在内的变化,允许在同一物理接口上组合多个协议,并共享USB4结构的总体速度和性能。

    Upgrading the Physical Connection

    升级物理连接

    为了支持新的双通道高速规范,同时允许向后兼容旧的usb2.0设备,需要一个新的物理接口。USB Type-C(USB-C)接口不仅包含两组差分数据通道的更多连接和并行运行的USB 2.0总线,而且还添加了支持USB电源传输(USB PD)规范的功能。这些功能包括两组电源和接地引脚以及一个通信通道,通过该通道连接的设备可以协商其功耗需求和电源能力,范围从传统的USB 2.0 5V到最新的20V/5A规格。此外,还包括额外的边带使用(SBU),以允许未来的性能增强和新功能。

    ae609256cfd7e1304c44cf7c576ccdf6.png

    Figure 1. USB-C Connector Pins

    USB-C从用户的角度简化了连接设备。连接器是非极化的,允许电缆向上插入;因此,USB-C连接器现在有24个引脚,以满足支持USB 3.2、USB4和USB电源传输(PD)所需的大量电源和数据连接,并允许向后兼容USB 2.0,如图1所示。

    此外,该接口是双向的,允许电缆在每一端具有相同的连接器,并允许连接的设备充当主机或设备或电力消耗者或供应商。

    Implementing USB-C

    实现USB-C

    由于这种额外的灵活性和对额外引脚的需求,USB-C接口比它的前辈复杂得多。连接的设备可以被分类为面向下游的端口(DFP或source)、面向上游的端口(UFP或Sink)或双角色端口(DRP),这些端口能够同时提供数据和电源。在每种情况下都需要逻辑来处理配置控制。还需要检测电缆的插入方向,并正确切换信号,如USB 3.2和DisplayPort到USB-C连接器。此外,还需要USB2.0信号的多路复用、电源切换和充电控制,当然,还需要提供信号完整性和瞬态电压保护。

    一个设备,如笔记本电脑或平板电脑,可以包含电路,如图2所示,提供一个功能齐全的USB-C接口,能够处理USB3.2和多媒体数据以及USB PD功能。

    43f747cfa6d65600e36634f21b0747bb.png

    Figure 2. USB-C Interface Supporting USB 3.2 Multimedia, and USB PD

    双向矩阵交换机(如图2所示的二极管PI3USB31532)提供了一个完全集成的解决方案,能够通过USB-C连接器多路复用USB 3.2 Gen2(单通道,10Gbps超高速+)和/或多达四个通道的DisplayPort 1.4信号以及辅助通道。该交换机具有低插入损耗和8.3GHz的宽3dB带宽,以确保信号保真度高达10Gbps。

    除了支持上述PI5USB31532功能外,还可以使用有源mux,如6通道4通道PI3DPX1205A1。这个mux集成了一个ReDriver功能来驱动更长的距离。包括接收端线性均衡和输出设置的平坦增益和均衡,确保了两倍的信号完整性的可比CMOS红河。

    USB电源传输功能通过PD控制器执行,该控制器允许通过USB Type-C连接器提供高达100W的功率,并通过USB Type-C接口启用多媒体数据的替代模式,如DP或Thunderbolt。

    像PI5USB2546A这样的设备集成了充电端口控制和2.4A电源开关以及usb2.0d+和D-数据线的交换。该部件支持USB电池充电1.2规范,包括充电下游端口(CDP)和专用充电端口(DCP)模式,可用于墙壁充电适配器以及主机和集线器设备。

    889dec87008af7b75e8ed3b4d865af09.png

    Figure 3. Implementing USB-C in Smartphones

    图3显示了一个适用于智能手机的USB-C端口实现。该电路以二极管PI5USB31213A为例,该二极管集成了USB Type-C配置通道控制器功能和USB 3.2 Gen2 10Gbps复用功能,以便将正确的数据传输到非极化USB Type-C连接器。该设备根据CC引脚上检测到的电压水平处理主机模式、设备模式或双角色端口的自动配置。它还提供连接器方向检测以及通过USB Type-C接口协商充电电流。或者,可以使用诸如PI3EQX10312之类的设备。这包含了PI5USB31213A中包含的所有功能,唯一的变化是包含了一个ReDriver,以支持行驶更长的跟踪距离。

    c7ac71e406ff245b2ef4639904aec87c.png

    Figure 4. USB-C Dock

    作为最后一个示例,图4展示了一个通用扩展底座,它通过单个USB Type-C端口连接到上游主机,并为下游设备(如监视器和外部存储器)提供DisplayPort、HDMI、VGA和多个USB 3.2输出端口。它还提供千兆以太网LAN端口。在这里,可以使用PI3USB31532 USB Type-C crossbar switch或PI3DPX1205A1 USB 3.2 Gen 2/DisplayPort 1.4有源crossbar来处理USB 3.2和DisplayPort交换。图中所示的电源开关使基座能够通过VBUS引脚向主机供电。DP开关(例如PI3WVR31310A)的输出要么直接发送到DP连接器,要么通过HDMI或VGA转换器分别传输到HDMI和VGA连接器。

    Conclusion

    结论

    设备设计师必须面对USB-C端口的复杂性,才能充分利用最新的USB电源和数据功能,包括高达100W的电源传输、USB 3.2和USB4数据速率以及多协议支持。多种集成解决方案可用于处理数据交换、电源切换、充电控制和电缆定向检测,简化了设计,简化了产品认证,节省了电路板空间和材料成本。

    展开全文
  • 1. 硬件平台介绍 TT推荐的USB硬件快速开发方法是直接使用成熟的产品级的FPGA USB模块作为...这里以Pionway的XMS6301 FPGA USB模块来做示例说明。 XMS6301是一款深受市场欢迎的FPGA USB3.0产品级模块,用料扎实,做工...
  • USB引脚定义

    2017-07-05 09:13:00
    USB引脚定义: 针脚 名称 说明 接线颜色 1 VCC +5V电压 红色 2 D- 数据线负极 白色 3 D+ 数据线正极 绿色 ...
  • USB 3.0采用的双总线结构,在速率上已经达到4.8Gbps,所以称为Super speed,在USB 3.0的LOGO上显示为SS,由于... USB 3.0中定义的连接器包括(本文不包含连接线缆):  §USB 3.0 A型插头和插座  §USB 3.0 B型插头和
  • USB 3.0采用的双总线结构,在速率上已经达到4.8Gbps,所以称为Super speed,在USB 3.0的LOGO上显示为SS,由于接口变化太... USB 3.0中定义的连接器包括(本文不包含连接线缆):  §USB 3.0 A型插头和插座  §USB 3.0
  • USB TYPE C接口以其纤薄、正反可插拔等诸多优势,得到了广泛运用,我们先看看USB TYPE C...从上图拆解可见,USB TYPE C接口上下各有12个引脚,其引脚排列如下图: TYPE-C母座引脚排列图 TYPE-C
  • 9针串口引脚定义 25针串口引脚定义   9针RS-232串口(DB9).25针RS-232串口(DB25)引脚简写功能说明引脚简写功能说明1CD载波侦测(Carrier Detect)8CD载波侦测(Carrier Detect)2RXD接收数据...
  • USB接口定义

    2016-03-20 20:55:37
    USB接口定义USB引脚定义: 针脚 名称 说明 接线颜色 1 VCC +5V电压 红色 2 D- 数据线负极 白色 3 D+ 数据线正极 绿色 4 GN
  • 常见传输线接口引脚定义USB类接口USB Type AUSB Type B USB类接口 说明: S+、S-代表:电源线正、负 D+、D-代表:数据线正、负 USB Type A USB Type A公头: USB Type A母头: USB Type B USB Type B公头: USB ...
  • 常见USB类接口Type AType BMicro型Mini 型Type C常见音频类接口3.5mmTRS接口(模拟音频)6.3mmTRS接口(模拟音频)RCA接口(模拟音频/数字音频)BNC...模拟视频接口)HDMI接口(数字视频接口)以太网RJ45接口常见USB类接口说明...
  • Fanconn EC20 USB Dongle使用说明书,内含Fanconn EC20 USB Dongle的引脚定义等信息
  • ST-link/V2引脚定义

    万次阅读 2019-03-25 17:25:57
    LED状态说明 闪烁红色:ST-LINK/V2连接到计算机后,第一次USB枚举过程 红色:ST-LINK/V2与计算机已建立连接 闪烁绿色/红色:目标板和计算机在进行数据交换 绿色:通讯完成 橙色(红色+绿色):通讯失败 下面为...
  • 1,RS232 (DB9)引脚定义 1 :DCD :载波检测。主要用于Modem通知计算机其处于在线状态,即Modem检测到拨号音, 处于在线状态。 2 :RXD:此引脚用于接收外部设备送来的数据;在你使用Modem时,你会发现RXD指示灯在...
  • linux usb

    2020-08-19 14:29:09
    micro usb: 引脚定义 针脚 名称 说明 接线颜色 1 VCC 电源+5V 红 2 DATA- 数据线负极 白 3 DATA+ 数据线正极 绿 4 ID ...USB引脚定义: ...
  • 一、USB BDM MULTILINK图片如下: (说明:正视图为从上往下看,LED灯点亮面为正面,绿灯在左侧,黄灯在右侧) 二、相关引脚方向及定义说明如下图:
  • USB接线图

    万次阅读 2016-04-13 17:21:06
    一、简介 通用串行总线(英文:Universal Serial Bus,简称USB)是连接外部装置的一个串口汇流排标准,在计算机上使用广泛,但也可以用在机顶...USB引脚定义USB接口定义 针脚 名称 说明 接线颜色 1 VCC +5V电压 红
  • CH375usb接口芯片

    2009-05-27 10:13:39
    usb接口芯片CH375的技术资料:包括此芯片的概述、引脚说明、参数定义、功能说明进行了详细的介绍。
  • 此DB9针型与 标准 RS232 or RS485 DB9定义有所不同,下图中的DB9针型说明仅是针对USB转485DB9接口。 标准RS232的引脚相应关系是: 2-- RXD;3-- TXD;5-- SGND。 标准PROFIBUS DB9的引脚相应关系是: 3...
  • CPU CPU为Xilinx Zynq-7000SOC,兼容XC7Z035/XC7Z045/XC7Z100,平台升级能力强,以下为Xilinx Zynq-7000特性参数:(数据手册见Datasheet目录) ...接口PS端引出,接口定义见核心板引脚说明文档。 ...
  • 1、USB分类 ...USB接头配对说明,参考https://www.wiki-wiki.top/wiki/USB USB协议和接插接对应关系: 3、管脚定义 1、TYPE A/B 4 PIN 引脚1:电源。USB设备供电端口(+5V)。 引脚2:接入南桥,传输
  • 伺服驱动器安装环境,尺寸说明。配线图以及指令端子定义。脉冲序列指令模式、脉冲和方向引脚、低高速指令脉冲接口、开关量引入输出引脚。编码器信号输出引脚USB调试口CN3定义
  • 电脑常用的接口线序说明,有25"电源接口,ATX电源接口,ISA总线定义,PCI总线定义,AGP总线定义USB接口,PCMCIA引脚定义,VGA显示接口,键盘接口定义,MIDI接口定义,LPT接口,RS232系列接口,ATA 44接口,IDE接口...

空空如也

空空如也

1 2 3
收藏数 47
精华内容 18
关键字:

usb定义引脚说明