计量自动化终端上行通信规约

物理层

TCP 和 UDP 的传输接口

该类接口的登录链接和心跳检测采用链路测试服务,链路测试周期可设定。
参见 TCP/IP 协议规范。

串行通信传输接口

字节传输按异步方式进行,它包含 8 个数据位、1 个起始位“0”、1 个偶校验位 P 和 1 个停止位“1”。

红外通信传输接口

采用红外通信方式实现当地数据传输时,字节格式与串行通信传输格式相同,在发送数据时,在有效数据帧前加 1~4 个 FEH 作为前导码。

PSTN 通信传输接口

话音 MODEM 需支持 CCITT V.22bis、V.32bis、V.34、V.90、V.92 标准协议,支持 V.42、MNP 等纠错协议和 V.42bis、MNP5 等数据压缩协议,通信速率支持 1200bps~56 kbps。

音频专线通信传输接口

音频专线 MODEM 支持 V.23 标准,中心频率为 1700Hz,发送“1”,频率为 1300Hz,发送“0”,频
率为 2100Hz,通信速率为 300bps~1200bps。

帧格式

起始字符68H长度L起始字符68H控制域C地址域A应用数据校验和CS结束字符16H
1Byte2Byte1Byte1Byte7ByteN Byte1Byte1Byte

帧的基本单元为 8 位字节。链路层传输顺序为低位在前,高位在后;低字节在前,高字节在后。

长度

用户数据长度 L 采用 BIN 编码,是控制域、地址域、链路用户数据(应用层)的字节总数。

  • 采用专用无线数传信道,长度 L 不大于 255;
  • 采用 GPRS/CDMA 传输,长度 L 不大于 1024;
  • 采用网络传输,长度 L 不大于 16383。

控制域

D7D6D5D4D3~D0
下行方向传输方向位DIR启动标志位PRM帧计数位FCB帧计数有效位FCV功能码
上行方向传输方向位DIR启动标志位PRM要求访问位ACD保留功能码

传输方向位 DIR

DIR=0:表示此帧报文是由主站发出的下行报文;
DIR=1:表示此帧报文是由终端发出的上行报文。

启动标志位 PRM

  • PRM =1:表示此帧报文来自启动站;
  • PRM =0:表示此帧报文来自从动站。

帧计数位 FCB

当帧计数有效位 FCV=1 时,FCB 表示每个站连续的发送/确认或者请求/响应服务的变化位。FCB位用来防止信息传输的丢失和重复。

启动站向同一从动站传输新的发送/确认或请求/响应传输服务时,将 FCB 取相反值。启动站保存每一个从动站 FCB 值,若超时未收到从动站的报文,或接收出现差错,则启动站不改变 FCB 的状态,重复原来的发送/确认或者请求/响应服务。

复位命令中的 FCB=0,从动站接收复位命令后将 FCB 置“0”。

请求访问位 ACD

ACD 位用于上行响应报文中:

  • ACD=1 表示终端有告警数据等待访问,主站在本次通信服务结束后可以发起召读告警数据;
  • ACD=0 表示终端无告警数据等待访问。

ACD 置“1”和置“0”规则:

  • 自上次收到报文后发生新的告警并且主动上送不成功,ACD 位置“1”;
  • 收到主站请求告警报文并执行后,ACD 位置“0”。

帧计数有效位 FCV

  • FCV=1:表示 FCB 位有效;
  • FCV=0:表示 FCB 位无效。

功能码

当启动标志位 PRM =1 时,

功能码帧类型服务功能
0-备用
1发送/确认复位命令
2~3-备用
4发送/无回答用户数据
5~8-备用
9请求/响应帧链路测试
10请求/响应帧请求1级数据
11请求/响应帧请求2级数据
12~15-备用

当启动标志位 PRM =0 时,

功能码帧类型服务功能
0确认认可
1~7-备用
8响应帧用户数据
9响应帧否定:无所召唤的数据
10-备用
10响应帧链路状态
12~15-备用

