基于SPI总线接收SSI接口编码器数据的系统及传输方法技术方案

技术编号:35736382 阅读:14 留言:0更新日期:2022-11-26 18:38
本发明专利技术涉及一种基于SPI总线接收SSI接口编码器数据的系统及传输方法,SSI接口编码器通过一个具有数据收发功能的422芯片与STM32上具有SPI复用功能的管脚相连:编码器的Clock+、Clock

【技术实现步骤摘要】
基于SPI总线接收SSI接口编码器数据的系统及传输方法


[0001]本专利技术属于高速同步数据通信领域,涉及一种基于SPI总线接收SSI接口编码器数据的系统及传输方法,具体涉及一种使用STM32微控制器SPI总线接收SSI接口编码器数据的方法。

技术介绍

[0002]随着自动化控制系统的快速发展,高精密光电产品对测角位置传感器的精度要求也越来越高,目前常用的高精度测量角位置传感器多为绝对值角度编码器,它有并行和串行两种输出方式,其中同步串行接口(Synchronous Serial Interface,简称SSI)是高精度绝对值编码器中一种比较常用的接口方式,采用主机主动式读出方式,即在主设备的同步时钟控制下,从最高有效位(MSB)开始同步数据传输。
[0003]目前常用读取SSI接口编码器有两种方式,方式一、使用CPLD及其他的电子元器件组成的硬件电路实现数据伴随读数;方式二、利用STM32微控制器的IO引脚模拟CLK脉冲读取角度数据。然而两种方法都有各自不可弥补的缺陷,例如,方式一需要在原有硬件电路基础上增加CPLD及外围电路,对尺寸要求严格的PCB难以实现;SSI的传输速率一般在0.5

2MHZ的范围内,微控制器作为伴随读数时,要求微控制器的速率远远大于2MHZ才能保证信号的有效跟踪,方式二使用STM32的IO模拟高速CLK脉冲,极大的占用了微控制器资源。本专利技术提出的一种基于SPI总线接收SSI接口编码器的方法,利用STM32的SPI(Serial Peripheral Interface)总线实现同步数据的读取,既不需要增加额外硬件电路,也不会占用太多MCU的资源,是一种既经济又实用的方法。

技术实现思路

[0004]要解决的技术问题
[0005]为了避免现有技术的不足之处,本专利技术提出一种基于SPI总线接收SSI接口编码器数据的系统及传输方法,通过STM32自带的SPI总线与具有SSI接口的编码器进行数据通信,实现同步数据读取,获得编码器的角度信息。
[0006]技术方案
[0007]一种基于SPI总线接收SSI接口编码器数据的系统,其特征在于包括SSI接口编码器、数据收发422芯片和STM32微控制器;连接关系为:编码器的Clock+、Clock

分别接在422的T+、T

上,编码器的Data+、Data

接在422的R+、R

上,422上的发送T与STM32的SPI时钟信号SCK相连接;422上的接收R与STM32的SPI主设备输入MISO相连接,微控制器的时钟信号SCK经422芯片送到编码器中,在同步时钟脉冲的驱动下,编码器的角度信息通过MISO一位一位传输到微控制器中,高位数据在前,低位数据在后。
[0008]所述Clock时钟脉冲T的周期在0.5us

2us,单稳态触发器t1等于T/2,Data数据输出延时t2等于90ns,位置更新间隔时间t3=2ms

24*T。
[0009]一种利用所述基于SPI总线接收SSI接口编码器数据系统的传输方法,其特征在
于:PA5、PA6为SPI 1复用功能模式,SPI的通信方向为双线全双工,SPI的通信模式设置为主机模式,步骤如下:
[0010]步骤1:在空闲阶段不发生数据传输的时候时钟和数据都保持高电位;
[0011]步骤2:在第一个脉冲的下降沿触发编码器载入发送数据;
[0012]步骤3:在每一个时钟脉冲的上升沿编码器送出数据,数据是以格雷码一位一位进行传输的,数据的高位在前,低位在后;
[0013]步骤4:当传送完所有的位数以后,时钟和数据均回到高电平。
[0014]所述SPI设置成通信3模式,即时钟极性CPOL为1,时钟相位CPHA为1;SSI的通信时钟频率要求在0.5

