【物联网】物联网设备和应用程序涉及协议的概述

物联网设备和应用程序涉及协议的概述。帮助澄清IoT层技术栈和头对头比较。

物联网涵盖了广泛的行业和用例,从单一受限制的设备扩展到大量跨平台部署嵌入式技术和实时连接的云系统。

将它们捆绑在一起是许多传统和新兴的通信协议,允许设备和服务器以新的,更互联的方式相互通信。

同时,数十个联盟和联盟正在形成,希望能够统一断层和有机的物联网景观。

以下频道指南:

提供有助于IoT设备,应用程序和应用程序的热门协议和标准的概述列表

深入了解特定层次或行业特定协议

列出流行协议的头对头比较(即:mqtt vs xmpp)


协议

我们已经将协议分解成以下层,以提供一定程度的组织,而不是试图将所有的IoT协议都适合现有的体系结构模型(如OSI模型)

  • 基础设施(例如:6LowPAN,IPv4 / IPv6,RPL)

  • 识别(例如:EPC,uCode,IPv6,URI)

  • 通讯/交通(例如:Wifi,蓝牙,LPWAN)

  • 发现(例如:Physical Web,mDNS,DNS-SD)

  • 数据协议(例如:MQTT,CoAP,AMQP,Websocket,Node)

  • 设备管理(例如:TR-069,OMA-DM)

  • 语义(例如:JSON-LD,Web Thing模型)

  • 多层框架(例如:Alljoyn,IoTivity,Weave,Homekit)

  • 安全

  • 行业垂直(连接家庭,工业等)


基础设施

  • IPv6- “IPv6,是用于分组交换网络互联的互联网层协议,并提供跨多个IP网络的端到端数据报传输。

  • 6LoWPAN - “6LoWPAN是IPv6低功耗无线个人区域网络的首字母缩略词,它是适用于IPv6 over IEEE802.15.4链路的适配层,该协议仅在2.4 GHz频率范围内运行,传输速率为250 kbps。

  • UDP(用户数据报协议) - 基于互联网协议(IP)的客户端/服务器网络应用程序的简单OSI传输层协议。UDP是TCP的主要替代品,并且是1980年引入的最早的网络协议之一。UDP经常用于专门用于实时性能的应用中。

  • - QUIC(快速UDP Internet连接,发音为quick)支持通过用户数据报协议(UDP)的两个端点之间的一组多路复用连接,旨在提供与TLS / SSL相当的安全保护以及减少的连接和传输延迟,以及带宽估计在每个方向避免拥塞。

  • - Aeron - 高效可靠的UDP单播,UDP组播和IPC消息传输。

  • uIP - uIP是一种可用于微型8位和16位微控制器的开源TCP / IP协议栈。它最初由瑞典计算机科学研究所“网络嵌入式系统”组织的Adam Dunkels开发,根据BSD样式许可证许可,并由广泛的开发人员进一步开发。

  • DTLS(数据报传输层) - “DTLS协议为数据报协议提供通信隐私协议允许客户端/服务器应用程序以防止窃听,篡改或消息伪造的方式进行通信,DTLS协议基于传输层安全(TLS)协议,并提供等效的安全保证。“

  • ROLL / RPL(低功耗/有损网络的IPv6路由)

  • NanoIP  “NanoIP代表了”纳米互联网协议“,这个概念是为嵌入式和传感器设备提供类似互联网的服务,而无需TCP / IP的开销。NanoIP的设计是以最少的开销,无线网络和本地铭记在心“。

  • 以内容为中心的网络(CCN) - 技术概述. “下一代网络架构解决了内容分发可扩展性,移动性和安全性方面的挑战。CCN直接在网络的数据包层级路由和传递命名的内容,从而在内存中自动进行应用中立的缓存,无论它位于网络中。结果?无论何时何地需要,内容的高效有效的传递。由于架构可以将这些缓存效应作为分组传送的自动副作用,因此可以使用内存,而无需构建昂贵的应用程序级缓存服务。