本部分规定:

  • 启动站功能码 10(请求 1 级数据)用于应用层请求确认(CON=1)的链路传输;
  • 启动站功能码 11(请求 2 级数据)用于应用层请求数据的链路传输。

地址域 A

地址域由地市区县码 A1、终端地址 A2、主站地址组成

省地市区县码A1终端地址A2主站地址A3
3Byte BCD3Byte BIN1Byte BIN
  1. 省地市区县码 A1

省地市区县码按 GB 2260-2007 的规定执行。
当此通信的最终发起端和接收端为终端时,省地市区县码表示终端所属的省份、地市以及区县,A1 的高字节表示省份、中间字节表示地市码,低字节表示区县码。

  1. 终端地址 A2

终端地址 A2 选址范围为 1~16777216。A2=000000H 为无效地址,A2=FFFFFFH 时表示系统广播地址。

  1. 主站地址 A3

主站启动的发送帧的 MSA 应为非零值,其终端响应帧的 MSA 应与主站发送帧的 MSA 相同。
终端启动发送帧的 MSA 应为零,其主站响应帧的 MSA 也应为零。

帧校验和

帧校验和是用户数据区所有字节的八位位组算术和,不考虑溢出位。用户数据区包括控制域、地址域、链路用户数据(应用层)三部分。

传输规则(链路传输)

  1. 线路空闲状态为二进制 1,即为高电平;
  2. 帧的字符之间无线路空闲间隔;两帧之间的线路空闲间隔最少需 33 位(根据链路波特率计算);
  3. 如按 步骤5 检出了差错,两帧之间的线路空闲间隔最少需 33 位;
  4. 帧校验和(CS)是用户数据区的八位位组的算术和,不考虑进位位;
  5. 接收方校验:
    • 对于每个字符:校验起动位、停止位、偶校验位。
    • 对于每帧:
      • 检验帧的固定报文头中的开头和结束所规定的字符;
      • 识别 2 个长度 L;
      • 每帧接收的字符数为用户数据长度 L+8;
      • 帧校验和;
      • 结束字符;
      • 校验出一个差错时,校验按步骤 3 的线路空闲间隔;

若这些校验有一个失败,舍弃此帧;若无差错,则此帧数据有效。

帧拆分规则

对于终端的上行帧,如果一个数据帧无法容纳所有数据,那么可以将其拆分成多个数据帧应答。在需要主站确认帧的情况下,后续帧在接收到主站的确认帧之后再上送,而不需要主站的请求后续帧的命令;在无需主站确认帧的情况下,后续帧可以紧接着前一帧上送。除了中继命令和非标准报文外,拆分后的每一帧都是自描述的,其时间、信息点标识、数据标识及数据标识内容等仅对本帧数据有效。

非平衡传输过程

适用信道

半双工通道和专用无线通道应采用非平衡传输规则。

发送/无回答服务

在前一次通信服务的传输过程结束后,并且至少间隔 33 个空闲位,才开始新一次发送传输。

发送/确认服务

在前一次通信服务结束后,才能开始新一次发送帧传输。

当从动站正确收到启动站报文,并能执行启动站报文的命令,则发送确认帧;否则发送否定帧

请求/响应服务

在前一次通信服务结束后,才能开始新一次请求帧传输。

从动站正确收到启动站请求 1 级数据帧,如所请求的数据全部有效,则发送响应帧;否则发送否定帧。

从动站正确收到启动站请求 2 级数据帧,如所请求的数据全部有效,则发送响应帧;如所请求的数据部分有效,则根据能响应的数据内容组织数据单元标识发送响应帧;如所请求的数据全部无效,则发送否定帧。

当 FCV 有效时,可采用防止报文丢失和报文重复传送:

