CN106330196A - 适用于低脉冲时间的解码方法 - Google Patents
适用于低脉冲时间的解码方法 Download PDFInfo
- Publication number
- CN106330196A CN106330196A CN201510401612.6A CN201510401612A CN106330196A CN 106330196 A CN106330196 A CN 106330196A CN 201510401612 A CN201510401612 A CN 201510401612A CN 106330196 A CN106330196 A CN 106330196A
- Authority
- CN
- China
- Prior art keywords
- data
- pulse
- low pulse
- low
- length
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本发明涉及一种用于低脉冲时间的解码方法,其特征在于:设立自定义的关系式,通过捕获低脉冲后与时间常数进行比较后进行判断,继而与上一帧数据比较,获取解码信息。由此,可以提升容错率,根据设定的编码格式,有效分析出数据宽、窄脉冲与同步头符对应的比例关系。在实际处理时,只需要知道同步码、数据宽脉冲与数据窄脉冲三个中的任一值都可以由它们之间的比例关系计算出其它两个。并且,由于同步码的宽度最宽,由其计算数据宽、窄脉冲时间受干扰的影响最小。则解码时只要捕获到同步码的时间即可,提高了处理效率。
Description
技术领域
本发明涉及一种解码方法,尤其涉及一种适用于低脉冲时间的解码方法。
背景技术
常规的解码方式是根据理论的CLK周期计算同步头时间、数据的宽、窄脉冲时间,判断捕获的脉冲时间是否符合同步头、数据宽、窄脉冲的范围来解码的。通常CLK周期是由一个电阻调节的。实际使用过程中,由于环境造成CLK的周期在一个范围内变化,不同的厂家使用的电阻不一致造成有时解码错误或不能解码。
发明内容
本发明的目的在于克服现有技术存在的以上问题,提供一种适用于低脉冲时间的解码方法。
为实现本发明的目的,适用于低脉冲时间的解码方法,其中:设低脉冲为t,设同步码长度为ts,设1个数据位长度为td,设数据位宽脉冲为tw,设数据位窄脉冲为tn,设上一个数据沿与当前捕获的数据沿的长度为t,设时间常数为T,设已捕获的数据位数量为n,设需要捕获的数据位数量为N,设已捕获到的数据帧数为f,设判断为有效捕获的帧数为F,设立关系式ts=td*8=tw*32/3=tn*32,其中tw=12CLK,tn=4CLK,解码时,通过MCU的硬件定时器捕获低脉冲t后与时间常数T进行比较后进行判断,继而与上一帧数据比较,获取解码信息,所述的时间常数T的取值范围为0至实测最短同步头时间之间,所述的判断为有效捕获的帧数F的取值范围是大于0的整数。
进一步地,上述的适用于低脉冲时间的解码方法,其中,所述的低脉冲t大于0且小于ts/16,则收到一位数据,计为1;或是,所述的低脉冲t大于等于同步码长度ts/16且小于同步码长度ts/8,则收到一位数据,计为0;或是,所述的低脉冲t大于等于同步码长度ts/8且小于同步码长度ts/2,则数据错误;或是,所述的低脉冲t大于等于同步码长度ts/2,则收到同步码。
更进一步地,上述的适用于低脉冲时间的解码方法,其中,所述的解码时,步骤1,捕获到低脉冲t,将低脉冲t与时间常数T进行比较,若t大于T,则记为ts=t,n=0;步骤2,再次捕获一个低脉冲t,若低脉冲t大于同步码长度ts/2,则ts=t,n=0;若t大于ts/8,则跳到步骤1;若t大于等于ts/16,则收到一位数据1;否则,收到一位数据0,且n=n+1;若n大于等于N,则接收数据与上一帧数据比较,若两者相同,则f=f+1,若不同,则f=1并丢弃之前收到的数据帧,若f大于等于F,则解码成功,否则跳到步骤2。
再进一步地,上述的适用于低脉冲时间的解码方法,其中,所述的解码时,若F=1,则直接判断解码成功;若第一次收到数据帧,则不比较,且令f=1。
采用本发明技术方案,即便是遇到不同的厂家使用的电阻不一致而导致解码出错的情况,也可以通过有效的容错率,根据设定的编码格式,有效分析出数据宽、窄脉冲与同步头符对应的比例关系。由此,在实际处理时,只需要知道同步码、数据宽脉冲与数据窄脉冲三个中的任一值都可以由它们之间的比例关系计算出其它两个。并且,由于同步码的宽度最宽,由其计算数据宽、窄脉冲时间受干扰的影响最小。则解码时只要捕获到同步码的时间即可,提高了处理效率。
本发明的目的、优点和特点,将通过下面优先实施例的非限制性说明进行图示和解释,这些实施例是参照附图仅作为例子给出的。
附图说明
图1是适用于低脉冲时间的解码方法所涉及到的编码格式示意图。
图2是本适用于低脉冲时间的解码方法的实施流程示意图。
具体实施方式
如图1、图2所示的适用于低脉冲时间的解码方法,其与众不同在于:为了便于实现只关注低脉冲时间来进行解码,且可以允许适当的误差,提高容错率,首先设低脉冲为t,设同步码长度为ts(通常为低脉冲),设1个数据位长度为td,设数据位宽脉冲为tw,设数据位窄脉冲为tn。同时,设上一个数据沿与当前捕获的数据沿的长度为t,用来配合高脉冲或低脉冲,满足不同工况的处理需要。并且,设时间常数为T,设已捕获的数据位数量为n,设需要捕获的数据位数量为N,设已捕获到的数据帧数为f,设判断为有效捕获的帧数为F。
由此,可以设立关系式:ts=td*8=tw*32/3=tn*32,其中tw=12CLK,tn=4CLK。这样,在解码时,通过MCU的硬件定时器捕获低脉冲t后与时间常数T进行比较后进行判断,继而与上一帧数据比较,获取解码信息。由于本发明所涉及的数据解码基本在物理层,由此只有同步码0和1。并且,为了提高实际数据处理的容错率,减少运算数据过于冗长,时间常数T的取值范围为0至实测最短同步头时间之间。结合实际实施来看,脉冲的宽度是通过电阻阻值调节的,电阻阻值受温度影响。同时,因为不同的厂家选择的电阻阻值也有差别,为此,通过多次对比试验后发现实测取值3ms效果较好。
与之对应的是,考虑到能够对捕获的帧数是否有效进行精确判断,对于判断为有效捕获的帧数F的取值范围是大于0的整数。同时,通过多次对比试验后发现,效捕获的帧数F的值取2较为适宜。其原因在于,相邻的两帧数据同时出现相同的错误概率很小。而取1时数据是否错误无法判断,没有比较对象。同时,取大于2的值对提高错误码判断意义不大。F值越大,则需要检测的数据帧越多,响应越慢。结合多种因素权衡后来看,还是2较为适宜。
结合本发明一较佳的实施方式来看,本发明所涉及的低脉冲t实际数值为大于0且小于ts/16,则收到一位数据,计为1。如果低脉冲t大于等于同步码长度ts/16且小于同步码长度ts/8,则收到一位数据,计为0。也有可能出现低脉冲t大于等于同步码长度ts/8且小于同步码长度ts/2,则表示这个数据错误。这些数据错误往往涉及干扰数据,可以进行丢弃处理。并且,本发明涉及的低脉冲小于0~ts/16,与ts/16~ts/8这两个条件就是容错处理,且理论的低脉冲宽度为ts/32或ts*3/32。同时,也会出现低脉冲t大于等于同步码长度ts/2的情况,这个状态就表示则收到同步码。具体来说,数据是串行进入MCU的,MCU的定时器每次捕获一个低脉冲,记为时间t。当没有检测到同步码时,若t大于T,则记ts为t,否则丢弃。这样,即使出现误差,在考虑实时性后也可忽略。
进一步来看,本发明所采用的具体解码过程如下:首先,捕获到低脉冲t,将低脉冲t与时间常数T进行比较。若t大于T,则记为ts=t,n=0。接着,再次捕获一个低脉冲t,在此期间,若低脉冲t大于同步码长度ts/2,则ts=t,n=0。若t大于ts/8,则返回到之前的捕获步骤。若t大于等于ts/16,则收到一位数据,记为1。否则,收到一位数据,记为0,且n=n+1。
同时,为了减少数据的重复比较,影响处理效率,在上述的处理过程中,若n大于等于N,则接收数据与上一帧数据比较。若两者相同,则f=f+1。若不同,则f=1并丢弃之前收到的数据帧。并且,如果出现f大于等于F,则解码成功。否则跳回到上述步骤,再次来对低脉冲t进行捕获处理。
并且,考虑到缩减不必要的判断流程,在实际的解码期间,若出现F=1的情况,则直接判断解码成功。同时,如果是第一次收到数据帧,则不比较,且令f=1,便于后续处理。
通过上述的文字表述并结合附图可以看出,采用本发明后,即便是遇到不同的厂家使用的电阻不一致而导致解码出错的情况,也可以通过有效的容错率,根据设定的编码格式,有效分析出数据宽、窄脉冲与同步头符对应的比例关系。由此,在实际处理时,只需要知道同步码、数据宽脉冲与数据窄脉冲三个中的任一值都可以由它们之间的比例关系计算出其它两个。并且,由于同步码的宽度最宽,由其计算数据宽、窄脉冲时间受干扰的影响最小。则解码时只要捕获到同步码的时间即可,提高了处理效率。
当然,以上仅是本发明的具体应用范例,对本发明的保护范围不构成任何限制。除上述实施例外,本发明还可以有其它实施方式。凡采用等同替换或等效变换形成的技术方案,均落在本发明所要求保护的范围之内。
Claims (4)
1.适用于低脉冲时间的解码方法,其特征在于:设低脉冲为t,设同步码长度为ts,设1个数据位长度为td,设数据位宽脉冲为tw,设数据位窄脉冲为tn,设上一个数据沿与当前捕获的数据沿的长度为t,设时间常数为T,设已捕获的数据位数量为n,设需要捕获的数据位数量为N,设已捕获到的数据帧数为f,设判断为有效捕获的帧数为F,设立关系式ts=td*8=tw*32/3=tn*32,其中tw=12CLK,tn=4CLK,解码时,通过MCU的硬件定时器捕获低脉冲t后与时间常数T进行比较后进行判断,继而与上一帧数据比较,获取解码信息,所述的时间常数T的取值范围为0至实测最短同步头时间之间,所述的判断为有效捕获的帧数F的取值范围是大于0的整数。
2.根据权利要求1所述的适用于低脉冲时间的解码方法,其特征在于:所述的低脉冲t大于0且小于ts/16,则收到一位数据,计为1;或是,所述的低脉冲t大于等于同步码长度ts/16且小于同步码长度ts/8,则收到一位数据,计为0;或是,所述的低脉冲t大于等于同步码长度ts/8且小于同步码长度ts/2,则数据错误;或是,所述的低脉冲t大于等于同步码长度ts/2,则收到同步码。
3.根据权利要求1所述的适用于低脉冲时间的解码方法,其特征在于:所述的解码时,
步骤1,捕获到低脉冲t,将低脉冲t与时间常数T进行比较,若t大于T,则记为ts=t,n=0;
步骤2,再次捕获一个低脉冲t,若低脉冲t大于同步码长度ts/2,则ts=t,n=0;若t大于ts/8,则跳到步骤1;若t大于等于ts/16,则收到一位数据1;否则,收到一位数据0,且n=n+1;
若n大于等于N,则接收数据与上一帧数据比较,若两者相同,则f=f+1,若不同,则f=1并丢弃之前收到的数据帧,若f大于等于F,则解码成功,否则跳到步骤2。
4.根据权利要求3所述的适用于低脉冲时间的解码方法,其特征在于:所述的解码时,若F=1,则直接判断解码成功;若第一次收到数据帧,则不比较,且令f=1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510401612.6A CN106330196B (zh) | 2015-07-10 | 2015-07-10 | 适用于低脉冲时间的解码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510401612.6A CN106330196B (zh) | 2015-07-10 | 2015-07-10 | 适用于低脉冲时间的解码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106330196A true CN106330196A (zh) | 2017-01-11 |
CN106330196B CN106330196B (zh) | 2019-07-12 |
Family
ID=57724994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510401612.6A Expired - Fee Related CN106330196B (zh) | 2015-07-10 | 2015-07-10 | 适用于低脉冲时间的解码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106330196B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5140611A (en) * | 1989-09-29 | 1992-08-18 | Rockwell International Corporation | Pulse width modulated self-clocking and self-synchronizing data transmission and method for a telephonic communication network switching system |
CN101739541A (zh) * | 2008-11-12 | 2010-06-16 | 北京同方微电子有限公司 | 一种适用于pie编码的解码器 |
CN102043936A (zh) * | 2009-10-22 | 2011-05-04 | 中兴通讯股份有限公司 | 射频识别系统中的信息传输方法及系统 |
CN201904792U (zh) * | 2010-12-22 | 2011-07-20 | 桂林电子科技大学 | 多路自适应泛速率码速调整装置 |
US20140241414A1 (en) * | 2011-10-14 | 2014-08-28 | Infineon Technologies Ag | Self synchronizing data communication method and device |
-
2015
- 2015-07-10 CN CN201510401612.6A patent/CN106330196B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5140611A (en) * | 1989-09-29 | 1992-08-18 | Rockwell International Corporation | Pulse width modulated self-clocking and self-synchronizing data transmission and method for a telephonic communication network switching system |
CN101739541A (zh) * | 2008-11-12 | 2010-06-16 | 北京同方微电子有限公司 | 一种适用于pie编码的解码器 |
CN102043936A (zh) * | 2009-10-22 | 2011-05-04 | 中兴通讯股份有限公司 | 射频识别系统中的信息传输方法及系统 |
CN201904792U (zh) * | 2010-12-22 | 2011-07-20 | 桂林电子科技大学 | 多路自适应泛速率码速调整装置 |
US20140241414A1 (en) * | 2011-10-14 | 2014-08-28 | Infineon Technologies Ag | Self synchronizing data communication method and device |
Also Published As
Publication number | Publication date |
---|---|
CN106330196B (zh) | 2019-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105281776B (zh) | 一种可纠错的曼彻斯特解码装置及其方法 | |
JP4846544B2 (ja) | トリガ事象識別方法及び回路 | |
CN103760759B (zh) | 一种自动对正/反向irig‑b码解码方法 | |
CN102684999B (zh) | 数据包处理方法及装置 | |
CN104753538B (zh) | 曼彻斯特编码信号解码方法和装置 | |
CN105450215B (zh) | 一种符合测量系统及方法 | |
CN110910629B (zh) | 基于单片机的红外遥控信号解码方法、系统及计量装置 | |
Quinton et al. | Typical worst case response-time analysis and its use in automotive network design | |
CN105187070A (zh) | 一种曼彻斯特编码信号解码方法和装置 | |
CN102938197A (zh) | 输入捕获中断方式解码红外遥控的方法 | |
CN110691035A (zh) | 一种网络拥塞的确定方法、装置、电子设备及存储介质 | |
CN106649344B (zh) | 一种网络日志压缩方法和装置 | |
CN108512552A (zh) | 一种曼彻斯特码的解码系统及解码方法 | |
WO2016095569A1 (zh) | 降低误检率的方法、装置及存储介质 | |
CN102355318B (zh) | 时钟基准类型的识别方法及装置 | |
CN106330196A (zh) | 适用于低脉冲时间的解码方法 | |
CN103905065A (zh) | 一种卷积码译码方法和装置 | |
CN110474715A (zh) | 一种物联网数据传输准确性提高方法及系统 | |
CN110445572A (zh) | 一种irig-b码的解码设备及方法 | |
CN106341107B (zh) | 脉冲调制信号校准方法及装置 | |
CN107995053B (zh) | 一种基于软件定义网络侦测网路封包丢失方法及装置 | |
CN104993908A (zh) | 提高s模式应答信号译码可靠性的方法 | |
CN113375503B (zh) | 激光制导抗有源干扰的方法和系统 | |
CN104023030A (zh) | 一种令牌口令的同步方法 | |
CN103678136B (zh) | 一种基于控制流的数据竞争误报降低方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20191104 Address after: 200000 No. 516, military road, Shanghai Patentee after: University of Shanghai for Science and Technology Address before: 215200, 558, Fen Hu Avenue, Fen Hu hi tech Zone, Suzhou, Jiangsu, Wujiang Patentee before: Suzhou Lingxi Internet of Things Technology Co., Ltd. |
|
TR01 | Transfer of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190712 Termination date: 20200710 |
|
CF01 | Termination of patent right due to non-payment of annual fee |