首页 / 专利库 / 电脑零配件 / 固件 / 软件 / 一种串口单线升级代码的装置及其方法

一种串口单线升级代码的装置及其方法

阅读:441发布:2023-02-05

专利汇可以提供一种串口单线升级代码的装置及其方法专利检索,专利查询,专利分析的服务。并且本 发明 涉及 软件 的技术领域,提供一种串口单线升级代码的装置及其方法,包括主机、从机以及单根 信号 线,主机和从机之间电性连接单根信号线、VCC电源线和GND接地线,主机利用软件握手通过单根信号线向从机发送 请求 通信命令,从机通过单根信号线向主机应答,主机与从机之间还通过单根信号线进行数据的发送和接收,通过单根信号线能够实现数据收发、以及软件握手的通信全过程,本发明减少产品预留IAP升级的线路、装配难度和成本,对产品IAP升级改进具有重要经济意义。,下面是一种串口单线升级代码的装置及其方法专利的具体信息内容。

1.一种串口单线升级代码的装置,其特征在于,包括主机、从机以及单根信号线,所述主机和从机之间电性连接所述单根信号线、VCC电源线和GND接地线,所述主机利用软件握手通过所述单根信号线向所述从机发送请求通信命令,所述从机通过单根信号线向主机应答,所述主机与所述从机之间还通过所述单根信号线进行数据的发送和接收。
2.根据权利要求1所述的串口单线升级代码的装置,其特征在于,所述主机和所述从机均为总线上拉。
3.根据权利要求1至2任意一项所述的串口单线升级代码的装置,其特征在于,所述主机和所述从机的初始状态设置为接收状态,所述主机随时发送请求通信命令给所述从机,所述主机发送完请求通信命令后转换为接收状态,等待所述从机应答,所述从机收到请求通信命令后转换为向所述主机发送应答,所述从机发送应答完成后转换为数据接收状态;
所述主机发送的数据访问命令如果为写数据,则所述主机继续发送数据给所述从机,所述主机发送的数据访问命令如果为读数据,则所述从机接着发送数据给所述主机。
4.根据权利要求3所述的串口单线升级代码的装置,其特征在于,所述主机或者所述从机的空闲状态为接收状态,所述主机或者所述从机在发送状态完成后切换回空闲状态,协议命令明确定义数据的收发方向,如果出现通信错误,所述主机重试请求通信命令让所述主机和所述从机恢复到空闲状态。
5.一种串口单线升级代码的方法,基于权利要求1-4中任意一项所述串口单线升级代码的装置;其特征在于,所述方法包括:
步骤S100:所述主机主动利用软件握手向所述从机发送请求通信命令,如果所述主机收到所述从机的肯定应答,所述主机和所述从机握手通信;如果所述从机超时未响应,所述主机将进行超时处理,直到所述主机收到所述从机的肯定应答为止;
步骤S200:所述主机主动利用软件握手向所述从机发送数据访问命令,如果所述主机收到所述从机的肯定应答,所述主机和所述从机准备数据通信;如果所述从机超时未响应,所述主机将进行超时处理,直到所述主机收到所述从机的肯定应答为止;
步骤S300:所述主机主动利用软件握手向所述从机发送数据通信命令,如果所述主机收到所述从机的肯定应答,所述主机和所述从机数据通信完成;如果所述从机超时未响应,所述主机将进行超时处理,直到所述主机收到所述从机的肯定应答为止;
步骤S400:所述主机如果收到所述从机的应答并与所述从机完成一包数据通信之后,所述主机和所述从机之间接着进行下一包数据的处理。
6.根据权利要求5所述的串口单线升级代码的方法,其特征在于,还包括步骤S110:所述主机主动利用软件握手向所述从机发送请求通信命令,如果所述主机收到所述从机的否定应答,所述主机将进行重试,直到所述主机收到所述从机的肯定应答为止。
7.根据权利要求5所述的串口单线升级代码的方法,其特征在于,还包括步骤S210:所述主机主动利用软件握手向所述从机发送数据访问命令,如果所述主机收到所述从机的否定应答,所述主机将进行重试,直到所述主机收到所述从机的肯定应答为止。
8.根据权利要求5-7任意一项所述的串口单线升级代码的方法,其特征在于,还包括步骤S310:所述主机主动利用软件握手向所述从机发送数据通信命令,如果所述主机收到所述从机的否定应答,所述主机将进行重新处理上一包数据,直到所述主机主动利用软件握手向所述从机发送数据通信命令时,所述主机收到所述从机的肯定应答为止。