2MHZ范围内。
[0015]所述SPI设置成通信3模式,即时钟极性CPOL为1,时钟相位CPHA为1。
[0016]所述SSI的通信时钟频率要求在0.5

2MHZ范围内。
[0017]所述高电平被拉低时,SPI的SCK信号线上开始产生24个占空比为50%、频率为1.3MHZ的时钟脉冲。
[0018]有益效果
[0019]本专利技术提出的一种基于SPI总线接收SSI接口编码器数据的系统及传输方法,涉及一种使用STM32微控制器SPI总线接收SSI接口编码器数据的方法,所述SSI接口编码器通过一个具有数据收发功能的422芯片与STM32上具有SPI复用功能的管脚相连,具体的,编码器的Clock+、Clock

分别接在422的T+、T

上,编码器的Data+、Data

接在422的R+、R

上,422上的发送T与STM32的SPI时钟信号SCK相连接,422上的接收R与STM32的SPI主设备输入MISO相连接,微控制器的时钟信号SCK经422芯片送到编码器中,在同步时钟脉冲的驱动下,编码器的角度信息通过MISO一位一位传输到微控制器中,高位数据在前,低位数据在后。本专利技术的优势在于:利用STM32微控制器的SPI总线实现同步数据的读取,既不需要增加额外硬件电路,也不会占用太多MCU的资源,是一种既经济又实用的方法。
附图说明
[0020]图1是STM32与SSI接口的编码器之间的硬件电路原理图;
[0021]图2是SSI接口编码器信号流的格式图
具体实施方式
[0022]现结合实施例、附图对本专利技术作进一步描述:
[0023]为了实现上述目的,本专利技术采用了如下技术方案:
[0024]一种基于SPI总线接收SSI接口编码器的方法,所述SSI接口编码器通过一个具有数据收发功能的422芯片与STM32上具有SPI复用功能的管脚相连,具体的,编码器的Clock+、Clock

分别接在422的T+、T

上,编码器的Data+、Data

接在422的R+、R

上,422上的发送T与STM32的SPI时钟信号SCK(Serial Clock)相连接,422上的接收R与STM32的SPI主设备输入MISO(Master Input,Slave Output)相连接,硬件电路原理图见图1。
[0025]所述SSI采用同步数据传输的方式,具体通讯格式见图2,在空闲阶段不发生数据传输的时候时钟和数据都保持高电位,在第一个脉冲的下降沿触发编码器载入发送数据,然后每一个时钟脉冲的上升沿编码器送出数据,数据是以格雷码一位一位进行传输的,数
据的高位在前,低位在后,当传送完所有的位数以后,时钟和数据均回到高电平。图2中Clock时钟脉冲T的周期要求在0.5us

2us范围内,单稳态触发器t1等本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于SPI总线接收SSI接口编码器数据的系统,其特征在于包括SSI接口编码器、数据收发422芯片和STM32微控制器;连接关系为:编码器的Clock+、Clock

分别接在422的T+、T

上,编码器的Data+、Data

接在422的R+、R

上,422上的发送T与STM32的SPI时钟信号SCK相连接;422上的接收R与STM32的SPI主设备输入MISO相连接,微控制器的时钟信号SCK经422芯片送到编码器中,在同步时钟脉冲的驱动下,编码器的角度信息通过MISO一位一位传输到微控制器中,高位数据在前,低位数据在后。2.根据权利要求1所述的基于SPI总线接收SSI接口编码器数据的系统,其特征在于:所述Clock时钟脉冲T的周期在0.5us

2us,单稳态触发器t1等于T/2,Data数据输出延时t2等于90ns,位置更新间隔时间t3=2ms

24*T。3.一种利用权利要求1或2所述基于SPI总线接收SSI接口编码器数...

【专利技术属性】
技术研发人员:王亮张红洛高业灿刘念王嘉仪
申请(专利权)人:中国航空工业集团公司洛阳电光设备研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1