未收到响应帧或响应帧受到干扰,则重发原报文且不改变 FCB 值,最大重发次数可设定。 在从动站收到启动站的请求帧,并向启动站发送响应帧,此时在从动站将此响应帧保存起来。在前后两次接收到的请求帧中的 FCB 值不同时,则清除原保存的响应帧,并形成新的响应帧;否则若前
后两个请求帧的 FCB 值相同,则重发原保存的响应帧。

通信出错处理

启动站在规定时间内没有正确收到响应报文,作为超时处理,放弃该通信服务。超时时间应考虑信道网络延时、中继环节延时、终端响应时间等因素。在发送下一帧之前,需等待一个超时时间。

从动站若检出帧出错则不作回答。

平衡传输过程

适用信道

全双工通道和数据交换网络通道可采用平衡传输规则。

发送/无回答服务

启动站允许建立一个或多个通信服务。当同时建立多个通信服务时,由启动站进行数据流控制。

发送/确认服务

启动站允许建立一个或多个通信服务。当同时建立多个通信服务时,由启动站进行数据流控制。 当从动站正确收到启动站报文时,并能执行启动站报文的命令,则发送确认帧;否则发送否定帧。

请求/响应服务

启动站允许建立一个或多个通信服务。当同时建立多个通信服务时,由启动站进行数据流控制。

从动站正确收到启动站请求 1 级数据帧,如所请求的数据全部有效,则发送响应帧;否则发送否定帧。

从动站正确收到启动站请求 2 级数据帧,如所请求的数据全部有效,则发送响应帧;如所请求的数据部分有效,则根据能响应的数据内容组织数据单元标识发送响应帧;如所请求的数据全部无效,则发送否定帧。

终端作为从动站响应新的请求服务之前,必须完成前一个请求服务的响应。

当 FCV 有效时,可采用 FCB 位防止报文丢失和报文重复传送:

未收到响应帧或响应帧受到干扰,则重发原报文并不改变 FCB 值,最大重发次数可设定。

在从动站收到启动站的请求帧,并向启动站发送响应帧,此时在从动站将此响应帧保存起来。在前后两次接收到的请求帧中的 FCB 值不同时,则清除原保存的响应帧,并形成新的响应帧;否则若前后两个请求帧的 FCB 值相同,则重发原保存的响应帧。

通信出错处理

启动站在规定时间内没有正确收到响应报文时,作为超时处理,放弃该通信服务。超时时间应考虑信道网络延时、中继环节延时、终端响应时间等因素。

从动站若检出帧出错则不作回答。

应用层格式

应用层功能码 AFN帧序列域 SEQ信息点标识 1数据标识编码 1数据标识内容 1数据时间域信息点标识 n数据标识编码 n数据标识内容 n数据时间域消息认证码 PW时间标签 Tp
1Byte1Byte2Byte4ByteN Byte(4+2+2+2+2)*2+12Byte4ByteN Byte(4+2+2+2+2)*2+116Byte5Byte

应用层功能码 AFN

应用层功能码定义

帧序列域 SEQ

帧序列域 SEQ 为 1 字节,用于描述帧之间的传输序列的变化规则,由于受报文长度限制,数据无法在一帧内传输,需要分成多帧传输(每帧都应有数据单元标识,都可以作为独立的报文处理)。

D7D6D5D4D3~D0
TpVFIRFINCONPSEQ∕RSEQ

帧时间标签有效位 TpV

  • TpV=0:表示无时间标签 Tp;
  • TpV=1:表示带有时间标签 Tp。

首帧标志 FIR、末帧标志 FIN

  • FIR:置“1”,报文的第一帧。
  • FIN:置“1”,报文的最后一帧。
FIRFIN应用说明
00多帧,中间帧
01多帧,结束帧
10多帧,第1帧,有后续帧
11单帧

请求确认标志位 CON

在所收到的报文中,CON 位置“1”,表示需要对该帧报文进行确认;置“0”,表示不需要对该帧报文进行确认。