说明书全文

一种串口单线升级代码的装置及其方法

〖技术领域〗

[0001] 本发明涉及软件的技术领域,尤其涉及一种串口单线升级代码的装置及其方法。〖背景技术〗
[0002] 在计算机行业中,有一种常见的代码升级方法就是IAP,即In Application Programming,也就是用户自己的程序在运行过程中对User Flash的部分区域进行烧写,目的是为了在产品发卖后可以方便通过预留的通信口对产品中的固件程序进行更新升级。IAP升级通信介质和方式多样,用户可以根据自己的需要决定不同的通信方式;比如在支持SD卡的方案做可以用SD卡升级,同理可以通过UART、SWD、SPI、USB等有线方式或者是Bluetooth、WIFI等无线方式进行升级。
[0003] IAP升级原理:代码存储介质可以同时存放两份代码,每份代码都包含了普通用户代码和升级处理的代码,当其中一份在运行时识别到升级时运行升级处理代码将要升级的代码写入空地址,成功后擦除原来的代码,下次上电执行升级后的代码。
[0004] 在如今几乎每个芯片都配备有标准串口的情况下,串口升级更是深得人心被广泛使用。目前串口双工通信中最少需要两根传输线来完成数据通信中的发送和接收。
[0005] 目前,UART半双工实现串口单线升级代码的方法或装置,能够通过软件握手实现半双工工作模式。软件握手不需要额外的握手信号线,使用ASCII控制字符XON/XOFF来实现数据流控制,数据收发使用了TX和RX两根单向传输的信号线,其中,TX信号线表示发送信号线,RX信号线表示接收信号线。通常XON/XOFF由接收方发送给发送方,以控制发送方发送允许控制,当接收方缓冲区快满时,接收方会发送XOFF告知发送方停止发送数据,等到接收方缓冲区释放后,接收方会发送XON告知发送方继续发送。软件握手信号属于一种带内信令,由此可知,UART半双工软件握手工作的方法或装置仍然需要数据通信的两根信号线,实际应用中占用了芯片中至少两个外接端口,配合VCC电源线和GND地线来实现数据收发的通信过程,总共需要四个外接端口,浪费了芯片的外接端口资源。〖发明内容〗
[0006] 本发明提供一种串口单线升级代码的装置及其方法,旨在减少产品预留IAP升级的线路、装配难度和成本,本发明由以下技术方案实现:
[0007] 本发明的第一个方面,提供一种串口单线升级代码的装置,包括主机、从机以及单根信号线,所述主机和从机之间电性连接所述单根信号线、VCC电源线和GND接地线,所述主机利用软件握手通过所述单根信号线向所述从机发送请求通信命令,所述从机通过单根信号线向主机应答,所述主机与所述从机之间还通过所述单根信号线进行数据的发送和接收。
[0008] 优选的,所述主机和所述从机均为总线上拉。
[0009] 优选的,所述主机和所述从机的初始状态设置为接收状态,所述主机随时发送请求通信命令给所述从机,所述主机发送完请求通信命令后转换为接收状态,等待所述从机应答,所述从机收到请求通信命令后转换为向所述主机发送应答,所述从机发送应答完成后转换为数据接收状态;所述主机发送的数据访问命令如果为写数据,则所述主机继续发送数据给所述从机,所述主机发送的数据访问命令如果为读数据,则所述从机接着发送数据给所述主机。
[0010] 优选的,所述主机或者所述从机的空闲状态为接收状态,所述主机或者所述从机在发送状态完成后切换回空闲状态,协议命令明确定义数据的收发方向,如果出现通信错误,所述主机重试请求通信命令让所述主机和所述从机恢复到空闲状态。
[0011] 本发明的第二个方面,提供一种串口单线升级代码的方法,基于上述的串口单线升级代码的装置;所述方法包括:
[0012] 步骤S100:所述主机主动利用软件握手向所述从机发送请求通信命令,如果所述主机收到所述从机的肯定应答,所述主机和所述从机握手通信;如果所述从机超时未响应,所述主机将进行超时处理,直到所述主机收到所述从机的肯定应答为止;
[0013] 步骤S200:所述主机主动利用软件握手向所述从机发送数据访问命令,如果所述主机收到所述从机的肯定应答,所述主机和所述从机准备数据通信;如果所述从机超时未响应,所述主机将进行超时处理,直到所述主机收到所述从机的肯定应答为止;
[0014] 步骤S300:所述主机主动利用软件握手向所述从机发送数据通信命令,如果所述主机收到所述从机的肯定应答,所述主机和所述从机数据通信完成;如果所述从机超时未响应,所述主机将进行超时处理,直到所述主机收到所述从机的肯定应答为止;
[0015] 步骤S400:所述主机如果收到所述从机的应答并与所述从机完成一包数据通信之后,所述主机和所述从机之间接着进行下一包数据的处理。
[0016] 优选的,还包括步骤S110:所述主机主动利用软件握手向所述从机发送请求通信命令,如果所述主机收到所述从机的否定应答,所述主机将进行重试,直到所述主机收到所述从机的肯定应答为止。
[0017] 优选的,还包括步骤S210:所述主机主动利用软件握手向所述从机发送数据访问命令,如果所述主机收到所述从机的否定应答,所述主机将进行重试,直到所述主机收到所述从机的肯定应答为止。
[0018] 优选的,还包括步骤S310:所述主机主动利用软件握手向所述从机发送数据通信命令,如果所述主机收到所述从机的否定应答,所述主机将进行重新处理上一包数据,直到所述主机主动利用软件握手向所述从机发送数据通信命令时,所述主机收到所述从机的肯定应答为止。
[0019] 本发明的有益效果是:
[0020] 与现有技术相比,本发明通过单根信号线、配合VCC电源线和GND地线能够实现数据收发、以及软件握手的通信全过程,只需要三个外接端口,节省芯片的外接端口资源,为通信装置节省了一个针脚,降低串口通信方案的成本;在应用方案开发中,产品在预留IAP接口的时候,不管是从成本还是装配难度、以及后期维护方面的目标是外接端口越少越好。本发明减少产品预留IAP升级的线路、装配难度和成本,对产品IAP升级改进具有重要经济意义。
附图说明〗
[0021] 图1是本发明的装置实施例的结构示意图;
[0022] 图2是本发明的软件握手以及通信方法的实施例示意图;
[0023] 图3是本发明通信异常、从机无响应的超时处理的实施例示意图;
[0024] 图4是本发明在软件开发过程中的通信步骤的实施例示意图;
[0025] 以下结合附图对本发明的具体实施方式作进一步详细地说明。〖具体实施方式〗
[0026] 本发明的较佳实施例如图1-图4所示,附图的作用在于用图形补充说明书文字部分的描述,便于理解本发明的各个技术特征以及整体的技术方案,但不能理解为对本发明的限制。未进行特别解释的技术词语,可视为现有技术的广义含义。附图中的ACK符号表示肯定应答、NACK符号表示否定应答、NO符号表示超时未响应。未做详细说明的技术用语为广义的现有技术用语。
[0027] 如图1-图4所示,一种串口单线升级代码的装置的实施例,包括主机10、从机20以及单根信号线30,主机10与从机20之间电性连接有单根信号线30、VCC电源线和GND接地线,其电性连接方式可以是:焊接、RSR232接口连接方式或者RSR485接口的连接方式等,主机10和从机20均为总线上拉,使得主机10和从机20得到一个电压稳定的工作环境,主机10和从机20之间电性连接单根信号线30,主机10能利用软件握手通过单根信号线30向从机20发送请求通信命令,软件握手信号属于一种带内信令,从机20能够通过单根信号线30向主机10应答,主机10与从机20之间还通过单根信号线30进行数据的发送和接收。在硬件方面,本发明只需单根信号线30,用于主机10和从机20之间的通信,包括主机10向从机20发出的请求通信命令、读数据命令、写数据命令和数据,也包括从机20向主机10发出的应答和数据,因此,该单根信号线30能够完成双向的数据传输,与现有的单向传输的一根TX信号线和一根RX信号线相比,节省了一个外接端口,在实际应用中节省了芯片的一个引脚,其中,TX信号线表示发送信号线,RX信号线表示接收信号线。省出来的端口位置可以在技术方案的开发中增设其他必要的功能,例如串口调试,或者调频器,或者指示灯,或者用于升级改进而增设的温敏电阻,或者用于外设的I2C总线或者SPI总线的通信方式等,具有很高的开发价值。现有技术中,主机10和从机20之间的通信分别通过一根TX信号线和一根RX信号线,其中TX信号线通信时RX信号线处于非通信状态,RX信号线通信时TX信号线处于非通信状态,两者的非通信状态的时间长度大于通信状态的时间长度,造成资源的浪费,而本发明利用软件握手,使得主机10和从机20之间的通信过程通过单根信号线30完成,其通信的时间仍然余裕,因而并不影响整体的通信时间。其中的请求通信命令是通过软件握手实现的,也可以说是通过握手命令实现的。
[0028] 其中,主机10和从机20的初始状态设置为接收状态,主机10随时发送请求通信命令给从机20,主机10发送完请求通信命令后转换为接收状态,等待从机20应答,从机20收到请求通信命令后转换为向主机10发送应答,从机20发送应答完成后转换为数据接收状态;主机10发送的数据访问命令如果为写数据,则主机10继续发送数据给从机20,主机10发送的数据访问命令如果为读数据,则从机20接着发送数据给主机10。使得主机10和从机20有序地切换发送命令和应答。其中的数据访问命令是通过软件握手实现的,也可以说是属于握手命令中的一种。
[0029] 优选的,主机10或者从机20的空闲状态为接收状态,主机10或者从机20在发送状态完成后切换回空闲状态,协议命令明确定义数据的收发方向,如果出现通信错误,主机10重试请求通信命令让主机10和从机20恢复到空闲状态。通过自主协议,厘清了主机10和从机20的各种状态,使得各种通信内容能够顺利地通过单根信号线30。这个协议命令指的是自定义的协议,通过协议命令明确读数据和写数据的方向。
[0030] 本实施例还提供一种串口单线升级代码的方法,所述方法包括:
[0031] 步骤S100:所述主机10主动利用软件握手向所述从机20发送请求通信命令,如果所述主机10收到所述从机20的肯定应答,所述主机10和所述从机20握手通信;如果所述从机20超时未响应,所述主机10将进行超时处理,直到所述主机10收到所述从机20的肯定应答为止;
[0032] 步骤S200:所述主机10主动利用软件握手向所述从机20发送数据访问命令,如果所述主机10收到所述从机20的肯定应答,所述主机10和所述从机20准备数据通信;如果所述从机20超时未响应,所述主机10将进行超时处理,直到所述主机10收到所述从机20的肯定应答为止;
[0033] 步骤S300:所述主机10主动利用软件握手向所述从机20发送数据通信命令,如果所述主机10收到所述从机20的肯定应答,所述主机10和所述从机20数据通信完成;如果所述从机20超时未响应,所述主机10将进行超时处理,直到所述主机10收到所述从机20的肯定应答为止;
[0034] 步骤S400:所述主机10如果收到所述从机20的应答并与所述从机20完成一包数据通信之后,所述主机10和所述从机20之间接着进行下一包数据的处理。
[0035] 优选的,还包括步骤S110:所述主机10主动利用软件握手向所述从机20发送请求通信命令,如果所述主机10收到所述从机20的否定应答,所述主机10将进行重试,直到所述主机10收到所述从机20的肯定应答为止。
[0036] 优选的,还包括步骤S210:所述主机10主动利用软件握手向所述从机20发送数据访问命令,如果所述主机10收到所述从机20的否定应答,所述主机10将进行重试,直到所述主机10收到所述从机20的肯定应答为止。
[0037] 优选的,还包括步骤S310:所述主机10主动利用软件握手向所述从机20发送数据通信命令,如果所述主机10收到所述从机20的否定应答,所述主机10将进行重新处理上一包数据,直到所述主机10主动利用软件握手向所述从机20发送数据通信命令时,所述主机10收到所述从机20的肯定应答为止。
[0038] 本发明实现串口单线升级代码的方法和装置,减少产品预留IAP升级的线路、装配难度和成本,对产品IAP升级改进具有重要经济意义。
[0039] 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围,因此,如果对本发明的这些改变和变型属于本发明权利要求及其等同技术范围之内,均应涵盖于本发明的保护范围内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