时间同步网格协议(TSMP)

一种用于自组织网络的通信协议,称为无线设备。TSMP设备保持彼此同步并在时隙中进行通信,与其他TDM(时分复用)系统类似。


发现

  • mDNS(组播域名系统) - 将主机名解析为不包含本地名称服务器的小型网络内的IP地址。

  • 物理Web - 物理Web可以让您看到一个使用蓝牙低能耗(BLE)信标在您周围环境中的对象广播的URL列表。

  • HyperCat -一种开放,轻量级的基于JSON的超媒体目录格式,用于显示URI的集合。

  • UPnP(通用即插即用) - 现在由Open Connectivity Foundation管理的是一组网络协议,允许网络设备无缝地发现对方在网络上的存在,并建立用于数据共享,通信和娱乐的功能网络服务。

数据协议

MQTT(消息队列遥测传输)

“MQTT协议以非常轻便的方式实现发布/订阅消息传递模型,对于需要较小代码占用空间和/或网络带宽非常重要的远程位置的连接很有用。

- 其他资源

MQTT-SN(用于传感器网络的MQTT) - 专为机器到机器和移动应用设计的开放轻量级的发布/订阅协议

-Mosquitto:一个开源MQTT v3.1代理

- IBM MessageSight

CoAP(约束应用协议)

CoAP是一种应用层协议,旨在用于资源受限的互联网设备,如WSN节点,CoAP旨在轻松转换为HTTP,以简化与Web的集成,同时满足诸如组播支持等特殊要求低开销和简单性CoRE组为CoAP提出了以下功能:RESTful协议设计,最小化使用HTTP映射的复杂性,低标头开销和解析复杂性,URI和内容类型支持,支持发现由已知的CoAP服务。简单的资源订阅以及结果推送通知,基于最大时间的简单缓存。“

- 其他资源

- SMCP- 适用于嵌入式环境的基于C的CoAP堆栈。功能包括:支持draft-ietf-core-coap-13,完全异步I / O,支持BSD套接字和UIP。

STOMP - 简单文本定向消息协议

XMPP(可扩展消息和存在协议)

“用于实时通信的开放技术,其功能包括即时消息,存在,多方聊天,语音和视频通话,协作,轻量级中间件,内容联合以及XML数据的广义路由等广泛应用。

- 其他资源

- XMPP-IoT

“在XMPP的同一个庄园里,默默地创造了人与人之间的通信互操作性,我们的目标是使通信机对人和机器进行机器互操作。

Mihini / M3DA

“Mihini代理是一个软件组件,作为M2M服务器和在嵌入式网关上运行的应用程序之间的中介者。M3DA是针对二进制M2M数据传输进行优化的协议,它在Mihini项目中可用于手段的设备管理,通过简化设备数据模型的操作和同步,以及通过允许用户应用程序与M2M服务器来回交换数据/命令的手段来进行资产管理,以优化带宽使用的方式“

AMQP(高级消息队列协议)

“面向消息的中间件的开放标准应用层协议AMQP的定义特征是消息导向,排队,路由(包括点对点和发布和订阅),可靠性和安全性。

- 其他资源

DDS(实时系统数据分发服务)

“第一个开放的国际中间件标准直接针对实时和嵌入式系统的发布订阅通信。

JMS(Java消息服务)

 - 一种面向Java消息的中间件(MOM)API,用于在两个或多个客户端之间发送消息。

LLAP(轻量级本地自动化协议)

“LLAP是一个简单的短消息,它使用正常文本在智能对象之间发送,它不像TCP / IP,蓝牙,zigbee,6lowpan,WiFi等,它们在低级别实现”如何“移动数据,这意味着LLAP可以运行在任何通信媒介上,LLAP的三个优点是,它将在任何现在,任何未来的任何事情上运行,人类很容易理解。

LWM2M(轻量级M2M)

“轻量级M2M(LWM2M)是开放移动联盟的系统标准,包括DTLS,CoAP,Block,Observe,SenML和资源目录,并将其编入设备 - 服务器界面以及对象结构。