启动帧序号 PSEQ/响应帧序号 RSEQ

  1. 启动帧序号 PSEQ :每一对启动站和从动站之间均有 1 个独立的、由 D3~D0 位构成的计数范围为 0~15 的启动帧帧序号 PSEQ,用于记录当前启动帧的序号。启动站每发送 1 帧报文,该计数器加 1,从 0~15 循环加 1 递增;重发帧则不加 1;
  2. 响应帧序号 RSEQ :响应帧序号 RSEQ 以启动报文中的 PSEQ 作为第一个响应帧序号,后续响应帧序号在 RSEQ 的基础上循环加 1 递增,数值范围为 0~15;
  3. 帧序号改变规则:
    • 启动站发送报文后,当一个期待的响应在超时规定的时间内没有被收到,如果允许启动站重发,则该重发的启动帧序号 PSEQ 不变。重发次数可设置,最多 3 次;重发次数为 0,则不允许重发。
    • 当 TpV=0 时,如果从动站连续收到两个具有相同启动帧序号 PSEQ 的启动报文,通常意味着报文的响应未被对方站收到。在这种情况下,则重发响应(不必重新处理该报文)。
    • 当 TpV=0 时,如果启动站连续收到两个具有相同响应帧序号 RSEQ 的响应帧,则不处理第二个响应。
    • 终端在开始响应第二个请求之前,必须将前一个请求处理结束。终端不能同时处理多个请求。

帧序列域变化规则

帧序列域变化规则1

帧序列域变化规则2

信息点标识 DA

信息点标识 DA 由信息点元 DA1 和信息点组 DA2 两个字节构成(类似 Q/GDW10376.2 协议)。 DA2 采用二进制编码方式表示信息点组,DA1 对位表示某一信息点组的 1~8 个测量点,以此共同构成信息点标识 pn(n=1~2032)

信息类组DA2信息类元DA1
D7~D0D7D6D5D4D3D2D1D0
1P8P7P6P5P4P3P2P1
254P2032P2031P2030P2029P2028P2027P2026P2025

当 DA1 和 DA2 全为“0”时,表示终端测量点,用 p0 表示;

当 DA1=FFH 并且 DA2=FFH 时,表示除了终端信息点以外的所有测量点。

数据标识编码 DI

数据标识编码 DI 由四个字节构成,用来区分不同的数据标识,四个字节分别用 DI3,DI2,DI1 和 DI0 代表,每字节采用十六进制编码。

例:

数据标识编码A1

数据标识内容

数据标识内容为按数据标识所组织的数据,包括参数、命令等。具体数据标识内容参见附录。

数据组织的顺序规则:按 pn 从小到大的次序,即:完成一个信息点 pi 的数据标识编码的处理后,再进行下一个 pi+1 的处理。终端在响应主站读取多个时间点的数据请求时,按时间的先后顺序组织回复报文,即先组织第一个时间点的 DA 数据,再组织下一个时间点的 DA 数据。

终端在响应主站对终端的参数或数据请求时,数据标识内容应符合以下规则:

  1. 如果终端没有所需信息点标识的所有数据标识内容,则将应答报文中 DA 的对应标志位清除;
  2. 如果终端仅是没有所需信息点标识的部分数据标识中内容,则应将该数据标识中的所缺部分的数据标识内容填充“FFH”;
  3. 如果终端所有信息点标识的所有数据标识编码所对应内容都不存在,则按否定报文回复。

数据标识编码A6

数据时间域

帧格式

数据时间1数据时间2数据密度
12 Byte12 Byte1 Byte

数据时间 1 和数据时间 2 分别表示起始时间和结束时间时,按前闭后开区间定义

数据时间

年(YYYY)月(MM)日(DD)时(hh)分(mm)
BCD 码(1970~2099,表示 1970~2099 年)BCD 码(01~12,表示 01~12 月)BCD 码(01~31,表示 01~31 日)BCD 码(00~23,表示 00~23 时)BCD 码(00~59,表示 00~59 分)

