CN117553834A - 基于ssi协议的光电编码器数据读取方法、系统及设备 - Google Patents

基于ssi协议的光电编码器数据读取方法、系统及设备 Download PDF

Info

Publication number
CN117553834A
CN117553834A CN202311502537.3A CN202311502537A CN117553834A CN 117553834 A CN117553834 A CN 117553834A CN 202311502537 A CN202311502537 A CN 202311502537A CN 117553834 A CN117553834 A CN 117553834A
Authority
CN
China
Prior art keywords
clock signal
data reading
photoelectric encoder
data
position information
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.)
Pending
Application number
CN202311502537.3A
Other languages
English (en)
Inventor
张明远
陈立鹏
叶凡贺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tianjin Jinhang Computing Technology Research Institute
Original Assignee
Tianjin Jinhang Computing Technology Research Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tianjin Jinhang Computing Technology Research Institute filed Critical Tianjin Jinhang Computing Technology Research Institute
Priority to CN202311502537.3A priority Critical patent/CN117553834A/zh
Publication of CN117553834A publication Critical patent/CN117553834A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
    • G01D5/00Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable
    • G01D5/26Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light
    • G01D5/32Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light with attenuation or whole or partial obturation of beams of light
    • G01D5/34Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light with attenuation or whole or partial obturation of beams of light the beams of light being detected by photocells
    • G01D5/347Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light with attenuation or whole or partial obturation of beams of light the beams of light being detected by photocells using displacement encoding scales

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Optical Communication System (AREA)

Abstract

本申请公开了一种基于SSI协议的光电编码器数据读取方法、系统及设备,属于通信技术领域。所述数据读取方法包括如下步骤:进入数据读取主循环,打开使能SPI中断;向所述光电编码器发出第一时钟信号,并触发SPI中断;基于所述数据读取主循环提供的所述第一时钟信号,获取由所述光电编码器反馈的对于所述第一时钟信号的圈数信息,并发送第二时钟信号;关闭所述SPI中断,继续获取由所述光电编码器反馈的对应于所述第二时钟信号的所述单圈位置信息。该方法解决了SPI模块无法读取多圈数高精度的光电编码器位置数据的问题,同时又具备读取速度快、成本低、占用资源少、适用范围广等优点。

Description