SSI(简单传感器接口)

“设计用于计算机或用户终端与智能传感器之间数据传输的简单通信协议”

反应流(Reactive Stream)

“用于JVM上非阻塞背压的异步流处理标准”。

ONS 2.0

REST(表示状态转移) - RESTful HTTP

- 物联网上下文中的附加资源

HTTP / 2- 

通过引入头字段压缩并允许在同一连接上进行多个并发交换,可以更有效地利用网络资源和减少对延迟的感知。

SOAP(简单对象访问协议)

JSON / XML,WebHooks,Jelastic,MongoDB

Websocket

WebSocket规范 - 作为HTML5计划的一部分开发 - 引入了WebSocket JavaScript接口,该界面定义了一个全双工单一套接字连接,客户端和服务器之间可以发送消息。WebSocket标准简化了双向Web通信和连接管理的复杂性。

JavaScript / Node.jsIoT项目

可以在这里找到一个名为Contit,Riot OS等的IoT软件项目列表。

通讯/传输层

以太网

WirelessHart

“WirelessHART技术为各种过程测量,控制和资产管理应用提供了强大的无线协议。”

DigiMesh

“DigiMesh是一种用于无线端点连接解决方案的专有点对点网络拓扑。

ISA100.11a

“ISA100.11a是由国际自动化学会(ISA)开发的无线网络技术标准,官方描述为”工业自动化无线系统:过程控制及相关应用“

IEEE 802.15.4

IEEE 802.15.4是一种标准,用于指定低速率无线个域网(LR-WPAN)的物理层和媒体访问控制。它由IEEE 802.15工作组维护。它是ZigBee,ISA100.11a,WirelessHART和MiWi规范的基础,每个规范通过开发未在IEEE 802.15.4中定义的上层进一步扩展标准。或者,它可以与6LoWPAN和标准互联网协议一起使用来构建无线嵌入式互联网。

NFC

基于标准ISO / IEC 18092:2004,使用中心频率为13.56 MHz的电感耦合器件。与无线传感器网络相比,数据速率高达424 kbps,范围短于几米。

蚂蚁

ANT是一种专有的无线传感器网络技术,具有无线通信协议栈,使得能够在2.4 GHz工业,科学和医疗分配RF频谱(“ISM频带”)中运行的半导体无线电通过建立共存的标准规则进行通信,数据表示,信令,认证和错误检测。

蓝牙

蓝牙工作在2.4 GHz ISM频段,并使用跳频。数据速率高达3 Mbps,最大范围为100m。可以使用蓝牙的每个应用程序类型都有自己的配置文件。

Eddystone - 定义接近信标消息的蓝牙低功耗(BLE)消息格式的协议规范。

ZigBee

ZigBee协议使用802.15.4标准,并在2.4 GHz频率范围内工作,速度为250 kbps。网络中的最大节点数为1024,范围可达200米。ZigBee可以使用128位AES加密。

EnOcean

EnOcean是一种能量收集无线技术,其工作频率为欧洲868 MHz,北美为315 MHz。发射范围在建筑物中可达30米,室外可达300米。

无线上网

WiMax

WiMax基于标准的IEEE 802.16,适用于无线城域网。固定电台的范围是不同的,在那里它可以达到50公里,移动设备有5到15公里。WiMAx以2.5 GHz至5.8 GHz的频率运行,传输速率为40 Mbps。

LPWAN

无重量

无重量是一种专有的开放式无线技术标准,用于在基站和数千台机器之间交换数据(使用空闲电视传输通道中的波长无线电传输),具有高度的安全性。

NB-IoT(窄带IoT)由3GPP标准体系标准化的技术

LTE-MTC(LTE机器类型通信) - 基于标准的技术系列支持适用于物联网的几种技术类别,如Cat-1和CatM1。

EC-GSM-IoT(扩展覆盖 - GSM-IoT) - 为LPWA(低功率广域)IoT应用实现现有蜂窝网络的新功能。EC-GSM-IoT可以通过部署在非常大的GSM足迹上的新软件来激活,从而为服务IoT设备增加更多的覆盖范围。

