CN107748509A - 基于单片机收发控制的asi通信从机实施方法 - Google Patents
基于单片机收发控制的asi通信从机实施方法 Download PDFInfo
- Publication number
- CN107748509A CN107748509A CN201710855579.3A CN201710855579A CN107748509A CN 107748509 A CN107748509 A CN 107748509A CN 201710855579 A CN201710855579 A CN 201710855579A CN 107748509 A CN107748509 A CN 107748509A
- Authority
- CN
- China
- Prior art keywords
- chip microcomputer
- request message
- asi
- data
- received
- 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
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Communication Control (AREA)
Abstract
本发明公开了基于单片机收发控制的ASI通信从机实施方法,包括:单片机接收ASI总线信号传输系统传输的主站发来的请求报文信号;单片机对接收的请求报文信号进行接收处理,通过解码恢复出请求报文数据,按照ASI通信协议的要求进行帧校验,并基于请求报文数据进行相应的处理,生成应答报文数据;单片机对应答报文数据进行发送处理,通过编码得到对应于应答报文数据的应答报文信号,并将应答报文信号发送给所述ASI总线信号传输系统。本发明实现了用单片机替代传统的ASI专用从机芯片实现ASI通信从机的功能,并能精确地接收和发送ASI通信信号,在规定的时间内完成从机的响应。
Description
技术领域
本发明涉及一种ASI现场总线技术。
背景技术
ASI(actuator–sensor interface)是一种设备级的现场总线,它由西门子等一些低压电器公司提出,目的是在最底层的设备层为各个传感器、执行器和低压电器等提供统一的数字化接口。它是一种一主多从结构的总线协议,该协议已被纳入国标(GB/T 18858/IEC 62026)。
一般ASI从机的实施方式可分为两种:一种是带有ASI通信接口的智能传感器/执行器,在产品内部采用ASI从机专用芯片,加上一些外围芯片和E2PROM存储器就构成了一体式从机;另外一种是分离型结构,它由专门设计的ASI的I/O接口模块和普通的传感器/执行器构成,在I/O接口模块中带有从机专用电路,两者组合在一起成为分离型从站。
当前,国内相关产品的实施方法比较简单,大多数采用ASI专用芯片进行从站的开发。该方法一般用于开关量传感器,数据交换限定于从站4个DI输入、4个DO输出和4个P参数的开关量。而在ASI的标准行业应用中,有支持多比特流的要求,目前市场上还没有专门支持多比特流等复杂应用的专用芯片,只能通过上位机下发一系列的命令,控制不同的DI、DO和P参数的状态组合来实现多比特的传输,上位程序复杂。因此,采用ASI从机专用芯片进行开发,不利于复杂应用功能的产品开发,不利于自定义功能的实施,不利于提供全面的故障诊断等,总之产品开发实施方面不够全面和灵活。例如:很多产品需要购置手持编程面板或使用ASI主站才可设置从站站址,不能通过自有接口或自定义的通信接口进行设定,增加了使用的成本和繁琐程度;在超出单个ASI专用芯片支持的DI/DO点(最大各4点)的产品应用中,需采用多ASI专用从站芯片方案进行DI/DO点的扩展,需设计不同的硬件,增加了产品的开发成本和周期,并且提供的故障及诊断信息不够全面,诸如此类等等;基于以上,开发具有自主处理ASI协议的从机很有必要。
发明内容
本发明所要解决的技术问题在于提供一种基于单片机收发控制的ASI通信从机实施方法,其实现了用单片机替代传统的ASI专用从机芯片实现ASI通信从机的功能,并能精确地接收和发送ASI通信信号,在规定的时间内完成从机的响应。
本发明所采用的技术方案是:
基于单片机收发控制的ASI通信从机实施方法,包括:
单片机接收ASI总线信号传输系统传输的主站发来的请求报文信号;
单片机对接收的请求报文信号进行接收处理,通过解码恢复出请求报文数据,按照ASI通信协议的要求进行帧校验,并基于请求报文数据进行相应的处理,生成应答报文数据;
单片机对应答报文数据进行发送处理,通过编码得到对应于应答报文数据的应答报文信号,并将应答报文信号发送给所述ASI总线信号传输系统。
本发明至少具有以下优点和特点:
1、根据本发明的基于单片机收发控制的ASI通信从机实施方法通过对单片机内的定时器进行设置,可做到精确地接收和发送ASI通信信号,保证通信的正确性,还可保证较低的单片机的中央处理器的占用率,提高系统的可靠性;通过在接收到完整的一帧请求报文之前就对当前接收到的多个数据位进行解码并进行相应的处理,能够确保普通速度的单片机在规定的时间内完成从机的响应,保证通信的实时性;
2、根据本发明的基于单片机收发控制的ASI通信从机实施方法实现了ASI总线通信的“软核”处理,通过单片机软件实现各种从站的标准行规,替代传统采用ASI专用从机芯片的方式;
3、由于整个协议帧的接收和处理都是在单片机中完成,在硬件不变的条件下,只需要修改单片机的软件,便可以实现使用自定义接口修改从机站址的功能,增加产品应用的便捷性;也可实现“一卡多从”(1个通信卡,模拟多个从机站点)的应用功能,实现DI/DO的数量的扩展,实现更为详尽的故障诊断,达到节约成本,缩短开发周期的效果;同时通过修改单片机的软件,还可实现多种灵活复杂的自定义功能,达到高度灵活开发各种应用需求的效果。
附图说明
图1是根据本发明一实施例的基于单片机收发控制的ASI通信从机实施方法的流程示意图。
图2示出了根据本发明一实施例的单片机的原理框图。
图3示出了根据本发明一实施例的接收解码和发送编码的原理示意图。
图4是图3中的P部分的局部放大示意图,示出了根据本发明一实施例的接收解码的原理。
图5是图3中的Q部分的局部放大示意图,示出了根据本发明一实施例的发送编码的原理。
图6示出了发送编码的另一种实施方式的原理图。
图7至图9分别示出了三个阶段的接收处理的流程示意图。
图10示出了采用三个阶段接收请求报文的原理示意图。
图11示出了根据本发明具体应用实例中的T2定时器的工作流程。
图12示出了根据本发明具体应用实例中的第五定时器的工作流程。
图13示出了根据本发明具体应用实例中的T1定时器、T3定时器和T5定时器的工作原理。
具体实施方式
下面结合附图对本发明做出进一步说明。
ASI通信协议中规定,ASI通信的波特率为每个位的传输是6us左右。主机的请求报文具有14位信息,从机的应答报文具有7位信息,主机发送一帧请求报文后,从机必须在12~30us后响应主站请求,进行应答。
根据本发明一实施例的基于单片机收发控制的ASI通信从机实施方法,包括以下步骤:
单片机接收ASI总线信号传输系统传输的主站发来的请求报文信号;
单片机对接收的请求报文信号进行接收处理,通过解码恢复出请求报文数据,按照ASI通信协议的要求进行帧校验,并基于请求报文数据进行相应的处理,生成应答报文数据;
单片机对所述应答报文数据进行发送处理,通过编码得到对应于应答报文数据的应答报文信号,并将应答报文信号发送给所述ASI总线信号传输系统。
上述的请求报文信号和应答报文信号均为电压脉冲信号。上述的ASI总线信号传输系统包括传输线缆、调制电路和解调电路。ASI主机发送的请求报文根据内容类型来划分包括数据交换、写参数、地址分配、复位等多种类型,单片机按照ASI通信协议的要求,根据不同内容的请求报文进行相应的处理。比如说,ASI主机发送的请求报文是数据交换,那么作为从机的单片机就会将获得的测量数据写入应答报文中,并发送给主机。
ASI通信采用的是曼切斯特码编码传输数据,现有的解决曼切斯特码的解编码的方式有很多。较为常见的是采用曼切斯特码专用解码芯片方案,但是绝大多数于ASI专用芯片的码流规范存在一定差异,采用曼切斯特码专用解码芯片还会导致硬件成本的上升。采用FPGA实现曼切斯特码解编码的方案可以精准地实现接收和发送,但是该方案的开发周期较长,成本较高。
图2示出了根据本发明一实施例的单片机的原理框图。如图所示,根据本发明一实施例的基于单片机收发控制的ASI通信从机实施方法采用单片机1直接连接调制电路2和解调电路3,并在单片机1中实现ASI协议帧的接收、解码、帧校验、应用、编码和发送。其中,协议处理模块用于进行接收解码、发送编码、帧校验、ASI通信协议的应用处理,逻辑控制及状态机模块和通信接口的处理放置在后台进行,逻辑控制及状态机模块主要负责ASI通信协议的逻辑控制和状态机处理,通信接口用于与外部的传感器/执行器实现通信,并可实现通信板卡自定义接口的处理。
在软件实现曼切斯特码的解编码的同时,必须做到分别精确地测量请求报文信号和控制应答报文信号,并且保证回复的实时性(12~30us内完成),同时还需分配一定的时间处理自定义的通信接口任务。本实施例中,解码是通过单片机的定时器捕获ASI总线信号传输系统传输的请求报文信号,单片机记录所接收到的请求报文信号发生电平跳变时的定时器计数值,根据连续两次记录到的定时器计数值计算脉冲宽度,并根据所获得的脉冲宽度按照曼切斯特码的编码规则进行解码,如果所获得的脉冲宽度不符合曼切斯特码的编码规则,则丢弃接收到的请求报文信号。编码是通过单片机根据应答报文数据设定多个计数器比较值,在计数器的计数值达到计数器比较值时,使单片机的I/O引脚的电平发生翻转,从而得到对应于应答报文数据的应答报文信号。由于是采用定时器抓捕ASI通信信号,从而可实现ASI信号的精准测量,保证接收信号的准确性;同样采用定时器的计数作为基准,控制ASI通信信号的发送,确保回复信号脉宽精确,实现ASI信号的精准发送。以上接收和发送方法无需单片机的中央处理器处理,可大大降低中央处理器的占用率。
图3和图4示出了根据本发明一实施例的接收解码的原理,如图所示,使用在t1、t2、tn、tn+1等时刻抓捕的计数器值,可以算出第一个脉冲的宽度为t2-t1、第二个脉冲的宽度为t3-t2、第三个脉冲的宽度为t4-t3等,以此类推,通过分析这些采样值,便可准确获取传输内容,实现接收信号的精确测量,并判断出所获得的脉冲宽度是否符合曼切斯特码的编码规则。图3和图5示出了根据本发明一实施例的发送编码的原理。信号的发送控制通过参考定时器的计数值,当计数器累计到设定的计数器比较值时,翻转比较输出,同时更新下一时刻的计数器比较值,以此实现精准的信号发送。如图5所示,首先设定计数器比较值V1,当计数器计数到V1值时候,比较输出进行翻转,同时把计数器比较值设定为V2,当计数器计数到V2时刻,再次实现信号的翻转,以此类推,直至发送信号完毕,实现应答。其中V1、V2、V3…Vn的值根据应答信息进行相应递增;也可采用图6中所示的应答编码方式,该种方式只采用了V1和V2两个计数器比较值进行应答信息编码。
由于单片机的处理速度有限,只具有普通处理速度的单片机如果在主机命令接收完后,再进行曼切斯特码的解码、帧校验、ASI通信协议的应用处理、应答的编码及发送处理,那么从机将不能在主机暂停的时间内完成应答。为了克服这一问题,在本实施例中,结合ASI通信帧协议的特点,采用在每帧的固定点进行预处理的方式,提前对已接收的部分信息进行解码、帧校验、ASI通信协议的应用处理、编码,在主机命令接收完后,直接使用前面的预处理信息和请求报文结尾的少量处理信息便可决定应答的发送。此种方式即可保证通信应答的实时性,也能确保后台有足够的时间完成通信接口事务的处理,也能确保应答起始同请求报文帧尾的时间延迟相对固定。
具体而言,根据本发明一实施例的接收处理包括一次或多次阶段性接收处理和一次断帧接收处理;所述的阶段性接收处理是单片机在接收到完整的一帧请求报文之前、就对当前接收到的多个数据位进行解码,恢复出当前接收到的请求报文的多个数据位的数据,并按照ASI通信协议的要求,基于接收到的多个数据位的数据进行相应的处理;其中,单片机在至少已经接收到请求报文的8个数据位时启动第一次阶段性接收处理,在已经接受到请求报文的12个数据位时启动最后一次阶段性接收处理,在最后一次阶段性接收处理时单片机根据已经接收到的12个数据位的数据生成应答报文数据。所述的断帧接收处理是单片机已接收到完整的一帧请求报文后,按照ASI通信协议进行帧校验,判断单片机是否正确地接收到了请求报文并且是否需要针对请求报文进行应答,如果正确地接收到了请求报文并且需要应答就启动发送处理。
在一种优选的实施方式中,本申请将ASI处理分成三个阶段来完成,主要完成图2中所示的协议处理模块的功能。根据ASI的请求报文格式和应答报文格式的排列以及单片机的处理速度,设置第一阶段的接收处理在单片机接收到请求报文的第n个数据位时启动,其过程如图7所示;第二阶段的接收处理在单片机接收到请求报文的第12个数据位时启动,其过程如图8所示;第三阶段的接收处理即为断帧接收处理,当已经接收到完整的一帧请求报文后,延迟一个位的等待时间,如果无后续数据,断帧接收处理将会被激活,其处理流程如图9所示。如果采用处理速度足够快的单片机,也可以不采用三段式处理方式,采用一次阶段性接收处理和一次断帧接收处理,或者是在接收到完整的一帧请求报文后再进行接收解码。
请结合图7至图9所示,上述的具有三个阶段的接收处理包括以下步骤:
用单片机的第一定时器的引脚接收ASI总线信号传输系统传输的请求报文信号,第一定时器被设置成捕获模式,在第一定时器接收到的请求报文信号发生电平跳变时记录第一定时器的计数值;
单片机在第二定时器的计数值达到预定的时刻1时,判断解码标志是否在第一阶段,如果解码标志在第一阶段,则对已经接收到的n个数据位进行解码,恢复出请求报文的n个数据位的数据,并按照ASI通信协议的要求,基于接收到的n个数据位的数据进行相应的处理,如果解码标志不在第一阶段,则结束本次的接收处理;所述预定的时刻1与单片机接收到请求报文的第n个数据位的时刻相对应,8≤n≤10;优选地,n=8,即单片机在接收到请求报文的第8个数据位对已经接收到的8个数据位进行解码,恢复出请求报文的8个数据位的数据,并按照ASI通信协议的要求,基于接收到的8个数据位的数据进行相应的处理,相关原理请结合参考图10所示的内容。从图10中可以看出,请求报文共有14个数据位,应答报文共有7个数据位。单片机基于接收到的n个数据位的数据单片机可提前进行相应的处理,比如第2数据位和第8数据位可以用于区分部分请求报文类型;A4到A0位代表指令地址,通过同本机地址对比,可确认指令是否下发给本机;单片机接收到8个数据位后就可以根据以上信息按照ASI通信协议的要求提前做出相应的处理,减少后续程序的判断时间,而不用等到接收到请求报文的所有14个数据位后才做出这样的处理,从而可确保通信的实时性;前述的解码标志可在程序中设置;
单片机判断是否需要对请求报文进行应答,如果需要应答,则将解码标志设为第二阶段,如果不需要应答则结束本次的接收处理;单片机做出是否需要应答的判断也是完全依照ASI通信协议的规定来执行的,比如说,如果从机的地址还没有设置,那么就无需做出应答;
单片机在第三定时器的计数值达到预定的时刻2时,判断解码标志是否在第二阶段,如果解码标志不在第二阶段,则结束本次任务,如果解码标志在第二阶段,则对接收到的第n个至第12个数据位进行解码,基于接收到的第n个至第12个数据位的数据进行相应的处理;所述预定的时刻2与单片机接收到请求报文的第12个数据位的时刻相对应;
单片机根据已经接收到的12个数据位的数据生成应答报文数据;由于请求报文的第13个数据位PB和第14个数据位EB是停止位,因此当接收到请求报文的第12个数据位后就可以生成应答报文数据,此时虽然已经生成了应答报文数据但并未发送;
单片机判断是否需要对请求报文进行应答,如果需要应答,则将解码标志设为第三阶段,如果不需要应答则将解码标志设为第一阶段;
单片机在第四定时器的计数值达到预设的比较值时,判断解码标志是否在第三阶段,如果解码标志不在第三阶段,则关闭第二定时器和第三定时器,清空单片机的接收缓存,并置位解码标志为第一阶段;如果解码标志在第三阶段,则单片机按照ASI通信协议进行帧校验,判断单片机是否正确地接收到了请求报文以及是否需要对所接收到的请求报文进行应答,如果单片机正确地接收到了请求报文并需要对所接收到的请求报文进行应答,则启动发送处理;第四定时器的计数值达到预设的比较值的时刻为时刻3,所述的时刻3与单片机接收到一帧完整的请求报文、且延迟了一个数据位的时刻相对应。
在该优选的实施方式中,发送处理包括:
单片机的第五定时器的计数值在达到预先设定的多个计数器比较值时,第五定时器的引脚的电平发生翻转,从而得到对应于应答报文数据的应答报文信号;预先设定的多个计数器比较值是根据应答报文数据通过计算获得。
在本发明的一个具体的应用例中,根据本发明一实施例的基于单片机收发控制的ASI通信从机实施方法采用的是型号为STM32F103RET6的单片机来实施的,但不限于此。以下对型号为STM32F103RET6的单片机的几个硬件定时器的实施细节做一说明。
接收方面:
1)T2定时器:ASI的解调信号接入到T2定时器的输入管脚OCx,为确保输入信号的测量分辨率,不对该定时器的时钟进行任何分频,并且把该计数器的周期设置成最大;该管脚设置成输入抓捕模式,采用循环DMA传输该引脚电平跳变时刻捕获的计数器值;只要电平信号跳变,OCRxREF处将会产生触发事件,设置当前管脚的OCRxREF信号作为触发输出(TRGO),用于控制从定时器,详细的捕获工作原理如图4所示,相关的软件流程处理见图11所示。
2)T1定时器:设置T2定时器的触发输出作为触发输入,并设置成启动受控模式(触发输入TRGI的上升沿启动(但不复位),只有计数器的启动是受控的),只要输入有触发信号,T1定时器将会自动被开启,直至软件对其进行关断。并设定图10中所示的时刻1产生第一阶段的比较中断,详细的T1定时器工作原理见图13中的第二定时器,相关软件处理见图7所示。
3)T3定时器:设置T2定时器的触发输出作为触发输入,并设置成启动受控模式(触发输入TRGI的上升沿启动(但不复位),只有计数器的启动是受控的),只要输入有触发信号,T3定时器将会自动被开启,直至软件对其进行关断。并设定图10中所示的时刻2产生第二阶段的比较中断,详细的T3定时器工作原理见图13中的第三定时器,相关软件处理见图8所示。
4)T5定时器:设置T2定时器的触发输出作为触发输入,并设定成复位模式(选中的触发输入(TRGI)的上升沿重新初始化计数器),只要触发信号到来,计数器的值就会被清零,直到无后续信号到来,那么该计数器将不会被清零,并且一直计数至设定的断帧比较值,该时刻对应帧尾延迟一位数据位的t3时刻,从而触发T5定时器的比较中断,详细的T5定时器工作原理见图13中的第四定时器,相关软件处理见图9所示。
在发送方面:
采用第五定时器作为发送控制的参考定时器,第五定时器的OCx管脚作为输出;设置该定时器为翻转模式(当计数器值等于比较设定值时,翻转0CxREF信号),并设定OCx比较值采用DMA方式进行传输更新,详细的工作原理见图5,软件处理见图12所示。
以上定时器的分配选取可以根据收发管脚的设定进行不同的分配,不局限于T2定时器作为主定时器,T1定时器、T3定时器作为时刻1和时刻2时刻中断的触发,T5定时器作为断帧的触发。
在根据本发明一实施例的基于单片机收发控制的ASI通信从机实施方法中,因为ASI通信处理都是在单片机中靠软件实现,所以只需修改应用部分的软件,便可实现ASI标准通信协议、各种ASI的行业应用和多种自定义应用。在ASI的从机开发方面,采用该方法可用于替代ASI从机专用芯片,并且较被替代方案在自定义应用方面具有高度灵活的优势,例如:
1)可通过自有接口修改从机站址,无需另配专门的手持操作面板或主站设备进行修改,降低使用的繁琐程度和成本;
2)可在一个通信卡上模拟多台从机,实现DI/DO信号的扩展(单个从机限定在4点DI和4点DO),此方式无需修改通信卡的硬件;
3)可实现复杂的故障诊断及相关应用,提供更为详尽的故障诊断信息等功能。
Claims (7)
1.基于单片机收发控制的ASI通信从机实施方法,其特征在于,包括:
单片机接收ASI总线信号传输系统传输的主站发来的请求报文信号;
单片机对接收的请求报文信号进行接收处理,通过解码恢复出请求报文数据,按照ASI通信协议的要求进行帧校验,并基于请求报文数据进行相应的处理,生成应答报文数据;
单片机对所述应答报文数据进行发送处理,通过编码得到对应于应答报文数据的应答报文信号,并将应答报文信号发送给所述ASI总线信号传输系统。
2.如权利要求1所述的基于单片机收发控制的ASI通信从机实施方法,其特征在于,所述解码是通过单片机的定时器捕获ASI总线信号传输系统传输的请求报文信号,单片机记录所接收到的请求报文信号发生电平跳变时的定时器计数值,根据连续两次记录到的定时器计数值计算脉冲宽度,并根据所获得的脉冲宽度按照曼切斯特码的编码规则进行解码,如果所获得的脉冲宽度不符合曼切斯特码的编码规则,则丢弃接收到的请求报文信号。
3.如权利要求1所述的基于单片机收发控制的ASI通信从机实施方法其特征在于,所述编码是通过单片机根据应答报文数据设定多个计数器比较值,在计数器的计数值达到计数器比较值时,使单片机的I/O引脚的电平发生翻转,从而得到对应于应答报文数据的应答报文信号。
4.如权利要求1所述的基于单片机收发控制的ASI通信从机实施方法其特征在于,所述的接收处理包括一次或多次阶段性接收处理和一次断帧接收处理;
所述的阶段性接收处理是单片机在接收到完整的一帧请求报文之前、就对当前接收到的多个数据位进行解码,恢复出当前接收到的请求报文的多个数据位的数据,并按照ASI通信协议的要求,基于接收到的多个数据位的数据进行相应的处理;
其中,单片机在至少已经接收到请求报文的8个数据位时启动第一次阶段性接收处理,在已经接受到请求报文的12个数据位时启动最后一次阶段性接收处理,在最后一次阶段性接收处理时单片机根据已经接收到的12个数据位的数据生成应答报文数据;
所述的断帧接收处理是单片机已接收到完整的一帧请求报文后,按照ASI通信协议进行帧校验,判断单片机是否正确地接收到了请求报文并且是否需要针对请求报文进行应答,如果正确地接收到了请求报文并且需要应答就启动发送处理。
5.如权利要求1或4所述的基于单片机收发控制的ASI通信从机实施方法其特征在于,所述的接收处理包括以下步骤:
用单片机的第一定时器的引脚接收ASI总线信号传输系统传输的请求报文信号,第一定时器被设置成捕获模式,在第一定时器接收到的请求报文信号发生电平跳变时记录第一定时器的计数值;
单片机在第二定时器的计数值达到预定的时刻1时,判断解码标志是否在第一阶段,如果解码标志在第一阶段,则对已经接收到的n个数据位进行解码,恢复出请求报文的n个数据位的数据,并按照ASI通信协议的要求,基于接收到的n个数据位的数据进行相应的处理,如果解码标志不在第一阶段,则结束本次的接收处理;所述预定的时刻1与单片机接收到请求报文的第n个数据位的时刻相对应,8≤n≤10;
单片机判断是否需要对请求报文进行应答,如果需要应答,则将解码标志设为第二阶段,如果不需要应答则结束本次的接收处理;
单片机在第三定时器的计数值达到预定的时刻2时,判断解码标志是否在第二阶段,如果解码标志不在第二阶段,则结束本次任务,如果解码标志在第二阶段,则对接收到的第n个至第12个数据位进行解码,基于接收到的第n个至第12个数据位的数据进行相应的处理;所述预定的时刻2与单片机接收到请求报文的第12个数据位的时刻相对应;
单片机根据已经接收到的12个数据位的数据生成应答报文数据;
单片机判断是否需要对请求报文进行应答,如果需要应答,则将解码标志设为第三阶段,如果不需要应答则将解码标志设为第一阶段;
单片机在第四定时器的计数值达到预设的比较值时,判断解码标志是否在第三阶段,如果解码标志不在第三阶段,则关闭第二定时器和第三定时器,清空单片机的接收缓存,并置位解码标志为第一阶段;如果解码标志在第三阶段,则单片机按照ASI通信协议进行帧校验,判断单片机是否正确地接收到了请求报文以及是否需要对所接收到的请求报文进行应答,如果单片机正确地接收到了请求报文并需要对所接收到的请求报文进行应答,则启动发送处理;第四定时器的计数值达到预设的比较值的时刻为时刻3,所述的时刻3与单片机接收到一帧完整的请求报文、且延迟了一个数据位的时刻相对应。
6.如权利要求5所述的基于单片机收发控制的ASI通信从机实施方法其特征在于,所述的发送处理包括:
单片机的第五定时器的计数值在达到预先设定的多个计数器比较值时,第五定时器的引脚的电平发生翻转,从而得到对应于应答报文数据的应答报文信号;所述预先设定的多个计数器比较值是根据应答报文数据通过计算获得。
7.如权利要求5所述的基于单片机收发控制的ASI通信从机实施方法其特征在于,n=8。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710855579.3A CN107748509B (zh) | 2017-09-20 | 2017-09-20 | 基于单片机收发控制的asi通信从机实施方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710855579.3A CN107748509B (zh) | 2017-09-20 | 2017-09-20 | 基于单片机收发控制的asi通信从机实施方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107748509A true CN107748509A (zh) | 2018-03-02 |
CN107748509B CN107748509B (zh) | 2020-01-10 |
Family
ID=61255618
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710855579.3A Active CN107748509B (zh) | 2017-09-20 | 2017-09-20 | 基于单片机收发控制的asi通信从机实施方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107748509B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110995686A (zh) * | 2019-11-26 | 2020-04-10 | 珠海泰芯半导体有限公司 | 一种软件通信协议的校验方法 |
CN112217851A (zh) * | 2019-07-12 | 2021-01-12 | 西安诺瓦星云科技股份有限公司 | 数据传输方法、数据传输装置以及电子设备 |
CN113296433A (zh) * | 2021-04-28 | 2021-08-24 | 成都秦川物联网科技股份有限公司 | 一种单片机复位方法 |
CN115542792A (zh) * | 2022-08-31 | 2022-12-30 | 东莞市瑚谷机械电子科技有限公司 | 以单片机为核心的asi通迅控制从站模块实现方法 |
CN117032040A (zh) * | 2023-08-31 | 2023-11-10 | 中科驭数(北京)科技有限公司 | 传感器数据获取方法、装置、设备及可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101146101A (zh) * | 2007-07-04 | 2008-03-19 | 中兴通讯股份有限公司 | 基于编解码数据业务的协议分析系统和方法 |
CN201584967U (zh) * | 2009-09-23 | 2010-09-15 | 伊玛精密电子(苏州)有限公司 | Asi中继模块 |
CN201583826U (zh) * | 2009-09-23 | 2010-09-15 | 伊玛精密电子(苏州)有限公司 | Asi模拟量采集模块 |
CN107193769A (zh) * | 2017-05-23 | 2017-09-22 | 北京正唐科技有限责任公司 | 一种基于asi接口的数据收发系统 |
-
2017
- 2017-09-20 CN CN201710855579.3A patent/CN107748509B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101146101A (zh) * | 2007-07-04 | 2008-03-19 | 中兴通讯股份有限公司 | 基于编解码数据业务的协议分析系统和方法 |
CN201584967U (zh) * | 2009-09-23 | 2010-09-15 | 伊玛精密电子(苏州)有限公司 | Asi中继模块 |
CN201583826U (zh) * | 2009-09-23 | 2010-09-15 | 伊玛精密电子(苏州)有限公司 | Asi模拟量采集模块 |
CN107193769A (zh) * | 2017-05-23 | 2017-09-22 | 北京正唐科技有限责任公司 | 一种基于asi接口的数据收发系统 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112217851A (zh) * | 2019-07-12 | 2021-01-12 | 西安诺瓦星云科技股份有限公司 | 数据传输方法、数据传输装置以及电子设备 |
CN112217851B (zh) * | 2019-07-12 | 2023-05-12 | 西安诺瓦星云科技股份有限公司 | 数据传输方法、数据传输装置以及电子设备 |
CN110995686A (zh) * | 2019-11-26 | 2020-04-10 | 珠海泰芯半导体有限公司 | 一种软件通信协议的校验方法 |
CN113296433A (zh) * | 2021-04-28 | 2021-08-24 | 成都秦川物联网科技股份有限公司 | 一种单片机复位方法 |
CN115542792A (zh) * | 2022-08-31 | 2022-12-30 | 东莞市瑚谷机械电子科技有限公司 | 以单片机为核心的asi通迅控制从站模块实现方法 |
CN117032040A (zh) * | 2023-08-31 | 2023-11-10 | 中科驭数(北京)科技有限公司 | 传感器数据获取方法、装置、设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107748509B (zh) | 2020-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107748509A (zh) | 基于单片机收发控制的asi通信从机实施方法 | |
CN104702474A (zh) | 一种基于FPGA的EtherCAT主站装置 | |
KR970007764B1 (ko) | 프로그램 제어장치 | |
CN105610876B (zh) | 工业控制自动化网络通信协议转换器及通信协议转换方法 | |
CN110071577B (zh) | 变电站监控信息验收方法及系统 | |
CN100521637C (zh) | 基于光纤的高速串行工业实时通信总线系统及其控制方法 | |
CN112799992B (zh) | 现场总线芯片架构 | |
EP0137437A2 (en) | Method for initializing a token-passing local-area network | |
CN101501651A (zh) | 电子设备和控制通信的方法 | |
CN102724092A (zh) | 一种Profibus-DP现场总线通信协议冗余主站 | |
CN204733178U (zh) | 一种基于FPGA的EtherCAT主站装置 | |
CN107703815A (zh) | 循环地址式三线spi通讯系统 | |
CN111366208B (zh) | 基于平台、远传设备、水表间上下层通讯的数据采集方法 | |
CN116566762B (zh) | 一种基于Modbus-RTU协议的级联设备及其使用方法 | |
CN106603113A (zh) | 一种雷达信号处理机对外通信控制系统 | |
CN106292544A (zh) | 基于pcie接口硬件板卡及其总线控制方法及系统 | |
CN201054609Y (zh) | 基于光纤的高速串行工业实时通信总线系统 | |
CN112859660B (zh) | 一种设备同步控制方法、装置、终端及系统 | |
CN107729136A (zh) | 一种基于fpga的处理优先级配置方法及装置 | |
CN202093355U (zh) | 一种plc以太网通讯模件 | |
CN105242592A (zh) | 通过profibus pa操作站直接读取hart仪表参数的方法及系统 | |
CN109212346A (zh) | 一种低压智能配电柜的调试方法 | |
CN107832239A (zh) | 一种基于ahb总线的传输控制方法及装置 | |
CN106789183A (zh) | 一种通讯配置数据自动解析的方法 | |
CN115391137A (zh) | 一种基于多种通信融合的bmc管理及授时转发实现方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |