一种基于分层架构思想的单片机程序构建方法与流程

文档序号:30083926发布日期:2022-05-18 05:07阅读:来源:国知局

技术特征:
1.一种基于分层架构思想的单片机程序构建方法,其特征在于,构建单片机程序时,采用分层构建,从上往下分别为:设备层、业务逻辑层、传输协议层、通信接口层、硬件抽象层和物理层;包括如下步骤:s1根据实际业务场景创建一个设备模块对象,完成设备层的创建;s2根据实际业务场景创建一个或多个业务逻辑模块对象,完成业务逻辑层的创建;s3根据实际业务场景中的数据传输协议定义一个或多个传输协议模块对象,完成传输协议层的创建;s4根据实际业务场景创建一个或者多个通信接口模块对象,完成通信接口层的创建;s5通过芯片配置,生成硬件抽象模块对象,完成硬件抽象层的创建;s6将设备模块对象、业务逻辑模块对象、传输协议模块对象、通信接口模块对象和设备抽象模块对象进行相邻层的相互绑定,完成上下层通信通道;s7在main函数中的无线循环语句中调用全局设备模块对象变量的work函数;s8如果有定时器处理,则在定时器回调函数中调用全局设备模块对象变量的timerhandler函数;s9在设备抽象层的数据发送完毕回调函数中调用全局设备模块对象变量的completesendoneframe函数;s10在设备抽象层的数据发送完毕回调函数中调用全局设备模块对象变量的completereadoneframe函数;s11单片机程序建构完成。2.根据权利要求1所述的基于分层架构思想的单片机程序构建方法,其特征在于,程序内部数据从业务逻辑层逐层向下传递到物理层或者从物理层逐层向上传递到业务逻辑层,每一层只与相邻层通过模块对象的api进行数据交换。3.根据权利要求1所述的基于分层架构思想的单片机程序构建方法,其特征在于:定义一个全局设备模块对象变量,定义一个或多个全局业务逻辑模块对象变量,并为每个业务逻辑模块对象变量定义与之对应的一个全局通信接口模块对象变量和一个全局传输协议模块对象变量,并在程序的入口main函数中初始化以上定义的这些变量。4.根据权利要求1所述的基于分层架构思想的单片机程序构建方法,其特征在于:设备层是对整个设备的抽象,存储设备的一般属性信息和所有下层业务逻辑层中实现的抽象结构体对象指针;用于抽象设备层的结构体必须以设备层基础结构体定义,除了程序初始化阶段,其他阶段6层结构之外的代码只能通过设备模块对象提供的api接口调用6层结构之内的功能,起到对外屏蔽内部细节的作用。5.根据权利要求1所述的基于分层架构思想的单片机程序构建方法,其特征在于:业务逻辑层是单片机程序的核心,负责业务数据最终处理以及业务流程的实现,可以由多个业务逻辑模块对象组成,每个业务逻辑模块对象只负责一类业务数据处理以及相关的业务流程的实现;业务逻辑层中每个业务模块对象中都存储着上层设备模块对象的指针和与之一一对应的下层传输协议层的传输协议模块对象的指针,通过此指针实现数据向下层传输协议层的传递,同时还存储这传输协议层对外提供的标准api函数接口,通过下层传输协议层对这些函数的调用实现数据从传输协议层传递到业务逻辑层。6.根据权利要求1所述的基于分层架构思想的单片机程序构建方法,其特征在于:传输
协议层负责接收业务逻辑模块传递的参数并以此生成相应的原始协议数据传递给下层通信接口层;负责将通信接口层上传的原始协议数据,解析成具有实际含义的数据,并存储在传输协议模块对象中,然后通知上层业务逻辑层模块对象协议解析完毕,并对数据进行业务处理。7.根据权利要求1所述的基于分层架构思想的单片机程序构建方法,其特征在于:通信接口层通过对硬件抽象层的api接口进行二次封装以及fifo发送队列的引入,实现以dma方式发送和接收协议数据;具体来说就是接收上层传输协议层模块对象传递下来的原始协议数据并添加至fifo发送队列尾部,当上一帧协议数据发送完毕后,从发送队列头部取出一帧协议数据通过hal的api接口发送至物理层;当物理层接收完一帧原始协议数据后通过hal回调函数通知通信接口层模块对象一帧协议数据接收完毕,并存储起来通知传输协议模块对象解析接收到的协议数据。8.根据权利要求1所述的基于分层架构思想的单片机程序构建方法,其特征在于:硬件抽象层实现对各种硬件寄存器操作进行函数化封装,一般单片机厂商会提供完整的hal库。9.根据权利要求1所述的基于分层架构思想的单片机程序构建方法,其特征在于:物理层包括各种数据寄存器以及数据收发需要的物理实体。

技术总结
本发明公开了一种基于分层架构思想的单片机程序构建方法,涉及计算机技术领域。本发明构建单片机程序时,采用分层构建,从上往下分别为:设备层、业务逻辑层、传输协议层、通信接口层、硬件抽象层和物理层;程序内部数据从业务逻辑层逐层向下传递到物理层或者从物理层逐层向上传递到业务逻辑层,每一层只与相邻层通过模块对象的API进行数据交换。本发明基于分层架构思想的单片机程序构建方法,使得代码层次结构分明,容易阅读;分层和模块化实现了代码的弱耦合,使得程序代码容易扩展和修改。改。改。


技术研发人员:张帅 王超 刘金海 郑瑞良
受保护的技术使用者:王超
技术研发日:2022.01.28
技术公布日:2022/5/17
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1