LoRaWAN - 用于无线电池操作的网络协议区域,国家或全球网络中的任务。

RPMA(随机相位多址)采用具有多路访问的直接序列扩频(DSSS)技术的通信系统。

手机:

GPRS / 2G / 3G / 4G蜂窝

- 在这里查看有关物联网通信和技术的更完整的概述。

语义

IOTDB

“用于描述物联网的JSON /链接数据标准”

SensorML

“SensorML为描述传感器和测量过程提供了标准模型和XML编码。”

语义传感器网络本体 - W3C

“这个本体论描述了传感器和观察结果以及相关的概念,它并没有描述域名概念,时间,位置等,这些概念是通过OWL导入从其他本体中被包含的。”

Wolfram语言 -

连接的设备 - “每个设备的符号表示,然后有一组标准的Wolfram语言功能,如DeviceRead,DeviceExecute,DeviceReadBuffer和DeviceReadTimeSeries,执行与设备相关的操作。

RAML(RESTful API建模语言) 

- 可以轻松管理从设计到共享的整个API生命周期。简明扼要 - 您只需编写您需要定义的内容,并可重复使用。

SENML(传感器标记语言的介质类型)

- 简单的传感器,如温度传感器,可以在诸如HTTP或CoAP之类的协议中使用此介质类型来传输传感器的测量值或进行配置。

LsDL(Lemonbeat智能设备语言)

- 面向服务的设备的基于XML的设备语言

多层框架

Alljoyn - 一个开放源码的软件框架,可让设备和应用程序轻松发现和沟通。

IoTivity是由Linux基金会托管的开放源码项目,由伊斯兰会议组织赞助。

IEEE P2413 - 物联网建筑框架标准(IoT)

线程

 - 基于开放标准和IPv6技术,以6LoWPAN为基础。

IPSO应用程序框架(PDF)

“这个设计定义了一组REST接口,可以由智能对象使用它来表示其可用资源,与其他智能对象和后端服务交互。该框架旨在与现有的Web配置文件(包括SEP2和oBIX)相辅相成。

OMA LightweightM2M v1.0

“LightweightM2M的动机是开发一种快速可部署的客户端 - 服务器规范来提供机器到机器服务。

LightweightM2M

主要是一种设备管理协议,但它应该被设计为能够扩展以满足应用程序的要求。轻量级M2M不限于设备管理,应该能够传输服务/应用数据。“

编织 

- 用于物联网设备的通信平台,可实现设备设置,手机到设备到云的通信以及来自移动设备和网络的用户交互。

Telehash- JSON + UDP + DHT =自由

一种安全的线路协议,为应用和设备提供分散式覆盖网络

安全

开放信任协议(OTrP) - 安装,更新和删除应用程序以及管理受信任执行环境(TEE)中的安全配置的协议。

X.509 - 用于管理数字证书和公钥加密的公钥基础设施(PKI)标准。用于保护网络和电子邮件通信的传输层安全协议的关键部分。

垂直具体

IEEE 1451:

IEEE 1451是智能传感器接口标准系列,描述了一组用于将传感器(传感器或执行器)连接到微处理器,仪表系统和控制/现场网络的开放,通用,独立于网络的通信接口。

IEEE 1888.3-2013- “无线普及绿色社区控制网络安全标准”

IEEE 1905.1-2013 - “IEEE Standard for a Convergent Digital Home Network for Heterogeneous Technologies”

IEEE 802.16p-2012 - “IEEE宽带无线接入系统空中接口标准”

IEEE 1377-2012 - “IEEE工业计量通信协议应用层标准”

IEEE P1828 - “虚拟组件系统标准”

IEEE P1856“电子系统预测与健康管理标准框架”

联盟和组织

组织机构:

ETSI(欧洲电信标准协会)

- 连接事物群集

IETF(互联网工程任务组)

- CoRE工作组(约束RESTful环境)