基于SSI协议的光电编码器数据读取方法、系统及设备
技术领域
本公开一般涉及数据传输技术领域,具体涉及基于SSI协议的光电编码器数据读取方法。
背景技术
随着伺服控制技术的不断提高,工业控制领域对高精度测量仪器提出了更高的要求。光电编码器作为常用的位置传感器,其控制精度高达25bit甚至32bit。光电编码器的数据输出方式有并行与串行两种,而串行方式又分为同步串行(Synchronous SerialInterface,SSI)与异步串行。由于SSI方式具有更快的数据读取速度,因此大多光电编码器采用SSI协议与数据收发系统进行数据交换。
在目前的数据读取技术中,一般采用的方案是利用处理器的PWM模块或IO口模拟SSI协议通信过程中的时钟信号,这样的模拟效果较差,且处理器资源占用率高。一般处理器本身都具有同步串行总线接口(Serial Peripheral Interface,SPI),通信协议与SSI总线类似,但其数据宽度仅为16bit,对于多圈数高精度的光电编码器无法直接连接使用。因此,本发明提出一种基于SSI协议的光电编码器数据读取方法用于解决上述问题。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种可以读取速度快、成本低、占用资源少、适用范围广的基于SSI协议的光电编码器数据读取方法、系统及设备。
第一方面,本申请提供一种基于SSI协议的光电编码器数据读取方法,所述数据读取方法应用于处理器,所述处理器通过串行外设接口SPI总线与光电编码器进行连接;所述数据读取方法包括如下步骤:
进入数据读取主循环,打开使能SPI中断;
向所述光电编码器发出第一时钟信号,并触发SPI中断;
基于所述数据读取主循环提供的所述第一时钟信号,获取由所述光电编码器反馈的对于所述第一时钟信号的圈数信息,并发送第二时钟信号;所述第一时钟信号和所述第二时钟信号用于驱动所述光电编码器反馈相应数据信息;所述数据信息至少包括:所述圈数信息和单圈位置信息;
关闭所述SPI中断,继续获取由所述光电编码器反馈的对应于所述第二时钟信号的所述单圈位置信息,所述单圈位置信息与所述圈数信息共同形成对应于该所述光电编码器的多圈位置信息。
根据本申请实施例提供的技术方案,所述多圈位置信息的形式为格雷码形式;
所述多圈位置信息形成之后,还包括:
将所述多圈位置信息转化为二进制编码形式。
根据本申请实施例提供的技术方案,所述多圈位置信息为由所述圈数信息和所述单圈位置信息共同构成的25比特位置数字信号;
所述25比特位置数字信号中前12位对应于所述圈数信息,其余所述13位对应于所述单圈位置信息;
所述第一时钟信号具有12个脉冲,用于获取所述圈数信息;
所述第二时钟信号具有13个脉冲,用于获取所述单圈位置信息。
根据本申请实施例提供的技术方案,进入数据读取主循环之前,还包括:
初始化配置SPI中断并设定所述数据读取主循环的运行周期。
根据本申请实施例提供的技术方案,所述关闭所述SPI中断信号之后,还包括:
返回至所述数据读取主循环;
所述继续获取由所述光电编码器反馈的对应于所述第二时钟信号的单圈位置信息,包括:在所述数据读取主循环中继续接收由所述光电编码器反馈的对应于所述第二时钟信号的单圈位置信息。
根据本申请实施例提供的技术方案,基于所述数据读取主循环提供的所述第一时钟信号,获取由所述光电编码器反馈的对于所述第一时钟信号的圈数信息,包括:
根据所述第一时钟信号,调用接收函数;
由所述接收函数接收所述光电编码器发出的对于所述第一时钟信号的圈数信息。
第二方面,本申请提供一种基于SSI协议的光电编码器数据读取系统,所述数据读取系统包括:
处理器模块,所述处理器模块具有SPI单元;所述处理器模块的第一引脚作为时钟输出,其第二引脚作为数据输入;
数据传输模块,所述数据传输模块具有第一输出端口、第一输入端口和数据传输端口;所述数据传输模块用于将所述处理器模块发出的时钟信号转化为差分信号,输出至所述光电编码器中;
所述第一输出端口与所述第一引脚相连接;所述第一输入端口与所述第二引脚相连接;所述数据传输端口与所述光电编码器相连接,用于发出对应的差分信号以及接收由所述光电编码器反馈的对应于所述时钟信号的位置信息。
第三方面,本申请提供一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的基于SSI协议的光电编码器数据读取方法的步骤。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质有计算机程序,所述计算机程序被处理器执行时实现上述的基于SSI协议的光电编码器数据读取方法的步骤。
综上所述,本技术方案具体地公开了一种基于SSI协议的光电编码器数据读取方法、系统及设备。其中,所述数据读取方法应用于处理器,所述处理器通过串行外设接口SPI总线与光电编码器进行连接;所述数据读取方法包括如下步骤:进入数据读取主循环,打开使能SPI中断;向所述光电编码器发出第一时钟信号,并触发SPI中断;基于所述数据读取主循环提供的所述第一时钟信号,获取由所述光电编码器反馈的对于所述第一时钟信号的圈数信息,并发送第二时钟信号;关闭所述SPI中断,继续获取由所述光电编码器反馈的对应于所述第二时钟信号的单圈位置信息,所述单圈位置信息与所述圈数信息共同形成对应于该所述光电编码器的多圈位置信息。
现有数据读取技术中,利用处理器的PWM模块或IO口模拟SSI协议通信过程中的时钟信号,这样的模拟效果较差,且处理器资源占用率高。而利用一般处理器本身具有的SPI模块(通信协议与SSI总线类似),但其数据宽度仅为16bit,对于多圈数高精度的光电编码器无法直接连接使用。本申请利用SPI中断信号在数据读取主循环中分两次读取数据,每次读取数据宽度均小于16bit。该方法解决了SPI模块无法读取多圈数高精度的光电编码器位置数据的问题,同时又具备读取速度快、成本低、占用资源少、适用范围广等优点。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为一种基于SSI协议的光电编码器数据读取方法的流程示意图。
图2为一种基于SSI协议的光电编码器数据读取系统的结构示意图。
图3为一种终端设备的原理框图。
图中标号:100、处理器;200、隔离芯片;300、转换芯片;500、终端设备;501、CPU;502、ROM;503、RAM;504、总线;505、I/O接口;506、输入部分;507、输出部分;508、存储部分;509、通信部分;510、驱动器;511、可拆卸介质。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
实施例1
由于在目前的数据读取技术中,一般采用的方案是利用处理器的PWM模块或IO口模拟SSI协议通信过程中的时钟信号,这样的模拟效果较差,且处理器资源占用率高。一般处理器本身都具有SPI,通信协议与SSI总线类似,但其数据宽度仅为16bit,对于多圈数高精度的光电编码器无法直接连接使用。本申请中为了接收高精度光电编码器的25bit绝对位置数字信号,将SPI分两次读取数据,每次读取13bit即可,因此使得SPI模块可以读取多圈数高精度的光电编码器位置数据,同时又具备读取速度快、成本低、占用资源少、适用范围广等优点。
在本实例中采用的处理器型号为TMS320F28335处理器,开发环境为CCS3.3,位置反馈信号采用光电编码器型号为EQN425SSI41。该光电编码器采用SSI同步串口通信,标准数据格式为25位,前12位为圈数,后13位为位置信息。
具体地,请参考图1所示的本实施例提供的一种基于SSI协议的光电编码器数据读取方法的流程示意图,所述数据读取方法包括如下步骤:
S100:进入,打开使能SPI中断;
此处,数据读取循环主循环是指进入获取光电编码器的绝对位置数字信号的循环,而打开SPI中断使能可以使得后续SPI中断顺利触发。
S200:向所述光电编码器发出第一时钟信号,并触发SPI中断;
由于该光电编码器采用SSI同步串口通信,标准数据格式为25位;而SPI模块所能采集到的数据宽度为16比特,所以需要发出SPI中断,分多次进行数据读取;具体地,SPI中断是指共享外设中断,也就是通常所说的中断;通过触发SPI中断相比于在数据读取主循环中进行数据读取会占用更少的处理器资源,同时也会加快对于数据的读取。例如,在数据读取主循环中发送一个时钟信号,随后数据读取主循环会对该信号查询判定有效性等动作,判断完成后再发送下一时钟信号;而利用SPI中断,在数据读取主循环中发送一个时钟信号后,处理器会响应这个中断信号,随后利用相应接收函数以及外设寄存器快速完成对应于该时钟信号的数据采集,不会一直占用处理器资源同时读取速度也相对较快。
S300:基于所述数据读取主循环提供的所述第一时钟信号,获取由所述光电编码器反馈的对于所述第一时钟信号的圈数信息,并发送第二时钟信号;所述第一时钟信号和所述第二时钟信号用于驱动所述光电编码器反馈相应数据信息;所述数据信息至少包括:所述圈数信息和单圈位置信息;
上述步骤S300具体包括:
步骤一、根据所述第一时钟信号,调用接收函数;
步骤二、由所述接收函数接收所述光电编码器发出的对于所述第一时钟信号的圈数信息。
其中,所述多圈位置信息为由所述圈数信息和所述单圈位置信息共同构成的25比特位置数字信号;所述25比特位置数字信号中前12位对应于所述圈数信息,其余所述13位对应于所述单圈位置信息;
所述第一时钟信号具有12个脉冲,用于获取所述圈数信息;
所述第二时钟信号具有13个脉冲,用于获取所述单圈位置信息。
在实际的应用过程中,在时钟信号驱动下,光电编码器的位置信息通过DATA+与DATA-输入到相应的转换芯片,再经过隔离后输入到处理器的相应引脚处。
需要注意的是,对处理器的SPI模块进行配置。根据SSI协议可知,非工作状态时,SSI接口时钟线和数据线保持高电平,在时钟信号下降沿锁存当前位置值,随后锁存的数据在时钟的上升沿传出,当最后一个数据传输后,时钟线和数据线被拉高,传输完毕。为了与SSI时序对应起来,在处理器中将SPI时钟配置为“有相位延迟的下降沿”模式,即SPI在时钟下降沿接收数据。因为SPI读到的第一位数据是无效的,所以为了接收25bit绝对位置数字信号,SPI需要分两次读取数据,每次读取13bit即可,但由于第一数据是无效的,所以第一时钟信号在配置“有相位延迟的下降沿”模式下,通过12个脉冲即可获取所述圈数信息。
在实际运行中,进入数据读取主循环后,使能SPI中断会通过向SPITXBUF寄存器赋值发送同步第一时钟信号,进而触发SPI中断,然后在接收函数(SPI中断函数)中接收与第一时钟信号的圈数信息,即12bit圈数信息,随后会再次通过向SPITXBUF寄存器赋值发送同步第二时钟信号,用于再次获取余下多圈位置信息。
S400:关闭所述SPI中断,继续获取由所述光电编码器反馈的对应于所述第二时钟信号的所述单圈位置信息,所述单圈位置信息与所述圈数信息共同形成对应于该所述光电编码器的多圈位置信息。
具体地,在所述关闭所述SPI中断信号之后,还包括:
返回至所述数据读取主循环,此时所述数据读取主循环为初始时发出第一时钟信号的数据读取主循环;
相应地,所述继续获取由所述光电编码器反馈的对应于所述第二时钟信号的单圈位置信息,包括:在所述数据读取主循环中继续接收由所述光电编码器反馈的对应于所述第二时钟信号的单圈位置信息。
综上所述,关闭SPI中断后,最后在数据读取主循环中接收13bit单圈位置信息,该单圈位置信息与圈数信息共同组成完整的多圈位置信息,两次数据采集并非分成单独的两次数据采集而是一个数据读取主循环中即可完成,进而极大地提高了数据读取的速度。
为了使得一个数据读取主循环可以完成两个数据读取,所以在步骤S100:进入数据读取主循环中,触发SPI中断信号之前,还包括:
初始化配置SPI中断并设定所述数据读取主循环的运行周期。
其中,初始化配置SPI中断用于确保在SPI中断信号发出后,可以对应获取光电编码器反馈的圈数信息,而主循环的运行周期可选为100us,具体不进行特殊限定。
在一优选实施例中,通过SPI接口接收到的25bit位置数字信号为格雷码形式,必须要转换为二进制编码后才能计算位置角度值。所以,在所述多圈位置信息形成之后,还包括如下步骤:
步骤一、将所述多圈位置信息转化为二进制编码形式。
具体地,格雷码又称循环二进制码,在该编码方式中,任意两个相邻的数之间转换时,只有一个数位发生变化,可以大大减少由一个状态到下一个状态时的逻辑错误,具有较好的抗干扰性。二进制编码的最高位与格雷码最高位相同,从高位到低位,每一位二进制编码都是其左边一位经过转换后的二进制编码与该位所对应的格雷码进行异或运算后所得结果,本申请在软件中利用移位操作、位异或运算以实现编码方式的转换。
实施例2
如图2所示,本实施例提供一种基于SSI协议的光电编码器数据读取系统,所述数据读取系统包括:
处理器模块100,所述处理器模块100具有SPI单元;所述处理器模块100的第一引脚作为时钟输出,其第二引脚作为数据输入;
数据传输模块,所述数据传输模块具有第一输出端口、第一输入端口和数据传输端口;所述数据传输模块用于将所述处理器模块发出的时钟信号转化为差分信号,输出至所述光电编码器中;
所述第一输出端口与所述第一引脚相连接;所述第一输入端口与所述第二引脚相连接;所述数据传输端口与所述光电编码器相连接,用于发出对应的差分信号以及接收由所述光电编码器反馈的对应于所述时钟信号的位置信息。
具体地,所述数据传输模块至少包括:隔离芯片200、转换芯片300;其中,隔离芯片200用于降低数据传输过程中的干扰信号,转换芯片300用于将相应的时钟信号转换为光电编码器可用的差分信号。
其中,数据读取系统采用的处理器型号仍为TMS320F28335,其SPICLKA引脚为第一引脚,作为时钟输出;其SPISOMIA引脚为第二引脚,作为数据输入;隔离芯片的型号选为ISO7221MD,转换芯片的型号选为MAX490。
随着伺服控制技术的不断提高,工业控制领域对高精度测量仪器提出了更高的要求。光电编码器作为常用的位置传感器,其控制精度高达25bit甚至32bit。光电编码器的数据输出方式有并行与串行两种,而串行方式又分为同步串行(SSI)与异步串行。由于SSI方式具有更快的数据读取速度,因此大多光电编码器采用SSI协议与数据收发系统进行数据交换。
基于上述背景,该数据读取系统原理如下:采用TMS320F28335处理器的SPICLKA引脚作为时钟输出,即第一时钟信号和第二时钟信号会由处理器的第一引脚发出经过隔离芯片ISO7221MD,再经过MAX490芯片转换为光电编码器可用的差分信号,最后由光电编码器进行接收该差分信号。在相应时钟信号的驱动下,光电编码器的位置信息通过DATA+与DATA-输入到MAX490转换芯片中,再经过隔离芯片的隔离后输入到TMS320F28335处理器的SPISOMIA引脚,完成本次数据读取任务。
实施例3
一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如实施例1所述的一种基于SSI协议的光电编码器数据读取方法的步骤。
在本实施例中,如图3所示,终端设备500包括CPU(中央处理单元)501,其可以根据存储在ROM(只读存储器)502中的程序或者从存储部分加载到RAM(随机访问存储器)503中的程序而执行各种适当的动作和处理。在RAM503中,还存储有系统操作所需的各种程序和数据。CPU501、ROM502以及RAM503通过总线504彼此相连。I/O(输入/输出)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本发明的实施例,上文参考流程示意图1描述的过程可以被实现为计算机软件程序。例如,本发明的实施例3包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分从网络上被下载和安装,和/或从可拆卸介质被安装。在该计算机程序被中央处理单元(CPU)501执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)503、只读存储器(ROM)502、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。所描述的单元或模块也可以设置在处理器中,例如,可以描述为:一种处理器包括第一生成模块、获取模块、查找模块、第二生成模块及合并模块。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定,例如,获取模块还可以被描述为“用于在该基础表中获取多个待探测实例的获取模块”。
实施例4
本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如上述实施例中所述的一种基于SSI协议的光电编码器数据读取方法。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (9)