按照年,月,日,时,分的顺序传输。

分钟数据、小时数据是指终端在相应的时刻所抄存的数据。

日数据是指终端在下一日 0 点时刻所抄存的数据,对应的数据时间为当日。

月数据是指终端在下一月的冻结日所抄存的数据,对应的数据时间为当月。

数据密度

数据密度由一字节组成,采用二进制编码表示

m数据密度间隔时间数据时刻排列次序
0终端历史数据存储密度按终端实际存储数据的时间间隔
11 分钟0 分、1 分、2 分、… 、59 分
25 分钟0 分、5 分、10 分、…、55 分
315 分钟0 分、15 分、30 分、…、45 分
430 分钟0 分、30 分
560 分钟0时0分、1时0分…
61 日1 日、2 日、3 日、…
71 月1 月、2 月、…
其它

消息验证码 PW

消息认证码字段 PW 用于重要下行报文中,由 16 字节组成,PW 是由主站按系统约定的认证算法产生,并在主站发送的报文中下发给终端,由终端进行校验认证,通过则响应主站命令,反之则否定。终端在收到带有 PW 的报文,必须在认证通过后,才能响应命令。

数据标识编码A7

时间标签 Tp

时间标签用于交换网络通道中,对采用同时建立多个通信服务的传输服务,进行辅助判决接收报文的时序和时效性。时间标签 Tp 由 5 字节组成。

启动帧发送时标 DDhhmmss允许发送传输延时时间
4 Byte1 Byte

时间标签 Tp 由启动站产生,并通过报文传送给从动站,从动站据此判决收到的报文的时序和时效性,如判别有效,从动站响应该帧报文,如判别无效,从动站不响应该帧报文。

启动帧发送时标:记录启动帧发送的时间。

允许发送传输延时时间:指启动帧从开始发送至从动站接收到报文之间启动站所允许的传输延时时间。

从动站的时效性判断规则: 如从动站的当前时间与 Tp 中的启动帧发送时标之间的时间差大于 Tp 中的允许传输延时时间,从
动站则舍弃该报文;

如时间差不大于 Tp 中的允许传输延时时间,则做出响应;

如 Tp 中的允许传输延时时间为“0”,则从动站不进行上述两项的判断。

级联

现场终端采用级联安装方式时,从终端借用主终端的远传通道与主站进行通信。为了保证数据传输的可靠性,在级联通信方式下,一个通信帧的数据内容长度不能超过 512 个字节。 一个主终端下挂的从终端不超过 4 个,从终端的逻辑地址必须在主终端中设置。

级联通信结构

终端级联通信流程:

  1. 主终端在通讯空闲时,每间隔 5 分钟主动向级联的各从终端发起询问请求。从终端给予响应,返回应答命令。主终端接收到从终端的正常应答帧后,立即建立级联通讯,等待接收该从终端的上报数据,并立即通过远传上行通道转发给主站。在第一次发送数据完成后,主终端发级联传输控制命令,通知从终端继续传送后续帧,直到从终端回复无后续帧。如果主终端等待设定的超时时间没有收到应答,即可认为从终端已上送完数据,从而退出级联通讯。
  2. 当主站发起的请求命令帧的目标地址是从终端时,主终端收到此命令后,判断目标地址不是主终端本身,立即将此命令转发至级联 485 总线,接收终端的应答数据,并立即通过远传上行通道转发给主站。在从终端第一次发送数据完成后,主终端发级联传输控制命令,通知从终端继续传送后续帧。主终端接收到从终端无后续帧报文或者等待设定的超时时间没有收到应答,即可认为从终端已上送完数据,从而退出级联通讯。
  3. 同一个级联系统中的主终端和从终端,可以通过专门定义的指令,来交换台区总电量数据。

终端级联通讯流程

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

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

相关文章

Android Studio 动态表格显示效果

