嵌入式程序架构的可行性建议

如下是结合我的经验对公司代码架构的一些建议,可惜只是建议!

一、CAN数据发送结构体构造问题

在这里插入图片描述
在这里插入图片描述

1、存在问题:传输数据时代码量大,不灵活。

2、建议
在这里插入图片描述
在这里插入图片描述

二、数据类型不一致问题

在这里插入图片描述

三、CAN通讯配置的一些问题(波特率不一致)

在这里插入图片描述

42/(4+6+7)/6= Mbps

四、对协议层架构的一些建议

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

1、存在问题:每个数据都需要两个函数封装,数据多的话,代码比较冗余,封装性不好。
2、建议:
面向对象方式构建代码结构
(1)封装性:封装就是把具有相同性质的变量、函数及接口统一管理,只能通过某个渠道才能访问里面的内容,把共有的东西抽象出来。

在这里插入图片描述

(2)继承性:最强大的功能之一就是代码重用, 而继承就是实现代码重用的主要手段之一。 继承允许一个类继承另一个类的属性和方法 。
(3)多态性:高内聚、低耦合的系统结构,使得系统更灵活、更容易扩展,而且成本较低。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(4)同时对有多个共性的传感器驱动(超声波、TOF做了同样的优化工作)

五、数据可靠性完整性的问题

1、存在问题:数据可靠性完整性可能被破坏

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、建议:
在这里插入图片描述

在这里插入图片描述

六、对程序版本号的建议

在这里插入图片描述

1、建议
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、测试结果

在这里插入图片描述

七、对碰撞状态上报的建议

在这里插入图片描述

1、存在问题:状态不一致上报碰撞状态,有可能碰撞信息没有及时上报。
2、建议:
碰撞状态出现后一直上报,直到解除碰撞状态。

在这里插入图片描述

八、防御性编程的建议(栈溢出钩子函数)

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值