1.一种基于SSI协议的光电编码器数据读取方法,其特征在于,所述数据读取方法应用于处理器,所述处理器通过串行外设接口SPI总线与光电编码器进行连接;所述数据读取方法包括如下步骤:
进入数据读取主循环,打开使能SPI中断;
向所述光电编码器发出第一时钟信号,并触发SPI中断;
基于所述数据读取主循环提供的所述第一时钟信号,获取由所述光电编码器反馈的对于所述第一时钟信号的圈数信息,并发送第二时钟信号;所述第一时钟信号和所述第二时钟信号用于驱动所述光电编码器反馈相应数据信息;所述数据信息至少包括:所述圈数信息和单圈位置信息;
关闭所述SPI中断,继续获取由所述光电编码器反馈的对应于所述第二时钟信号的所述单圈位置信息,所述单圈位置信息与所述圈数信息共同形成对应于该所述光电编码器的多圈位置信息。
2.根据权利要求1所述的基于SSI协议的光电编码器数据读取方法,其特征在于,所述多圈位置信息的形式为格雷码形式;
所述多圈位置信息形成之后,还包括:
将所述多圈位置信息转化为二进制编码形式。
3.根据权利要求2所述的基于SSI协议的光电编码器数据读取方法,其特征在于,所述多圈位置信息为由所述圈数信息和所述单圈位置信息共同构成的25比特位置数字信号;
所述25比特位置数字信号中前12位对应于所述圈数信息,其余所述13位对应于所述单圈位置信息;
所述第一时钟信号具有12个脉冲,用于获取所述圈数信息;
所述第二时钟信号具有13个脉冲,用于获取所述单圈位置信息。
4.根据权利要求3所述的基于SSI协议的光电编码器数据读取方法,其特征在于,进入数据读取主循环之前,还包括:
初始化配置SPI中断并设定所述数据读取主循环的运行周期。
5.根据权利要求4所述的基于SSI协议的光电编码器数据读取方法,其特征在于,所述关闭所述SPI中断信号之后,还包括:
返回至所述数据读取主循环;
所述继续获取由所述光电编码器反馈的对应于所述第二时钟信号的单圈位置信息,包括:在所述数据读取主循环中继续接收由所述光电编码器反馈的对应于所述第二时钟信号的单圈位置信息。
6.根据权利要求4所述的基于SSI协议的光电编码器数据读取方法,其特征在于,基于所述数据读取主循环提供的所述第一时钟信号,获取由所述光电编码器反馈的对于所述第一时钟信号的圈数信息,包括:
根据所述第一时钟信号,调用接收函数;
由所述接收函数接收所述光电编码器发出的对于所述第一时钟信号的圈数信息。
7.一种基于SSI协议的光电编码器数据读取系统,其特征在于,所述数据读取系统包括:
处理器模块,所述处理器模块具有SPI单元;所述处理器模块的第一引脚作为时钟输出,其第二引脚作为数据输入;
数据传输模块,所述数据传输模块具有第一输出端口、第一输入端口和数据传输端口;所述数据传输模块用于将所述处理器模块发出的时钟信号转化为差分信号,输出至所述光电编码器中;
所述第一输出端口与所述第一引脚相连接;所述第一输入端口与所述第二引脚相连接;所述数据传输端口与所述光电编码器相连接,用于发出对应的差分信号以及接收由所述光电编码器反馈的对应于所述时钟信号的位置信息。
8.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述的一种基于SSI协议的光电编码器数据读取方法的步骤。
9.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-6任一项所述的基于SSI协议的光电编码器数据读取方法的步骤。
CN202311502537.3A 2023-11-13 2023-11-13 基于ssi协议的光电编码器数据读取方法、系统及设备 Pending CN117553834A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311502537.3A CN117553834A (zh) 2023-11-13 2023-11-13 基于ssi协议的光电编码器数据读取方法、系统及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311502537.3A CN117553834A (zh) 2023-11-13 2023-11-13 基于ssi协议的光电编码器数据读取方法、系统及设备

