如下是结合我的经验对公司代码架构的一些建议,可惜只是建议!
一、CAN数据发送结构体构造问题
1、存在问题:传输数据时代码量大,不灵活。
2、建议
二、数据类型不一致问题
三、CAN通讯配置的一些问题(波特率不一致)
42/(4+6+7)/6= Mbps
四、对协议层架构的一些建议
1、存在问题:每个数据都需要两个函数封装,数据多的话,代码比较冗余,封装性不好。
2、建议:
面向对象方式构建代码结构
(1)封装性:封装就是把具有相同性质的变量、函数及接口统一管理,只能通过某个渠道才能访问里面的内容,把共有的东西抽象出来。
(2)继承性:最强大的功能之一就是代码重用, 而继承就是实现代码重用的主要手段之一。 继承允许一个类继承另一个类的属性和方法 。
(3)多态性:高内聚、低耦合的系统结构,使得系统更灵活、更容易扩展,而且成本较低。
(4)同时对有多个共性的传感器驱动(超声波、TOF做了同样的优化工作)
五、数据可靠性完整性的问题
1、存在问题:数据可靠性完整性可能被破坏
2、建议:
六、对程序版本号的建议
1、建议
2、测试结果
七、对碰撞状态上报的建议
1、存在问题:状态不一致上报碰撞状态,有可能碰撞信息没有及时上报。
2、建议:
碰撞状态出现后一直上报,直到解除碰撞状态。
八、防御性编程的建议(栈溢出钩子函数)