最终效果 一、先定义明细的样式 table_row.xml <?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_h…

集团数字化转型方案(四)

集团数字化转型方案通过全面部署人工智能&#xff08;AI&#xff09;、大数据分析、云计算和物联网&#xff08;IoT&#xff09;技术&#xff0c;创建了一个智能化的企业运营平台&#xff0c;涵盖从业务流程自动化、实时数据监控、精准决策支持&#xff0c;到个性化客户服务和高…

实验七:独立按键实验

硬件电路图和题目; LED1-LD8是 P2口8个管脚 mian.c #include<reg52.h>sbit But1=P3^1 ; sbit But2=P3^0 ; sbit But3=P3^2 ; sbit But4=P3^3 ;sbit LED1 =P2^0 ; sbit LED2 =P2^1 ; sbit LED3 =P2^2 ; sbit LED4 =P2^3 ;#define PRESS_1 1 #define PRESS_…

CUTLASS 中的 47_ampere_gemm_universal_streamk 示例

前一篇文章介绍了 Stream-K: Work-centric Parallel Decomposition for Dense Matrix-Matrix Multiplication on the GPU 论文&#xff0c;下面对其代码实现进行分析。 cutlass 的 examples/47_ampere_gemm_universal_streamk 展示了 GEMM Stream-K 算法在 Ampere 架构上的使用…

JNPF 5.0升级钜惠,感恩回馈永远在路上

尊敬的JNPF用户们&#xff1a; 经过引迈团队数月的辛勤努力和不断的技术创新&#xff0c;JNPF快速开发平台迎来全新升级——5.0版本&#xff01;此次5.0版本的迭代革新&#xff0c;不仅代表着我们技术实力的进一步提升&#xff0c;是我们对用户需求的深度理解和积极回应。为了…

基于C# winform部署图像动漫化AnimeGANv2部署onnx模型