Publications (1)

Publication Number Publication Date
CN117553834A true CN117553834A (zh) 2024-02-13

Family

ID=89812098

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311502537.3A Pending CN117553834A (zh) 2023-11-13 2023-11-13 基于ssi协议的光电编码器数据读取方法、系统及设备

Country Status (1)

Country Link
CN (1) CN117553834A (zh)

Similar Documents

Publication Publication Date Title
CN102904550A (zh) 基于ad9959的多通道同步波形发生器
CN112765082B (zh) 多主机仲裁方法、装置和可读存储介质
TW201640359A (zh) N基底數字至實體線狀態符號翻譯方法
CN102073521B (zh) 一种插卡式机器软件升级系统及软件升级方法
CN113672030B (zh) 数据传输速率发生器和相关装置及方法
US20210150328A1 (en) Hierarchical Hybrid Network on Chip Architecture for Compute-in-memory Probabilistic Machine Learning Accelerator
US6332173B2 (en) UART automatic parity support for frames with address bits
CN110780650B (zh) 一种通信总线协议转换方法及系统
CN117553834A (zh) 基于ssi协议的光电编码器数据读取方法、系统及设备
CN117148819A (zh) 一种宇航产品在轨仿真测试平台
CN116954192A (zh) 总线控制器的功能测试方法、系统、装置及可读存储介质
CN110401586B (zh) 一种总线通信方法、装置、设备及可读存储介质
CN214591389U (zh) 一种可扩展的认知无线电系统
CN102541797B (zh) 一种支持多种主机接口的实现方法及其系统
WO2022100148A1 (zh) 一种背板通讯设备及其控制方法、存储介质
CN112327707B (zh) 伺服驱动器的时序控制方法、装置和系统
CN114756498A (zh) 芯片、主控芯片、芯片通信方法、芯片阵列及相关设备
CN110971342B (zh) Mipi信号编码方法、装置、移动设备、及系统
JP3252229B2 (ja) デジタル・データ送信システム
CN114461012A (zh) 一种嵌入式系统不同时钟域运行时戳获取方法及装置
US10003456B2 (en) Soundwire XL turnaround signaling
CN108804362A (zh) 串口批量数据传输方法、装置及存储介质
US20150168991A1 (en) CCIe RECEIVER LOGIC REGISTER WRITE ONLY WITH RECEIVER CLOCK
CN116132552B (zh) 一种基于异步握手协议的跨时钟域通信传输方法及系统
CN115765743B (zh) 基于zynq的多通道adc同步采集的装置及方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination