发明名称 一种电话支付终端软件平台的实现方法
摘要 本发明提供一种电话支付终端软件平台的实现方法,将同一型号的产品的软件平台自下而上设置底层、第二层、第三层及最上层,底层设置有引导和升级程序模块、电源管理模块、内存管理模块以及中断前后台管理模块,第二层设置有事件管理模块、设备管理模块、硬件配置模块以及通用驱动逻辑,最上层设置有测试程序模块;其中处于下层的组成部分为被上层的组成部分所依赖,同一层次的组成部分可以互相依赖,所述软件平台还包括不严格属于所述第二层及最上层的数据库模块和金融业务工具函数库。本发明基于凌阳的16位处理器环境的电话支付终端软件平台,能够有效降低上层应用软件与硬件耦合度,简化上层软件开发细节,加速在不同型号硬件产品上迁移。
申请公布号 CN102902544A 申请公布日期 2013.01.30
申请号 CN201210376484.0 申请日期 2012.09.29
申请人 福建升腾资讯有限公司 发明人 林志伟;张登峰;余杭军;陈成秋
分类号 G06F9/44(2006.01)I 主分类号 G06F9/44(2006.01)I
代理机构 福州市鼓楼区京华专利事务所(普通合伙) 35212 代理人 宋连梅
主权项 一种电话支付终端软件平台的实现方法,其特征在于:该方法针对同一型号的产品时,将所述软件平台自下而上设置底层、第二层及最上层,所述底层设置有引导和升级程序模块、电源管理模块、内存管理模块以及中断前后台管理模块,所述第二层设置有事件管理模块、设备管理模块、硬件配置模块以及通用驱动逻辑,所述最上层设置有测试程序模块;其中处于下层的组成部分为被上层的组成部分所依赖,同一层次的组成部分可以互相依赖;所述软件平台还包括不严格属于所述第二层及最上层的数据库模块和金融业务工具函数库,该数据库模块和金融业务工具函数库最多只有部分代码需要依赖底层中的硬件管理功能及第二层中的部分驱动;所述引导和升级程序模块:用于实现在电话支付终端产品上加载该软件平台环境,以及对电话支付终端产品的软件进行升级;所述电源管理模块:用于识别电话支付终端产品的启动模式、运行时的电源供电状态、并对外提供电源状态发生变化的事件,同时,通知上层次的软件响应电源状态的变化以进行对应的处理;所述内存管理模块:用于管理电话支付终端产品的内存分配,并统计软件运行过程中的内存使用情况、监控软件运行过程中出现的内存异常;所述内存管理模块针对凌阳的16位单片机环境内存高度有限的特点,采用了堆栈共生的模式进行设计,堆栈均不固定大小,堆栈是否有空间进行再分配,以堆实际使用内存的结束地址和栈顶地址是否出现冲突作为判断标准;所述中断前后台管理模块:用于管理电话支付终端产品上的中断处理程序,并通过软件模拟一套可以修改优先级中断体系,且所描述的优先级为中断等待的优先级,而不指中断重入的优先级;所述事件管理模块:用于管理该软件平台上所产生的所有事件,并分发事件给对应的处理程序进行处理,同时定义了一套在所有电话支付终端产品上可通用的事件索引号,并预留了部分索引号空间供应用程序和具体型号的产品自行定义和扩展新的事件;所述设备管理模块:用于管理一个产品上所有功能设备的调度流程,调度流程包括产品启动时的设备初始化、设备的打开、设备的关闭、对设备的读数据访问、对设备的写数据访问、对设备的通用控制访问、以及对设备的电源事件转达处理;所述设备管理模块定义了设备访问的统一接口,供上层次的软件以相同的接口形式访问所有设备,该统一接口采用了不定参数的调用约定,可以便于后续设备驱动接口扩展时对旧接口的兼容;所述硬件配置模块:用于实现在具体产品上功能设备的数量定义、功能设备的组合定义、以及功能设备对应的硬件引脚和参数等信息的定义;所述通用驱动逻辑模块:用于实现各功能设备的与硬件管脚定义等硬件参数无关的驱动功能,该模块通过调用硬件配置模块中的硬件定义和参数定义,驱动各硬件模块完成对应功能设备的功能;所述数据库模块:用于实现一个为电话支付应用所定制的数据存储功能,所述的数据库是由一组数据表配置信息、以及一组数据库操作接口组成;该数据表配置信息包含了应用数据的版本信息、数据表的数量、各数据表的存储空间大小、以及各数据表的存储位置信息,并在实际数据存储区内的数据信息与该配置信息不匹配的时候将提示异常,格式化数据存储区内的空间,以避免数据错误而引起金融功能的差错,所述数据库模块定义的一组数据库操作接口,包括打开关闭数据表、增加、删除、修改数据记录、查询数据记录、更新数据索引、查询数据库容量接口;所述金融业务工具函数库:用于实现金融业务常用的功能函数,主要包括标准的金融加解密函数和金融数据格式转换函数;所述测试程序模块:用于实现一组标准的生产测试程序模块,以给工厂生产、以及售后维修提供一个测试设备功能正常性的标准化的软件通道;该方法还针对多个不同型号的产品时建立一在所有型号产品上通用的公共软件文件集合、一在不同型号产品上具有差异的差异软件文件集合以及一为了支撑在该电话支付终端软件平台上完成上层应用开发而提供的软件开发包资料集合,形成文件管理结构;所述公共软件文件集合包括所述电源管理模块、内存管理模块、中断前 后台管理模块、事件管理模块、设备管理模块、硬件配置模块、通用驱动逻辑、数据库模块以及金融业务工具函数库;且包括代码源文件、资源文件、配置文件等支撑软件开发的文件资料,这个集合的文件在不同型号产品的开发过程存在且只存在一份,不会随同不同型号产品的开发和维护而产生新的副本;所述差异软件文件集合包括所述的引导和升级程序模块、硬件配置模块以及测试程序模块;所述软件开发包资料集合包括匹配不同型号产品的成套的SDK资料,任一套SDK资料集合包含了至少1份C语言头文件,至少为1份库文件。
地址 350000 福建省福州市仓山区金山工业区金山大道618号21#、22#、55#