【界面截图】 【效果演示】 【部分实现代码】 using System; using System.Diagnostics; using System.Windows.Forms; using OpenCvSharp;namespace FIRC {public partial class Form1 : Form{Mat src null;public Form1(){InitializeComponent();}private void button1_Cli…

html+css+js网页设计 天猫首页

htmlcssjs网页设计 天猫首页 网页作品代码简单&#xff0c;可使用任意HTML编辑软件&#xff08;如&#xff1a;Dreamweaver、HBuilder、Vscode 、Sublime 、Webstorm、Text 、Notepad 等任意html编辑软件进行运行及修改编辑等操作&#xff09;。 获取源码 1&#xff0c;访问…

git本地仓库同步到远程仓库

整个过程分为如下几步&#xff1a; 1、本地仓库的创建 2、远程仓库的创建 3、远程仓库添加key 4、同步本地仓库到远程仓库 1、本地仓库的创建&#xff1a; 使用如下代码创建本地仓库&#xff1a; echo "# test" >> README.md git init git add README.md …

用户增长:策略与实践,驱动SaaS企业持续繁荣

在当今这个数字化时代&#xff0c;用户增长已成为所有行业&#xff0c;尤其是SaaS&#xff08;Software as a Service&#xff0c;软件即服务&#xff09;企业生存与发展的核心驱动力。用户增长不仅关乎市场份额的扩大&#xff0c;更是企业价值实现和持续盈利的基石。那么&…

【计算机网络】网络版本计算器

此前我们关于TCP协议一直写的都是直接recv或者read&#xff0c;有了字节流的概念后&#xff0c;我们知道这样直接读可能会出错&#xff0c;所以我们如何进行分割完整报文&#xff1f;这就需要报头来解决了&#xff01; 但当前我们先不谈这个话题&#xff0c;先从头开始。 将会…

【秋招笔试】8.18大疆秋招(第一套)-后端岗

🍭 大家好这里是 春秋招笔试突围,一起备战大厂笔试 💻 ACM金牌团队🏅️ | 多次AK大厂笔试 | 编程一对一辅导 ✨ 本系列打算持续跟新 春秋招笔试题 👏 感谢大家的订阅➕ 和 喜欢💗 和 手里的小花花🌸 ✨ 笔试合集传送们 -> 🧷春秋招笔试合集 🍒 本专栏已收…

Springboot发邮件功能如何实现?详细步骤?

Springboot发邮件配置指南&#xff1f;如何集成Spring Mail发邮件&#xff1f; 无论是用户注册、密码重置还是重要通知的发送&#xff0c;邮件都是不可或缺的沟通方式。Springboot作为一个流行的Java开发框架&#xff0c;提供了简洁易用的方式来实现邮件功能。AokSend将详细探…

音频转换器有哪些?一键转换,轻松享受

暑假里&#xff0c;你是否也沉浸在激情四溢的演唱会中&#xff0c;用手机记录下了那些难忘的现场音频&#xff1f; 但回到家中&#xff0c;想要将这些珍贵的现场记忆从手机迁移到电脑上永久保存时&#xff0c;却遇到了格式不兼容的难题。 别担心&#xff0c;今天我们就要解决…

基于Python的机器学习系列(8):Newton Raphson逻辑回归

在本篇博文中&#xff0c;我们将探讨一种比传统梯度下降更高效的优化方法——Newton Raphson方法&#xff0c;并学习如何在逻辑回归中应用它。Newton Raphson方法通过利用二阶导数的曲率信息&#xff0c;快速地找到使代价函数最小化的参数。尽管这种方法在处理较小规模的数据集…

前端项目重新打包部署后如何通知用户更新

前端项目重新打包部署后如何通知用户更新 前端项目重新打包部署后如何通知用户更新常用的webSocket解决方案纯前端方案路由拦截多线程main.ts中 创建多线程多线程逻辑处理 前端项目重新打包部署后如何通知用户更新 前端项目重新打包部署后&#xff0c;由于用户没及时更新页面&…

什么是OpenTiny?

OpenTiny 是一套企业级的 Web 前端开发解决方案&#xff0c;提供跨端、跨框架的 UI 组件库和低代码引擎&#xff0c;帮助开发者高效构建 Web 应用 。企业运用开发中&#xff0c;可以利用 OpenTiny 的以下核心组件和优势&#xff1a; TinyVue 组件库&#xff1a;一个丰富的组件库…

python初级爬虫实战:我是怎么用python下载音乐的

今天分享的内容是如何使用python下载歌曲和歌词信息&#xff0c;文章涉及内容主要为了帮助大家学习python技能&#xff0c;请大家合规合理使用。 如果你正在学习Python爬虫&#xff0c;但是找不到方向的话可以试试我这一份学习方法和籽料呀&#xff01;点击 领取&#xff08;不…

汽车IVI中控OS Linux driver开发实操(二十四):I2C设备驱动的编写

概述: 在Linux驱动中I2C系统中主要包含以下几个成员: I2C adapter(即I2C适配器,用来控制各种I2C从设备,其驱动需要完成对适配器的完整描述,最主要的工作是需要完成i2c_algorithm结构体。这个结构体包含了此I2C控制器的数据传输具体实现,以及对外上报此设备所支持的功…

0.91寸OLED迷你音频频谱

一、简介 音频频谱在最小0.91寸OLED 屏幕上显示&#xff0c;小巧玲珑 二、应用场景 本模块为音频频谱显示模块&#xff0c;用来获取声音频谱并展示频谱&#xff0c;跟随音乐声音律动 三、产品概述 基于主控芯片设计的将声音采集分析频谱&#xff0c;显示到0.91寸OLED的功能…

我们如何将数据输入到神经网络中?

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 下面我拿识别美女的例子来给大家介绍如何将美女的图片数据输入到神经网络中。 此例中&#xff0c;待输入的数据是一张图像。为了存储图像…