在线更新智能水表应用程序的方法

文档序号:6365929阅读:523来源:国知局
专利名称:在线更新智能水表应用程序的方法
技术领域
本发明涉及电子智能水表,特别是涉及在线更新智能水表应用程序的方法。
背景技术
目前,智能水表行业中,水表的微处理器均带有在电路可多次编程的程序存储器,在电路可编程只能通过编程线连接到电路板上对存储器进行在线的编程,但电路板上的编程接口并未引到水表外面,如果将其和通信接口同时引出,则成本增加并且使水表应用程序的安全性与防水性能降低。因此,一旦应用程序存在缺陷或是用户对水表功能要求有变化时只能到现场拆开水表对微处理器进行重新烧录以更新程序,不但工作量大而且对用户也造成很大困扰。发明内容本发明要解决的技术问题在于避免上述现有技术的不足之处而提出 一种在线更新智能水表应用程序的方法,该方法采用IAP (In-Application Programming)技术,借助通信监控线路,通过上位机直接远程在线更新水表应用程序,杜绝了将编程接口引到水表外面而导致各种存在的隐患,免去了到现场的麻烦和给用户带去的困扰。 本发明解决所述技术问题可以通过采用以下技术方案来实现
提出一种在线更新智能水表应用程序的方法,包括如下步骤
A.利用IAP技术将智能水表微处理器的闪存区分为两个区一个区为在应用编程程序区,用于存储IAP程序,定义为主存储区或者叫BOOT区;另一个区为应用程序区,用于存储实现水表功能的应用程序,定义为程序存储区或者叫CODE区;
B.在所述用户程序中加入对IAP程序复位指令的响应;
C.所述微处理器上电复位后,先检查在一段时间内是否有上位机的IAP程序复位指令,若无相关指令且检查CODE区程序正确有效,则直接跳到CODE区执行正常的应用程序;若有相关指令,所述微处理器接收该指令后,放弃当前程序并跳到BOOT区执行IAP程序,与上位机通信在线更新水表应用程序,更新完成后检查应用程序是否正确完整,IAP程序结束。作为本发明进一步的改进,本发明在线更新智能水表应用程序的方法还包括步骤D,当水表微处理器在执行CODE区用户程序时,能随时自动检测到上位机发出的IAP程序复位指令,立即响应,微处理器复位并再次从IAP程序开始执行,与上位机通信在线更新水表应用程序,更新完成后检查应用程序是否正确完整,IAP程序结束。同现有技术相比较,本发明在线更新智能水表应用程序的方法的技术效果在于采用IAP (In-Application Programming)技术,借助通信监控线路,通过上位机直接远程在线更新水表应用程序,杜绝了将编程接口引到水表外面而导致各种存在的隐患,免去了到现场烧录的麻烦和给用户带去的困扰。


图I是本发明在线更新智能水表应用程序的方法的原理流程示意图。
具体实施方式
以下结合附图所示之优选实施例作进一步详述。
本发明实施例一种在线更新智能水表应用程序的方法,其硬件平台即微处理器的型号采用STM8L152C6,当然,也可以采用其他型号的带有在电路可多次编程的程序存储器的微处理器,如图I所示,包括如下步骤
A.利用IAP技术将智能水表微处理器的闪存区分为两个区一个区为在应用编程程序区,用于存储IAP程序,定义为主存储区或者叫BOOT区;另一个区为应用程序区,用于存储实现水表功能的应用程序,定义为程序存储区或者叫CODE区;所述IAP程序通过编程器或者ICP接口烧录到微处理器内,烧录后不再修改; B.在所述用户程序中加入对IAP程序复位指令的响应;
C.所述微处理器上电复位后,先检查在一段时间内是否有上位机的IAP程序复位指令(该时间段一般设为2-5秒,例如3秒),若无相关指令且检查CODE区程序正确有效,则直接跳到CODE区执行正常的应用程序;若有相关指令,所述微处理器接收该指令后,放弃当前程序并跳到BOOT区执行IAP程序,与上位机通信在线更新水表应用程序,更新完成后检查应用程序是否正确完整,IAP程序结束;然后再执行CODE区更新后的应用程序。当水表微处理器在执行CODE区用户程序时,能随时自动检测到上位机发出的IAP程序复位指令,立即响应,微处理器复位并再次从IAP程序开始执行,与上位机通信在线更新水表应用程序,更新完成后检查应用程序是否正确完整,IAP程序结束;然后再执行CODE区更新后的应用程序。本发明中,涉及的上位机内也安装了相应的远程控制软件,该远程控制软件实现了使上位机借助通信监控线路,对水表微处理器发出IAP程序复位指令。这样的远程控制软件技术属于成熟的远程控制技术,此处不再赘述。以上内容是结合具体的优选技术方案对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
权利要求
1.一种在线更新智能水表应用程序的方法,其特征在于,包括如下步骤 利用IAP技术将智能水表微处理器的闪存区分为两个区一个区为在应用编程程序区,用于存储IAP程序,定义为主存储区或者叫BOOT区;另一个区为应用程序区,用于存储实现水表功能的应用程序,定义为程序存储区或者叫CODE区; 在所述用户程序中加入对IAP程序复位指令的响应; 所述微处理器上电复位后,先检查在一段时间内是否有上位机的IAP程序复位指令,若无相关指令且检查CODE区程序正确有效,则直接跳到CODE区执行正常的应用程序;若有相关指令,所述微处理器接收该指令后,放弃当前程序并跳到BOOT区执行IAP程序,与上位机通信在线更新水表应用程序,更新完成后检查应用程序是否正确完整,IAP程序结束。
2.如权利要求I所述的在线更新智能水表应用程序的方法,其特征在于还包括步骤D,当水表微处理器在执行CODE区用户程序时,能随时自动检测到上位机发出的IAP程序复 位指令,立即响应,微处理器复位并再次从IAP程序开始执行,与上位机通信在线更新水表 应用程序,更新完成后检查应用程序是否正确完整,IAP程序结束。
3.如权利要求I所述的在线更新智能水表应用程序的方法,其特征在于所述步骤C中检查是否有上位机的IAP程序复位指令的时间段设为2-5秒。
4.如权利要求I所述的在线更新智能水表应用程序的方法,其特征在于所述IAP程序通过编程器或者ICP接口烧录到微处理器内,烧录后不再修改。
5.如权利要求I所述的在线更新智能水表应用程序的方法,其特征在于所述微处理器的型号为STM8L152C6。
全文摘要
本发明涉及一种在线更新智能水表应用程序的方法,包括如下步骤A.利用IAP技术将智能水表微处理器的闪存区分为两个区一个区用于存储IAP程序,叫BOOT区;另一个区用于存储实现水表功能的应用程序,叫CODE区;B.在所述用户程序中加入对IAP程序复位指令的响应;微处理器上电复位后,若无IAP程序复位指令且检查CODE区程序正确有效,则直接跳到CODE区执行正常的应用程序;若有IAP程序复位指令,微处理器接收该指令后,放弃当前程序并跳到BOOT区执行IAP程序,与上位机通信在线更新水表应用程序,更新完成后检查应用程序是否正确完整,IAP程序结束。
文档编号G06F9/445GK102880480SQ20121005947
公开日2013年1月16日 申请日期2012年3月8日 优先权日2012年3月8日
发明者王炎喜, 董有议, 熊金华 申请人:深圳市华旭科技开发有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1