1.一种智能电能表远程升级方法,其特征在于,包括:
在智能电能表的程序中,为每一个可独立升级的程序模块构造一个函数调用过渡接口;
所述函数调用过渡接口为一个有固定的绝对地址定位的函数,其参数包括功能子函数索引和数据指针、返回参数是用于反馈接口执行情况的无符号整型,函数调用过渡接口用于根据传入的功能子函数索引参数来调用模块内对应的功能子函数,并将数据指针参数传递给该功能子函数,以使其它模块能够任意调用该模块内部的功能子函数;
任何一个程序模块需要独立升级更新功能时,保证其函数调用过渡接口的绝对地址是固定的,以使该模块内被其它的模块调用的功能子函数能够任意更新改动功能代码,而不用考虑因为重新编译链接时,功能子函数的地址改变、与其它模块不兼容的问题,从而使智能电能表程序中的一个或多个程序模块得以独立地升级。
2.根据权利要求1所述的智能电能表远程升级方法,其特征在于,将模块所有的程序分配在指定flash地址,并保证函数调用过渡接口分配在该段的启始地址,以保证每个模块的函数调用过渡接口的绝对地址固定不变,以使模块程序功能升级时,更改后的模块程序经重新编译链接,虽然其中的功能子函数的地址对应改变,但也不会影响其它的模块的调用,从而实现智能电表固件模块化的独立升级。