- 6lowpan工作组(IPv6 over Low Power WPAN)

- ROLL工作组(低功耗和有损网络)

IEEE(电气与电子工程师协会)

- IoT“创新空间”

OMG(对象管理组)

- 数据分发服务门户

OASIS(结构性信息提升标准组织)

- MQTT技术委员会

OGC(开放地理空间联盟)

- IoT标准工作组的传感器Web

IoT-A

“针对物联网的欧洲灯塔综合项目,提出了建立一个建筑参考模型以及初始的关键构件块的定义。”

OneM2M

“oneM2M的目标和目的是开发技术规范,解决需要一个可以容易地嵌入到各种硬件和软件中的普通M2M服务层,并依靠将现场无数设备与全球M2M应用服务器连接“。

OSIOT

“一个单一的重点是为新兴物联网开发和推广免版税,开源标准的组织。”

IoT-GSI(物联网全球标准倡议)

ISA国际自动化学会

W3C

- 语义传感器网络本体论

- 物联网社区小组

EPC全球

IEC(国际电工委员会)和ISO(国际标准化组织)通过JTC(联合技术委员会)。委员会页

RRG(路由研究组)

HIPRG(主机身份协议研究组)

Eclipse Paho项目

“Paho项目的范围是提供开源和标准消息传递协议的开源实现,支持目前和新兴的M2M与企业中间件和应用程序集成的需求,包括客户端实现,以及相应的服务器支持由社区决定。“

OpenWSN

“作为使用各种硬件和软件平台的基于物联网标准的协议栈的开源实现的存储库。

CASAGRAS

“我们是代表欧洲,美国,中国,日本和韩国的重要的国际合作伙伴,他们加入了欧盟资助的第七个框架计划,该计划将着眼于RFID的全球标准,监管和其他问题及其在实现”物联网“。

联盟

AllSeen联盟

“AllSeen联盟是一个非营利组织,致力于通过一个开放的,通用的发展框架,支持和驱动广泛采用的产品,系统和服务,支持全球互联网,由充满活力的生态系统和蓬勃发展的技术社区支持,

IPSO

“该联盟是一个全球性的非营利组织,为各种社区服务,旨在通过为公众提供协调一致的营销努力,建立互联网协议作为智能对象连接的网络。”

Wi-SUN联盟

Wi-SUN联盟旨在“通过推动基于IEEE 802.15.4g标准的全球区域市场互操作性来推进无缝连接”。

OMA(开放移动联盟)

“OMA是开发市场驱动,互操作的移动服务推动者的领先行业论坛”

- OMA LightweightM2M v1.0

工业互联网联盟

“成立于2014年,进一步开发,采用和广泛使用互连机器,智能分析和工作人员”

本文 :https://architect.pub/overview-protocols-involved-iot-devices-and-applications
讨论:知识星球【首席架构师圈】或者加微信小号【ca_cto】或者加QQ群【792862318】
网站CIO(首席信息官)https://cio.ceo
网站CIO,CTO和CDOhttps://cioctocdo.com
网站架构师实战分享https://architect.pub   
网站程序员云开发分享https://pgmr.cloud
官网行天智能科技咨询公司https://xingtian.ai
网站开发者闲谈https://developer.chat
网站首席隐私官内参https://cpo.work
网站首席安全官内参https://cso.pub    
网站CIO内参https://cio.cool
网站CDO内参https://cdo.fyi
网站CXO内参https://cxo.pub
网站首席架构师社区https://jiagoushi.pro

谢谢大家关注,转发,点赞和点在看。

