本申请涉及通信技术领域,具体而言,涉及一种通信方法、装置及系统。
背景技术:
spi(串行外设接口,英文名称,serialperipheralinterface)总线系统是一种同步串行外设接口,它可以使mcu与各种外围设备以串行方式进行通信以交换信息。该接口一般使用4条线:串行时钟线(sclk)、主设备输入/从设备输出数据线miso、主设备输出/从设备输入数据线mosi和低电平有效的从设备选择线nss。
在现有的通信系统中,一个主设备上往往会连接多个从设备,主设备与从设备通信时,往往是通过主设备控制从设备的片选信号,从而控制从设备的使能状态来实现的。然而,这种通信方式中,由于各个从设备的输入引脚、输出引脚、时钟引脚以及使能端都是与主设备的输出引脚、输入引脚、时钟引脚以及使能控制引脚对应连接的,因此,片选信号为非使能状态的从设备的输入引脚、输出引脚以及时钟引脚上的电平信号就会影响主设备的输出引脚、输入引脚的电平变化,从而降低通信速率。
此外,现有技术中,由于主设备需要控制从设备的使能状态,因此,主设备上需要多个引脚来与从设备连接,也会影响主设备与从设备的通信速率。
技术实现要素:
为了克服现有技术中的上述不足,本申请的目的在于提供一种通信方法,应用于与通信系统中的主设备通信的从设备,所述从设备中配置有与该从设备对应的本地识别标识,所述方法包括:
所述从设备接收所述主设备发送的通信信息,所述通信信息包括用于确定与所述主设备进行通信的所述从设备的目标识别标识;
所述从设备判断所述目标识别标识与所述本地识别标识是否相符;
如果所述目标识别标识与所述本地识别标识相符,接收所述主设备发送的数据信息并对该数据信息进行处理;
如果所述目标识别标识与所述本地识别标识不相符,将所述从设备的信号收发引脚设置为高阻状态。
可选地,所述通信信息还包括用于确定所述主设备与所述从设备之间通信时长的预设通信时长;
所述如果所述目标识别标识与所述本地识别标识不相符,将所述从设备的信号收发引脚设置为高阻状态的步骤为,
如果所述目标识别标识与所述本地识别标识不相符,将所述从设备的信号收发引脚设置为高阻状态,在所述预设通信时长后,取消所述从设备的信号收发引脚的高阻状态。
可选地,所述数据信息为指令信息,所述接收所述主设备发送的数据信息并对该数据信息进行处理的步骤包括:
所述从设备接收所述主设备发送的数据信息并根据该数据信息向所述主设备发送待发送数据。
可选地,所述从设备与主设备之间采用spi通信。
可选地,所述从设备接收所述主设备发送的通信信息的步骤前,所述方法包括,
将所述从设备的通信频率设置为低频模式;
当所述目标识别标识与所述本地识别标识相符时,所述方法还包括,将所述从设备的通信频率设置为高频模式。
可选地,所述将所述从设备的通信频率设置为低频模式的步骤前,所述方法还包括,
获取从设备的预设电流强度值;
将所述从设备的信号收发引脚的电流值设置为所述预设电流强度值。
本申请的另一目的在于提供一种通信装置,应用于与通信系统中的主设备通信的从设备,所述装置包括:
存储模块,用于存储与所述从设备对应的本地识别标识;
接收模块,接收所述主设备发送的通信信息,所述通信信息包括用于确定与所述主设备进行通信的所述从设备的目标识别标识;
判断模块,用于判断所述目标识别标识与所述本地识别标识是否相符;
控制模块,用于在所述目标识别标识与所述本地识别标识相符时,接收所述主设备发送的数据信息并对该数据信息进行处理;
在所述目标识别标识与所述本地识别标识不相符时,将所述从设备的信号收发引脚设置为高阻状态。
本申请的另一目的在于提供一种通信方法,应用于与通信系统中配置有本地识别标识的从设备通信的主设备,所述方法包括,
所述主设备向所述从设备发送通信信息,所述通信信息包括用于确定与所述主设备进行通信的所述从设备的目标识别标识和用于确定所述主设备与所述从设备之间通信时长的预设通信时长,促使所述从设备:
接收所述主设备发送的通信信息;
判断所述目标识别标识与所述本地识别标识是否相符;
如果所述目标识别标识与所述本地识别标识相符,则接收所述主设备发送的数据信息并对该数据信息进行处理;
如果所述目标识别标识与所述本地识别标识不相符,则将所述从设备的信号收发引脚设置为高阻状态。
本申请的另一目的在于提供一种通信装置,应用于与通信系统中配置有本地识别标识的从设备通信的主设备,所述装置包括,
发送模块,所述发送模块用于向所述从设备发送通信信息,所述通信信息包括用于确定与所述主设备进行通信的所述从设备的目标识别标识和用于确定所述主设备与所述从设备之间通信时长的预设通信时长,促使所述从设备:
接收所述主设备发送的通信信息;
所述从设备判断所述目标识别标识与所述本地识别标识是否相符;
如果所述目标识别标识与所述本地识别标识相符,则接收所述主设备发送的数据信息并对该数据信息进行处理;
如果所述目标识别标识与所述本地识别标识不相符,则将所述从设备的信号收发引脚设置为高阻状态。
本申请的另一目的在于提供一种通信系统,所述通信系统包括主设备以及与所述主设备通信连接的至少两个从设备,至少两个所述从设备均为使能状态。
相对于现有技术而言,本申请具有以下有益效果:
本申请实施例通过从设备接收主设备发送的目标识别标识,然后将目标识别标识与该从设备的本地识别标识进行比对,并在目标识别标识与目标识别标识相符的情况下,与主设备进行通信;在目标识别标识与目标识别标识不相符的情况下,将该从设备的信号收发引脚设置为高阻状态,如此,就使得不需要与主设备进行通信的从设备不会对主设备造成影响,也就是说,主设备上相当于只连接了与主设备进行通信的从设备,这样,就使得主设备与该从设备之间的通信速度大大提高。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的主设备与从设备的连接示意图;
图2为本申请实施例提供的通信系统的结构示意图;
图3为本申请实施例提供的通信方法的流程示意图;
图4为本申请实施例提供的一种通信装置的结构框图。
图标:100-主设备;110-第一处理器;120-第一存储器;200-从设备;210-第二处理器;220-第二存储器;310-存储模块;320-接收模块;330-判断模块;340-控制模块。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
请参见图1,图1是本申请实施例提供的通信系统的连接示意图,所述通信系统包括主设备100以及与所述主设备100通信连接的至少两个从设备200,至少两个所述从设备200均为使能状态。
本实施例中,所述主设备100可以包括输入引脚、输出引脚以及时钟引脚,从设备200可以包括输入引脚、输出引脚以及时钟引脚,其中,从设备200的输入引脚与主设备100的输出引脚连接,将从设备200的输入引脚与主设备100的输出引脚连接的线为主设备输入/从设备输出数据线miso;从设备200的输出引脚与主设备100的输入引脚连接,将从设备200的输出引脚与主设备100的输入引脚连接的线为主设备输出/从设备输入数据线mosi;从设备200的时钟引脚与主设备100的时钟引脚连接,从设备200的时钟引脚与主设备100的时钟引脚连接的线为串行时钟线sclk。
本实施例中,所述从设备200均为使能状态。具体地,所述从设备200包括使能端,所述从设备200的使能端连接使该从设备200使能的电信号,例如,低电平使能的从设备200中,可以将所述从设备200的使能端连接地线或者低电平等。将从设备200的使能端连接使该从设备200使能的地线,可以使无需在通信系统中单独设置控制每一个从设备200使能状态的信号线,也就是说,可以减少主设备100和从设备200之间用于控制从设备200的线。
请参见图2,图2是本实施例的主设备100的结构示意图,所述主设备100包括第一处理器110、第一存储器120,所述第一处理器110与所述第一存储器120电连接,用于实现数据交互。
在本实施例的主设备100中,所述第一存储器120可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,第一存储器120用于存储第一可执行指令,所述第一处理器110在接收到第一可执行指令后,执行该指令。
所述从设备200包括第二处理器210、第二存储器220,所述第二处理器210与所述第二存储器220电连接,用于实现数据交互。
在本实施例的从设备200中,所述第二存储器220可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,第二存储器220用于存储第二可执行指令,所述第二处理器210在接收到第二可执行指令后,执行该指令。
请参见图3,图3为可以应用于上述通信系统的通信方法的流程图,所述从设备200中配置有与该从设备200对应的本地识别标识,其中,本地识别标识用于标识与同一主设备100通信连接的从设备200。本地识别标识可以是,但不限于与从设备200对应的从设备200的地址信息等。
所述通信方法的具体步骤包括:
步骤s110,所述主设备100向所述从设备200发送通信信息。
所述通信信息包括用于确定与所述主设备100进行通信的所述从设备200的目标识别标识,也就是说,目标识别标识是主设备100将要与某个从设备200进行通信时,用于识别从设备200是否是主设备100将要进行通信的从设备200的信息,该目标识别标识与所述本地识别标识对应,可以是,但不限于,主设备100将要进行通信的从设备200的地址信息等。
通信信息还可以包括用于确定所述主设备100与所述从设备200之间通信时长的预设通信时长,也就是说,主设备100与从设备200进行通信时,一次连续的通信过程的时间长度。其中,预设通信时长可以根据主设备100与从设备200之间需要传输的数据量的大小进行确定。例如,在一次通信过程中,主设备100与从设备200交换某一数据所需要的时间是t1,那么,便可以将预设通信时长设置为t1。
本实施例中,在主设备100与从设备200之间可以采用spi通信。也就是说,在步骤s110前,可以将从设备200的信号收发引脚配置为spi接口,将主设备100的信号收发引脚配置为spi接口,然后使从设备200和主设备100上配置spi通信协议,以使所述主设备100与所述从设备200在通信时采用spi通信。本实施例中,在步骤s110前,还可以包括,将从设备200的通信频率设置为低频模式。
低频模式即从设备200采用的时钟频率为低频,此时,对应的主设备100的时钟频率与从设备200的时钟频率一致。在设置从设备200的通信频率时,可以通过设置主设备100的时钟频率来设置从设备200的时钟频率。
本实施例中,在所述将从设备200的通信频率设置为低频模式的步骤前,还可以包括,
获取从设备200的预设电流强度值。
将所述从设备200的信号收发引脚的电流值设置为所述预设电流强度值。
本实施例用于设置从设备200的输出引脚的电流值,使得总线的电流值不会过大,从而保护主设备100以及与主设备100通信连接的从设备200。
本实施例中,所有与主设备100通信连接的处于使能状态的从设备200都可以接收主设备100发送的通信信息。
本实施例中,在步骤s110前还可以将所有从设备200的发送寄存器的初值设置为相同的值。
步骤s120,所述从设备200接收所述主设备100发送的通信信息。
步骤s130,所述从设备200判断所述目标识别标识与所述本地识别标识是否相符。
本实施例用于判断该从设备200是否是主设备100将要进行通信的从设备200。
步骤s140,如果所述目标识别标识与所述本地识别标识相符,接收所述主设备100发送的数据信息并对该数据信息进行处理。
本实施例中,所述数据信息可以包括,但不限于指令信息等。
当所述数据信息包括指令信息时,所述从设备200根据所述指令信息执行相应的操作。例如,当所述指令信息中包括指示所述从设备200向所述主设备100发送待发送数据的指令时,从设备200执行所述指令,把相应的待发送数据发送给主设备100。
本实施例中,还可以包括,当所述目标识别标识与所述本地识别标识相符时,将所述从设备200设置为高频模式。
将从设备200的通信频率设置为高频模式。高频模式即从设备200采用的时钟频率为高频,此时,对应的主设备100的时钟频率与从设备200的时钟频率一致。在设置从设备200的通信频率时,可以通过设置主设备100的时钟频率来设置从设备200的时钟频率。
步骤s150,如果所述目标识别标识与所述本地识别标识不相符,将所述从设备200的信号收发引脚设置为高阻状态。
例如,当从设备200的信号收发引脚包括从设备200的输入引脚、输出引脚和时钟引脚时,可以将从设备200的输入引脚和输出引脚设置为高阻状态,也可以将从设备200的输入引脚、输出引脚和时钟引脚都设置为高阻状态。
本实施例中,将从设备200的信号收发引脚设置为高阻状态,使得该从设备200对主设备100几乎不会产生影响。也就是说,主设备100的信号收发引脚几乎不受该从设备200的影响,主设备100上相当于没有连接该从设备200。
其中,当通信信息中包含预设通信时长时,可以在接收到通信信息后的预设通信时长内,将从设备200的信号收发引脚设置为高阻状态。在将接收到通信信息后的预设通信时长后,取消所述从设备200的信号收发引脚的高阻状态,也就是说,将各个从设备200重新设置为可以接收主设备100发送的通信信息的状态。
例如,当从设备200的信号收发引脚包括输入引脚、输出引脚以及时钟引脚时,可以将从设备200的输入引脚、输出引脚以及时钟引脚均设置为高阻状态。
本实施例中,将不是主设备100将要与之进行通信的从设备200的信号收发引脚设置为高阻状态,能够避免没有与主设备100通信的从设备200的信号收发引脚影响主设备100的信号收发引脚上的电平变化速度以及主设备100发送信号的准确性。
当主设备100与某个从设备200完成一次通信过程后,则可以重新执行步骤s110。
本申请的另一实施例提供了一种通信装置,应用于与通信系统中配置有本地识别标识的从设备200通信的主设备100,所述通信装置包括一个可以以软件或者固件的形式存储于所述第一存储器120中或固化在所述主设备100的操作系统(operatingsystem,os)中的软件功能模块。所述通信装置包括,
发送模块,所述发送模块用于向所述从设备200发送通信信息,所述通信信息包括用于确定与所述主设备100进行通信的所述从设备200的目标识别标识和用于确定所述主设备100与所述从设备200之间通信时长的预设通信时长,促使所述从设备200:
接收所述主设备100发送的通信信息。
所述从设备200判断所述目标识别标识与所述本地识别标识是否相符。
如果所述目标识别标识与所述本地识别标识相符,则接收所述主设备100发送的数据信息并对该数据信息进行处理。
如果所述目标识别标识与所述本地识别标识不相符,则将所述从设备200的信号收发引脚设置为高阻状态。
本实施例中,发送模块可用于执行步骤s110,并促使从设备200执行步骤s120-步骤s150。关于发送模块的具体描述,可参考对所述步骤s110-步骤s150的描述。
请参见图4,本实施例还提供了一种通信装置,应用于与通信系统中的主设备100通信的从设备200,所述通信装置包括一个可以以软件或者固件的形式存储于所述第二存储器220中或固化在所述从设备200的操作系统(operatingsystem,os)中的软件功能模块。所述装置包括:
存储模块310,用于存储与所述从设备200对应的本地识别标识。
本实施例中,存储模块310可用于存储与从设备200对应的本地识别标识。
接收模块320,接收所述主设备100发送的通信信息,所述通信信息包括用于确定与所述主设备100进行通信的所述从设备200的目标识别标识。
本实施例中,接收模块320可用于执行步骤s120,关于接收模块320的具体描述,可参考对所述步骤s120的描述。
判断模块330,用于判断所述目标识别标识与所述本地识别标识是否相符。
本实施例中,判断模块330可用于执行步骤s130,关于判断模块330的具体描述,可参考对所述步骤s130的描述。
控制模块340,用于在所述目标识别标识与所述本地识别标识相符时,接收所述主设备100发送的数据信息并对该数据信息进行处理。
在所述目标识别标识与所述本地识别标识不相符时,将所述从设备200的信号收发引脚设置为高阻状态。本实施例中,控制模块340可用于执行步骤s140-步骤s150,关于控制模块340的具体描述,可参考对所述步骤s140-步骤s150的描述。
综上所述,本申请实施例通过从设备200接收主设备100发送的目标识别标识,然后将目标识别标识与该从设备200的本地识别标识进行比对,并在目标识别标识与目标识别标识相符的情况下,与主设备100进行通信。在目标识别标识与目标识别标识不相符的情况下,将该从设备200的信号收发引脚设置为高阻状态,如此,就使得不需要与主设备100进行通信的从设备200不会对主设备100造成影响,也就是说,主设备100上相当于只连接了与主设备100进行通信的从设备200,这样,就使得主设备100与该从设备200之间的通信速度大大提高。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。