【技术实现步骤摘要】
一种基于半双工总线的按键事件扫描方法、网关和终端
[0001]本专利技术涉及物联网
,特别是一种基于半双工总线的按键事件扫描方法、网关和终端。
技术介绍
[0002]随着物联网、智能家居等不断发展,越来越多的设备需要互联,其中按键终端与控制设备互联的应用必不可少。
[0003]目前比较成熟的按键终端与控制设备互联的方案是将按键终端和按键网关用458总线进行连接,然后按键网关逐个扫描按键终端,获取当前按键的控制信息。但是,逐个扫描按键终端效率低下,当按键终端个数较多时,延时比较严重。
[0004]此外,传统的方法是直接将按键集成到设备上面,直接进行控制,而基于通信的按键往往要么协议复杂、开发难度大,要么效率低下。
技术实现思路
[0005]鉴于上述问题,本专利技术提供了一种克服上述问题或者至少部分地解决上述问题的基于半双工总线的按键事件扫描方法、网关和终端。
[0006]本专利技术的一个目的是简化按键扫描的开发,提高按键扫描效率和可靠性。
[0007]本专利技术一个进一步的目的是提高报数效率。
[0008]本专利技术另一个进一步的目的是节省终端的报数应答时间。
[0009]本专利技术又一个进一步的目的是提高按键事件查询的可靠性。
[0010]特别地,根据本专利技术的一方面,提供了一种基于半双工总线的按键事件扫描方法,应用于网关,包括:
[0011]向多个终端发送报数指令,所述多个终端与所述网关通过所述半双工总线通信连接;
[0 ...
【技术保护点】
【技术特征摘要】
1.一种基于半双工总线的按键事件扫描方法,应用于网关,包括:向多个终端发送报数指令,所述多个终端与所述网关通过所述半双工总线通信连接;接收所述多个终端依次发送的关于所述报数指令的第一响应信息,各所述终端的所述第一响应信息包括指示该终端是否发生了按键事件的类型值;根据所述第一响应信息中的类型值,将发生了按键事件的终端记录为待查询终端;依次向各所述待查询终端发送查询指令;接收各所述待查询终端关于所述查询指令的第二响应信息,各所述待查询终端的所述第二响应信息包括该待查询终端的按键事件数据;从各所述第二响应信息中获取各所述待查询终端的按键事件数据。2.根据权利要求1所述的按键事件扫描方法,其中,各所述终端的地址为指定数值范围内的任意值且各不相同,各所述终端按照地址从小到大的顺序依次发送所述第一响应信息;在接收所述多个终端依次发送的关于所述报数指令的第一响应信息的过程中,所述方法还包括:在发送所述报数指令后和在每一次接收到一个所述终端的所述第一响应信息后,判断是否已经收到所有所述终端的所述第一响应信息或是否超过预定时间未接收到下一个所述终端的所述第一响应信息;若是,则结束接收所述第一响应信息的操作。3.根据权利要求2所述的按键事件扫描方法,其中,每顺序相邻的两个所述终端的地址的数值差为1;在发送所述报数指令和在每一次接收到一个所述终端的所述第一响应信息后,判断是否超过预定时间未接收到下一个所述终端的所述第一响应信息的步骤包括:在发送所述报数指令后和在每一次接收到一个所述终端的所述第一响应信息后开始计时,并计算相应的所述预定时间;若计时时间超过计算出的所述预定时间时仍未接收到下一个所述终端的所述第一响应信息,则判断超过预定时间未接收到下一个所述终端的所述第一响应信息;其中,在发送所述报数指令后的相应的所述预定时间按照下式(1)进行计算:T
pre = T2 + T1 * max_addr *2
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)在每一次接收到一个所述终端的所述第一响应信息后的相应的所述预定时间按照下式(2)进行计算:T
pre = T2 + T1 * (max_addr
ꢀ‑ꢀ
last_addr)*2
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)式(1)和式(2)中,T
pre
表示所述预定时间,max_addr为最大的终端地址,last_addr为当前接收到的第一响应信息对应的终端的地址,T1为所述终端发送响应信息的字节耗时,T2为所述半双工总线由一个所述终端占用切换到另一个所述终端占用所需的总线切换时间,T2<T1。4.根据权利要求1所述的按键事件扫描方法,其中,所述查询指令包括第一校验和,所述第二响应信息包括第二校验和;在接收到各所述第二响应信息后,还包括:根据所述第二校验和对接收的各所述第二响应信息进行校验,若未通过校验,则丢弃
所述第二响应信息。5.一种基于半双工总线的按键事件扫描方法,应用于各终端,包括:接收网关发送的报数指令,各所述终端与所述网关通过所述半双工总线通...
【专利技术属性】
技术研发人员:杨士瑞,武晓阳,马俊杰,赵佳明,张浩,董长远,
申请(专利权)人:北京和欣运达科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。