AXI 总线 上面介绍了AMBA总线中的两种,下面看下我们的主角—AXI,在ZYNQ中有支持三种AXI总线,拥有三种AXI接口,当然用的都是AXI协议。 图4‑10 AXI主设备与从设备之间的通信 从上图很容易看出,要通过AXI总线实现通信,我们需要一个主设备/上位机(Master)和一个从设备/下位机(Slave),并通过AXI总线将其相连。 ChipScope AXI 监视器 (为了调试 / 嵌入式系统诊断) AXI4-Lite音频和视频 / 图像处理解交织器,Gamma 校正,图像边缘轻度增强汽车控制器区域网络 (CAN)通信 / 网络10G 上面的IP是完成总线协议转换,如果需要做某些处理(如变换、迭代、训练……),则需要生成一个自定义Stream类型IP,与上面的Stream接口连接起来,实现数据输入输出。 oAXI 协议 讲到协议不可能说是撇开总线单讲协议,因为协议的制定也是要建立在总线构成之上的。
一、技术开发背景大家好,我是@马哥python说,一枚10年+程序猿,现全职独立开发。 博主资源库所有从名单”入库”的达人,都沉淀到团队的博主资源库——一个字段配置完备的云端表格,支持:多维筛选:任意字段组合筛人,比如”女粉>85%+阅读中位数>50万+图文报价<10万”;紧凑/宽松两种视图密度 五、技术架构点评(给技术同学)从工程实现看,虹选是一款相当规矩的MV3插件:协议级采集,不碰DOM抓取:它向蒲公英页面注入了一个MAINworld桥接脚本,监听页面自身调用的/api/solar/、/api 数据来自官方接口原文,颗粒度和你在页面上看到的一致——这正是”接口协议采集”优于”模拟点击”的地方;权限最小化:仅申请tabs+storage,host权限只覆盖蒲公英域名和自家后端(api.hongx.top 数据采集方面,采用接口优先原则。
刚才逛小诗梦博客的时候看到他发布了一个随机图的接口,访问了一下,哇,全是小姐姐,所以果断采集了,顺便把采集源码发出来,让他们的图变成自己的图(/大笑) <? php header('Content-type: application/json'); //图片接口地址(这里又要拿小诗梦开刀了) $url = 'https://cdn.mom1.cn/? array('url'=>$url,'filename'=>$filenames,'state'=>'202')); }else{ if(download($url,$path)){ //采集成功 echo json_encode(array('url'=>$url,'filename'=>$filenames,'state'=>'200')); }else{ //采集失败
这篇文章将实测ThingsGateway采集ModbusTcp协议设备,通过动图演示,方便理解。 二. 建立采集设备 建立采集设备,选择ModbusTcp插件,查看设备扩展属性,可以看到ModbusTcp的可配置项。 目前测试我们使用的是本机的502端口,所以默认不修改。 变量地址为40001,是Modbus协议中的保持寄存器0,详细地址规则请查看源文档。 3.3. 重启采集线程 通过运行状态-右上角的浮标,重启全部线程,重启完成后可以看到设备信息。 启动Modbus服务端 启动ModbusSlave,选择ModbusTcp协议、端口502。 启动后可以看到网关显示设备在线,并倒序显示读写报文。 3.5. 采集冗余 冗余的概念大伙应该熟悉,网关的采集冗余也是如此。 配置冗余设备后,当采集设备出现离线3次以上的情况,将切换至备用设备。 五.
振弦采集模块数字接口图片数字接口 1( UART/RS232/RS485)VM 系列模块提供全双工串行 TTL 电平的 UART 接口以及基于 TTL 扩展的 RS232 或 RS485 接口,默认端口设置为 注: 当模块为 RS485 接口版本时, 485CR 管脚已在模块内部连接到了 485 芯片( VM511、VM614、 VM618、 VM704S)。 数字接口 2( IIC)VM5XX 支持双向 IIC 总线和数据传输协议, 支持最高 500kHz 的通讯速率。在总线中, VM5XX 为从设备,与之通讯的上位机为主设备,主设备控制整个通讯过程。 IIC 协议硬件层信号类别及说明为了降低使用难度, VM 系列模块的 I2C 接口采用了与 AT24C02 完全相同的读写时序,在此不再描述更多细节。 应用领域应力应变: 结构应力应变、基坑支护、 管廊、 地下工程仪器仪表: 振弦(采集仪)读数仪表开发。自动化、 信息化: 结合物联网技术替代传统人工检测。
哪里有finecms采集接口可以下载? 我们在用finecms建站时比较纠结的是要如何采集文章,finecms商城是有售卖采集插件,价格是50元,有些朋友感觉比较贵,不太愿意买,我们也是比较权衡了才很久决定买下来,有需要的朋友可以联系ytkah 进行了解,价格比官方美丽很多,加微信咨询吧 finecms采集接口插件使用方法:联系ytkah咨询下载finecms采集插件 1、覆盖到根目录 2、 finecms5.wpm 文件为火车头发布模块 3、本采集接口支持全部自定义字段, data[status] 为内容状态,1为待审,9为通过 xiazai = 1 下载附件配置 ,1为下载,0为不下载 多文件字段发布标签如下: 多文件字段的文件 data
振弦采集模块UART 通讯协议UART 接口支持标准的工业 MODBUS 通讯协议( 03、 04、 06、 16 指令码)和自定义的简单 AABB协议以及$字符串指令集。 根据下述通讯协议规则,读写寄存器。在使用 MODBUS 或 AABB 通讯协议时, 请确认模块的软件握手参数处于关闭状态(默认)。 (一) MODBUS 通讯协议在 MODBUS 协议下, VMXXX 内部所有寄存器被定义为“ 保持寄存器” (详见 MODBUS 通讯协议标准说明),模块支持基于 MODBUS 协议的多个连续寄存器读取 、单个寄存器写入、多个连续寄存器写入三种指令, 对应指令码分别为 0x03(或 0x04)、 0x06、 0x10。 ) 指令码: 修改连续的多个寄存器的值, 指令格式如下图片例:修改地址为 0x01 的模块中 0~31 寄存器的值主机发送指令( 16 进制指令): 01 10 00 00 00 20 40 00 01
振弦采集模块AABB 通讯协议AABB 通讯协议是一种非标准自定义协议, 相较于 MODBUS 通讯协议,结构更简单,指令生成方法更容易,便于进行快速测试。 AABB 通讯协议支持单寄存器读写两种指令。 主机发送指令: 0xAA 0xBB 0x01 0x88 0x00 0x64 0x52从机返回应答: 0xAA 0xBB 0x01 0x08 0x00 0x64 0xD2( 3) 通用模块地址AABB 通讯协议支持模块通用地址 ( 4)特殊模块地址模块地址保存于寄存器 ADDR.[7:0], 取值范围为 1~255,这些地址中, 255 在 AABB 协议中作为通用地址使用, 地址 128( 0x80) 用于特殊用途, 故此对模块地址进行修改时可使用的地址有
振弦采集模块的通讯协议通讯协议是上位机通过 VMXXX 模块支持的数字接口完成信息交互的数据格式、 传输步骤、通讯速率等的一系列预先约定。 上位机必须按照本章描述的通讯协议规则来完成与 VMXXX 的数据交互工作。图片寄存器机制VMXXX 内部维护有若干寄存器, 模块在寄存器参数值的控制下完成振弦传感器的测量工作。 通过模块的数字接口可完成对寄存器的读取和写入(修改)操作。 寄存器写(修改)寿命典型值为 10 万次, 读取次数没有限制。 使用握手协议在读写寄存器时,建议使用 VMXXX 模块的握手协议(非必须),当检测到模块空闲时发起寄存器操作(硬件握手详见“ 2.3.2 硬件握手” ,软件握手详见“ 3.7.2 软件握手” )。 注:数字接口通讯会在一定程度上影响振弦传感器频率采集精度,不要过于频繁的对数字接口发送指令。
TCP 协议是在传输层中,一种面向连接的、可靠的、基于字节流的传输层通信协议。 环境准备对接口测试工具进行分类,可以如下几类:网络嗅探工具:tcpdump,wireshark抓包分析TCP协议代理工具:fiddler,charles,anyproxyburpsuite,mitmproxy 它支持针对网络层、协议、主机、网络或端口的过滤,并提供 and、or、not 等逻辑语句去掉无用的信息。 wireshark 也是一款网络嗅探工具,它除了拥有 tcpdump 功能,还有更多扩展功能,比如分析工具,但是在接口测试中,抓包过程往往都是在服务器进行,服务器一般不提供 UI 界面,所以 wireshark
Protocol Buffers 是谷歌开源的序列化与反序列化框架。它与语言无关、平台无关、具有可扩展的机制。用于序列化结构化数据,此工具对标 XML ,支持自动编码,解码。比 XML 性能好,且数据易于解析。更多有关工具的介绍可参考官网。
振弦采集模块的通讯协议( IIC)IIC 通讯协议本身即是基于设备地址和寄存器的物理层通讯协议, VMXXX 使用 IIC 接口对传感器的访问,请遵循前述硬件接口时序及协议说明即可。 向寄存器写操作时,在每次发送 STOP 后应延时 10ms 后再发起下次访问。 IIC 为同步串行接口, 在 IIC 总线中作为从设备的 VMXXX 无法主动输出任何数据,本手册中所述的与自动上传有关的特性均是指 UART 接口。 图片当某位被设置为 1 时, 模块通过 UART 接口主动上传数据。 除实时信号幅值数据外,其它数据均在每次完成传感器频率计算及温度采集后自动以字符串形式上传。
上一节我们了解了基于 XML 的 SOAP 协议,SOAP 的 S 是啥意思来着?是 Simple,但是好像一点儿都不简单啊! 传输协议问题 对于 SOAP 来讲,比如我创建一个订单,用 POST,在 XML 里面写明动作是 CreateOrder;删除一个订单,还是用 POST,在 XML 里面写明了动作是 DeleteOrder 如果按这种风格进行设计,RESTful 接口和 SOAP 接口都能做到,只不过后面的架构是 REST 倡导的,而 SOAP 相对比较关注前面的接口。 所以,从接口角度,就让你死了这条心。当然也有很多技巧的方法,在使用 RESTful API 的情况下,依然提供基于动作的有状态请求,这属于反模式了。 服务发现问题 对于 RESTful API 来讲,我们已经解决了传输协议的问题——基于 HTTP,协议约定问题——基于 JSON,最后要解决的是服务发现问题。
上述的三种类型的协议都处于网络模型中的应用层。除了应用层的常用协议之外,对于传输层的 TCP、UDP 协议,以及 Restful 架构风格、RPC 协议等等基础网络知识要有一定的了解和认知。 TCP/IP 协议栈是对应 TCP/IP 四层模型所使用的具体的网络协议TCP协议 TCP 协议是在传输层中,一种面向连接的、可靠的、基于字节流的传输层通信协议。 TCP 协议的面向连接、错误重传、拥塞控制等特性,适用于可靠性高的场景,比如涉及用户信息的数据传输。 UDP协议 UDP 协议一旦把应用程序发给网络层的数据发送出去,就不保留数据备份。 HTTP协议 HTTP 协议是接口测试中最常见的协议,用于分布式、协作式和超媒体信息系统的应用层协议。HTTP 是万维网的数据通信的基础。 在测试过程中,常常需要校验请求和响应结果,所以了解 HTTP 协议,对于接口测试来说,是重中之重。 在后面章节将会具体介绍 HTTP、HTTPS 协议的区别,以及 HTTP 协议的基础知识信息。
首先明确 Tcp 的概念,针对 Tcp 协议进行接口测试,是指基于 Tcp 协议的上层协议比如 Http ,串口,网口, Socket 等。 这些协议与 Http 测试方法类似(具体查看接口自动化测试章节),但在测试过程中需要做些调整。 Socket Socket 又称套接字,进程可通过套接字进行网络通信,使多个设备具有交互能力。 支持 Socket 设备不止计算机,还会有移动端,如果测试 Socket 协议,需要有收发 Socket 数据的能力或代理 Socket 的能力。 mitmproxy 使用请参考: mitmproxy 官网:https://www.mitmproxy.org/ 1 其他协议 其它协议,比如串口、网口、visa 等,与 Socket 的测试模式类似, 用相同的图即可简述: 其它协议较 Sokcet 更冷门,无合适的代理工具。
大多数 Deque 实现对它们可能包含的元素的数量没有固定的限制,但是该接口支持容量限制的 deques 以及没有固定大小限制的 deques。 一、Deque 接口 Queue 用于模拟队列这种数据结构,队列通常是指 “先进先出”(FIFO)的容器。队列的头部保存在队列中存放时间最长的元素,队列的尾部保存在队列中存放时间最短的元素。 ---- 二、ArrayDeque 集合 Deque 接口提供了一个典型的实现类:ArrayDeque,它是一个基于数组实现的双端队列,创建 Deque 时同样可指定一个 numElements Java SE,Java EE,Java ME] System.out.println(queue); } } ---- 三、LinkedList 集合 LinkedList 集合是 List 接口的实现类 除此之外,LinkedList 集合还实现了 Deque 接口,既可以被当成 “栈” 来使用,也可以当成 “队列” 使用。
Logstash是一款优秀的开源ETL工具/数据搜集处理引擎,可以对采集到的数据做一系列的加工和处理,目前已支持200+插件具有比较成熟的生态。 下图展示了Logstash的上下游主流生态: Logstash不仅可以从日志中获取数据,才可以从Kafka 甚至是 数据库中采集数据。 采集到数据之后,可以转发给ElasticSearch(最常见的场景),也可以转发给MongoDB等。 Logstash的核心概念 第一个概念:Logstash Pipeline Logstash的Pipeline包含了 input(采集) - filter(转换) - output(输出) 三个阶段的处理流程 " index => "movies" document_id => "%{id}" } stdout {} } 小结 本篇,我们了解了ElasticSearch中的数据采集神器
除了应用层的常用协议之外,对于传输层的 TCP、UDP 协议,以及 Restful 架构风格、RPC 协议等等基础网络知识要有一定的了解和认知。 TCP协议TCP 协议是在传输层中,一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP 协议的工作方式为在建立连接的时候需要进行“三次握手”,终止连接时需要进行“四次挥手”。 HTTP协议HTTP 协议是接口测试中最常见的协议,是用于分布式、协作式和超媒体信息系统的应用层协议。HTTP 是万维网的数据通信的基础。 在测试过程中,常常需要校验请求和响应结果,所以了解 HTTP 协议,对于接口测试来说,是重中之重。在后面章节将会具体介绍 HTTP、HTTPS 协议的区别,以及 HTTP 协议的基础知识信息。 RPC 接口的优点在于传输效率更高、性能损耗更低、自带负载均衡策略、更好的服务治理能力。
开源存储问题解答社区:https://github.com/perrynzhou/deep-dive-storage-in-china 磁盘接口&协议 SSD物理接口是在主机的主板上,目前主流有SATA SATA接口走的的SATA的通道和AHCI协议,读取速度上限是500MB/s M.2接口支持SATA通道和PCI-e通道,PCI-e通道支持AHCI协议和NVMe协议。 不同的 妙喻接口&协议 把磁盘上的数据比喻为东西,需要搬运到目的地CPU.其中经过SATA接口或者M.2接口这个大门(SATA接口大门长和宽是1m*1m和M.2接口大门长宽是2m*2m),SATA总线或者 PCI-e总线比喻为进入大门后的路,这个路上是能跑自行车(AHCI协议)还是跑车NVMe协议。 如下是SSD磁盘不同接口和不同协议的读写的理论上限 物理接口 总线类型 协议 读写速度 SATA SATA AHCI 理论上限500MB/s M.2 SATA AHCI 理论上限500MB/s M.2
UDP 协议 UDP (用户数据报)协议,是传输层的另外一个协议 一、简单概念 1、特点 .不需要建立连接,直接发送数据,不会去重新排序,不需要确认 2、报文宇段 ·源端口 ·目标端口 · UDP