【技术实现步骤摘要】
本专利技术涉及串口通信领域,更具体地说,涉及一种用于适用于电机控制器的串口通讯协议。
技术介绍
通用串行通讯系统由于其接口简单,扩展灵活 ,从而被广泛应用于各类单片机系统中,但由于单片本身的工作频率一般较低,处理速度较慢,在高速通讯的过程中,往往会出现通讯不可靠的情况,如果通讯协议过于简单,无法保证多字节数据传输以及数据的准确性。为了解决这一问题,目前所存在的串口通讯协议,通常会通过增加接收端和发送端的协议和任务的复杂度来提高稳定性,而过于复杂的通讯协议,必定要占用更多的微处理器的处理时间和存储单元,使得为了运行传统的串口通讯协议,需要选用相对高端的微处理器,或者添加用于通信的辅助微处理器,从而提升了串口通讯系统的制造成本。且在传统的通讯协议中,很难考虑到电机控制器这类产品中微处理器的特点,导致现成的协议无法适用于这类产品中的微处理器。
技术实现思路
本专利技术的目的是提供一种协议内容精简合理,采用“点对点”和“点对多”的通信拓扑模式,且可尽最大可能降低电机控制器中微处理器在通讯上的任务量,同时适用于多种通讯物理层的控制器的串口通讯协议。本专利技术是采取以下技术方案实现的包括如下步骤I)主机方面(A)主机准备应用层数据;( B )主机向从机发送数据;(C)主机等待从机的应答信号;若主机接收到的信号来源为非期望从机,则主机重新发送数据;若主机接收来自期望从机的应答信号时产生帧间超时或帧内超时,则主机重新发送数据;若主机接收到的来自期望从机的应答信号为“NAK”,则主机重新发送数据;若主机接收到的来自期望从机的应答信号为“ACK”,则完成一次操作;2)从机方面(a)从机 ...
【技术保护点】
一种控制器串口通讯协议,其特征在于包括如下步骤:1)主机方面:(A)主机准备应用层数据;(B)主机向从机发送数据;(C)主机等待从机的应答信号;若主机接收到的信号来源为非期望从机,则主机重新发送数据;若主机接收来自期望从机的应答信号时产生帧间超时或帧内超时,则主机重新发送数据;若主机接收到的来自期望从机的应答信号为“NAK”,则主机重新发送数据;若主机接收到的来自期望从机的应答信号为“ACK”,则完成一次操作;2)从机方面:(a)从机接收主机发送的数据;(b)若从机忙,不处理数据,不应答,重新接收;若接收到的数据为非本机ID数据,不应答,重新接收;若从机接收本机ID数据时产生帧内超时,则清空接收缓存,重新接收;若从机接收到的本机ID数据校验错误,则发送“NAK”应答信号给主机;若从机接收到的本机ID数据校验正确,则从机处理应用层数据,并发送“ACK”应答信号给主机,完成一次操作。
【技术特征摘要】
1.一种控制器串口通讯协议,其特征在于包括如下步骤 O主机方面 (A)主机准备应用层数据; (B)主机向从机发送数据; (C)主机等待从机的应答信号;若主机接收到的信号来源为非期望从机,则主机重新发送数据;若主机接收来自期望从机的应答信号时产生帧间超时或帧内超时,则主机重新发送数据;若主机接收到的来自期望从机的应答信号为“NAK”,则主机重新发送数据;若主机接收到的来自期望从机的应答信号为“ACK”,则完成一次操作; 2)从机方面 (a)从机接收主机发送的数据; (b)若从机忙,不处理数据,不应答,重新接收;若接收到的数据为非本机ID数据,不应答,重新接收;若从机接收本机ID数据时产生帧内超时,则清空接收缓存,重新接收;若从机接收到的本机ID数据校验错误,则发送“NAK”应答信号给主机;若从机接收到的本机ID数据校验正确,则从机处理应用层数据,并发送“ACK”应答信号给主机,完成一次操作。2.根据权利要求I所述的控制器串口通讯协议,其特征在于所述主机和从机间的通信具有6种工作方式,分别为实施监控,写用户参数,读用户参数,读当前故障,读历史故障,清除历史故障;其中实时监控的工作方式在从机的存储区I中完成,写用户参数和读用户参数的工作方式在从机的存储区2中完成,读当前故障的工作方式在从机的存储区3中完成,读历史故障和清除历史故障的工作方式在从机的存储区4中完成;存储区I至存储区4为相互独立的4个存储区;6种工作方式的每一种工作方式都具有步骤(A)、(B) (C)以及步骤(a)、(b)、(c)的协议流程。3.根据权利要求I所述的控制器串口通讯协议,其特征在于所述主机和从机在完成数据的接收前,接收到的数据会先存在接收缓存中,在完成数据的发送前,发送的数据会先存在发送缓存中。4.根据权利要求I或权利要求3所述的控制器串口通讯协议,其特征在于主机和从机每一次重新接收数据前会将接收缓存中的数据清空;主机和从机每一次从新发送数据时,重新发送的数据会将发送缓存中的数据覆盖。5.根据权利要求I所述的控制器串口通讯协议,其特征在于所述帧间超时是指主机发送一个完整的数据帧后,接收从机的应答信号大于所设定的时间;帧内超时是指主机或从机在接收某个数据帧时,接收到首尾的两个字节之间的时间间隔大于所设定的时间。6.根据权利要求I所述的控制器串口通讯协议,其特征在于所述主机和从机之间发送的每一帧数据包含6个字节;字节I为参数1,字节2为参数2,字节3为参数3,字节4为参数4 ;字节5参数5 ;字节6为参数6。7.根据权利要求I或权利要求6所述的控制器串口通讯协议,其特征在于所述主机和从机之间通信的波特率为19200bps,主机和从机之间发送和接收的每一个字节前有一位起始位,字节后有终止位,故接收中断触发的最高频率为1920HZ。8.根据权利要求I或权利要求2或权利要求6所述的控制器串口通讯协议,其特征在于所述参数I为操作码,对应主机和从机进行串口通信的6种工作方式;参数2为操作数地址,且为偏移地址;参数3和参数4为操作数,参数5的高位为目标机ID,低位为校验状态信息,为表示数据校验正确的对应码或数据校验错误的对应码;参数6为校验信息,参数6为前5个参数之和,若加和后出现的溢出位,舍弃溢出位。9.根据权利要求I或权利要求2或权利要求6或权利要求8所述的控制器串口通讯协议,其特征在于 在实施监控的工作方式中,主机向从机发送参数I至参数6 ;参数I为实施监控的工作方式所对应的操作码;参数2为操作数所在的偏移地址;参数3和参数4为空,即为置O ;参数的5高位为从机ID,低位为空,即低位置O ;参数6为参数I至参数5之和; 从机接收到主机的数据后,向主机发送参数I至参数6 ;参数I为实施监控的工作方式所对应的操作码,参数2为操作数所在的偏移地址;参数3和参数4...
【专利技术属性】
技术研发人员:孙彦军,
申请(专利权)人:天津市松正电动汽车技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。