自我介绍

  • 做一个简单介绍,酒研年近48 ,有20多年IT工作经历,目前在一家500强做企业架构.因为工作需要,另外也因为兴趣涉猎比较广,为了自己学习建立了三个博客,分别是【全球IT瞭望】,【架构师研究会】和【开发者开聊】,有更多的内容分享,谢谢大家收藏。
  • 企业架构师需要比较广泛的知识面,了解一个企业的整体的业务,应用,技术,数据,治理和合规。之前4年主要负责企业整体的技术规划,标准的建立和项目治理。最近一年主要负责数据,涉及到数据平台,数据战略,数据分析,数据建模,数据治理,还涉及到数据主权,隐私保护和数据经济。 因为需要,比如数据资源入财务报表,另外数据如何估值和货币化需要财务和金融方面的知识,最近在学习财务,金融和法律。打算先备考CPA,然后CFA,如果可能也想学习法律,备战律考。
  • 欢迎爱学习的同学朋友关注,也欢迎大家交流。全网同号【架构师研究会】

欢迎收藏  【全球IT瞭望】,【架构师酒馆】和【开发者开聊】.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/630008.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

奥伦德光电耦合器5G通信领域及其相关领域推荐

光电耦合器是以光为媒介传输电信号的一种电-光-电转换器件。由于该器件使用寿命长、工作温度范围宽,所以在过程控制、工业通信、家用电器、医疗设备、通信设备、计算机以及精密仪器等方面有着广泛应用在当前工艺技术持续发展与提升的过程中,其工作速度、…

新能源汽车智慧充电桩方案:如何实现充电停车智慧化管理?

一、方案概述 基于新能源汽车充电桩的监管运营等需求,安徽旭帆科技携手合作伙伴触角云共同打造“智能充电设备+云平台+APP小程序”一体化完整的解决方案,为充电桩车位场所提供精细化管理车位的解决办法,解决燃油车恶意…

用时序数据库 DolphinDB 搭建一套轻量化工业试验平台解决方案

DolphinDB 作为集成了高容量高速度流数据分析系统和强大编程语言的一站式解决方案,旨在为用户提供快速存储、检索、分析和计算庞大的结构化数据服务。本文将提供一个轻量化的工业试验平台数据处理解决方案,快速简单地实现海量数据采集、存储、处理和分析…

HTML 列表 iframe

文章目录 列表无序列表有序列表自定义列表 iframe 引入外部页面 列表 列表 是 装载 结构 , 样式 一致的 文字 或 图表 的容器 ; 列表 由于其 整齐 , 整洁 , 有序 的特征 , 类似于表格 , 但是其 组合的自由程度高于表格 , 经常用来进行布局 ; HTML 列表包括如下类型 : 无序列…

【IAP】核心开发流程

最近做了IAP U盘升级模块开发,总结下IAP基本开发流程,不深入讨论原理。 详细原理参考 首先需要知道我们需要把之前的APP区域拆一块出来做BOOT升级程序区域。 以STM32F103为例,0x08000000到0x0807FFFF为FLASH空间,即上图代码区域…

Unity解决Udp客户端无法接收数据的问题

Unity解决Udp客户端无法接收数据的问题 在我之前做过的项目中,其中不少涉及Udp客户端的项目。在这些项目中,一般只需要实现客户端向服务器端发送数据的功能就可以了,一般都不用接收服务器端发送的数据,但是也有同学使用了我分享的…

DOM 的 diff 算法

经典面试题: 1)react/vue中的 key 有什么作用?(key的内部原理是什么?) 2)为什么遍历列表时,key 最好不用 index? 1、虚拟dom中key的作用: 1) 简…

【二、自动化测试】为什么要做自动化测试?哪种项目适合做自动化?

自动化测试是一种软件测试方法,通过编写和使用自动化脚本和工具,以自动执行测试用例并生成结果。 自动化旨在替代手动测试过程,提高测试效率和准确性。 自动化测试可以覆盖多种测试类型,包括功能测试、性能测试、安全测试等&…

Spring06

