打造属于自己的4G DTU:软件篇——系统设计(5g dtu 应用)

选择系统

4G DTU软件基于FreeRTOS系统进行设计开发。

常用的嵌入式软件架构有前后台系统RTOS系统,前后台系统的优点是使用简单易于理解,而缺点是后台功能函数按顺序执行,当某个功能占用CPU时间过长的时,会导致程序的实时性变差;RTOS系统的优点是可以将任务分成了不同等级,从而使任务按优先级获得不同的CPU占用时间,而缺点是会占用一部分FLASH和RAM。

由于4G DTU主要用于数据交互,对本地数据和网络数据处理的实时性要求较高,并且需对大块的数据BUFFER进行管理,因此个人觉得选用RTOS系统进行软件设计较为合适。嵌入式常用的RTOS系统有FreeRTOS和uC/OS,这两个系统功能相当,但是FreeRTOS完全免费,商业应用无过多限制。

打造属于自己的4G DTU:软件篇——系统设计(5g dtu 应用)

前后台系统

打造属于自己的4G DTU:软件篇——系统设计(5g dtu 应用)

RTOS系统

软件分层

按不同的功能和接口对软件进行分层分文件设计,每个功能模块封装成为一个C和H文件,使工程层次清晰。这样设计的优势如下:

1、更换MCU或者其它硬件,只需更改硬件抽象层对应的文件,应用程序层不受影响;

2、功能模块变动,只需升级相应的功能模块,其他的模块不受影响,应用程序层也不受影响;

3、便于以后代码管理、模块移植。

打造属于自己的4G DTU:软件篇——系统设计(5g dtu 应用)

软件分层

打造属于自己的4G DTU:软件篇——系统设计(5g dtu 应用)

文件列表

任务划分

FreeRTOS以任务调度的方式运行,高优先级的任务可获得更多的CPU时间。4G DTU工程总共划分了3个任务,vNetTask任务优先级最高,用来处理与云端服务器交互的数据;vCanBusTask任务用来与外部总线通信,将外部总线的数据进行处理交给vNetTask使用;vFuncTask任务优先级最低,用来处理配置信息、状态指示等低实时性功能。

打造属于自己的4G DTU:软件篇——系统设计(5g dtu 应用)

任务划分

总结

以上为4G DTU项目软件系统设计的一点心得体会,希望对读者有所帮助。

限于水平,文中错漏之处在所难免,敬请海涵[作揖]。

相关新闻

联系我们
联系我们
公众号
公众号
在线咨询
分享本页
返回顶部