一、SpirngMvc的基本概念 Spring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 Servlet。 MVC(Model View Controller),一种用于设计创建Web应用程序的开发模式 Model(模型&#xff…

软件测试|使用matplotlib绘制气泡图

简介 气泡图(Bubble Chart)是一种数据可视化工具,通常用于展示三维数据的分布情况,其中数据点以气泡的形式显示在二维平面上,每个气泡的位置表示两个变量的值,气泡的大小表示第三个变量的值。在Python中&a…

austin-admin 消息推送平台前端项目依赖低代码平台Amis 怎么使用

austin-admin 消息推送平台前端项目🔥依赖低代码平台Amis 怎么使用 收到一个通知,要将部署一个开源的消息系统 :austin的前端开源:https://gitee.com/zhongfucheng/austin-admin 本地运行 1、使用npm或者yarn这些咯 yarn yarn start2、使用…

使用muduo库编写网络server端

muduo库源码编译安装和环境搭建 C muduo网络库知识分享01 - Linux平台下muduo网络库源码编译安装-CSDN博客 #include<iostream> #include<muduo/net/TcpServer.h> #include<muduo/net/EventLoop.h> using namespace std; using namespace muduo; using name…

Linux 系统之部署 h5ai 目录列表程序

一、h5ai 介绍 1.1&#xff09;h5ai 简介 h5ai 是用于 HTTP Web 服务器的现代文件索引器&#xff0c;专注于您的文件。目录以吸引人的方式显示&#xff0c;浏览它们通过不同的视图、面包屑和树概述得到增强。最初 h5ai 是 HTML5 Apache Index 的首字母缩写&#xff0c;但现在它…

Linux Mii management/mdio子系统分析之六 fixed-mii_bus分析(mac2mac分析)

&#xff08;转载&#xff09;原文链接&#xff1a;[https://blog.csdn.net/u014044624/article/details/130674908] (https://blog.csdn.net/u014044624/article/details/130674908) 前面几章我们介绍了MDIO模块的大部分内容&#xff0c;针对mii_bus、mdio_bus、phy_device、p…

vue3__Provide / Inject (依赖注入)和mixins

一、 Provide提供和Inject 注入 Provide提供 <script setup> import { provide } from vueprovide(/* 注入名 */ message, /* 值 */ hello!) </script> 例如父组件中提供方法 <template> <div class"home">dfhualsf<div><button…

Qt优秀开源项目之二十一:遇见QSkinny,一个轻量级Qt UI库

目录 一.QSkinny简介 二.工作原理 三.编译 一.QSkinny简介 QSkinny库基于Qt Graphic View和Qt/Quick中少量的核心类。它提供了一组轻量级控件&#xff0c;可以在C或QML中使用这些控件。QSkinny默认是启用硬件加速的&#xff0c;非常适合嵌入式设备&#xff0c;目前已经应用于…

Python之assert断言介绍

python自动化测试中寻找元素并进行操作&#xff0c;如果在元素好找的情况下&#xff0c;相信大家都可以较熟练地编写用例脚本了&#xff0c;但光进行操作可能还不够&#xff0c;有时候也需要对预期结果进行判断。 常用 这里介绍几个常用断言的使用方法&#xff0c;可以一定程度…

Vue3组件库开发 之Button(1)

需求分析&#xff1a; Button 组件大部分关注样式&#xff0c;没有交互 根本分析可以得到具体的属性列表&#xff1a; type:不同的样式(Default,Primary,Danger,Info,Success,Warning) plain:样式的不同展现模式boolean round:圆角boolean circle:圆形按钮&#xff0c;适合图标…

React入门 - 07(说一说 JSX 中的语法细节)

本章内容 目录 1、js 表达式2、列表渲染3、条件渲染4、className5、jsx 中的样式处理6、dangeouslySetInnerHTML7、htmlFor8、使用 jsx 的注意事项 上一节内容我们完成了一个简单的TodoList案例。到现在为止我们已经知道怎么在 JSX中使用 “js 表达式”和”列表渲染“了&#…

蓝桥杯 最长递增

输入 7 5 2 4 1 3 7 2 输出 3 思路 这个思路也很简单&#xff0c;后面大于前面&#xff0c;长度加一。当后面不大于前面的时候&#xff0c;就是一个新的递增序列了&#xff0c;递增序列的长度最小为1。 代码 #include <iostream> using namespace std; int main() {in…