大总结:诊断小系统搭建步骤总结--Apple的学习笔记

因为我有一个TI的arm bb black开发板及一个英飞凌的TC275 MCU开发板,然后我想做一个把PC及2块板子连接起来玩玩,就想到了UDS诊断小项目。

一,目的

  1. 学习python界面开发--已完成。
  2. 加深python类相关设计方法--已完成。
  3. 复习arm设备驱动开发框架--已完成。
  4. 完成一个复杂系统底层搭建,为将来开发上位机应用做准备--已完成。
image.png
image.png

二,项目启动:工欲善其事必先利其器

  1. 先搭建了驱动开发环境
    bb-black驱动开发系统环境搭建(VNC/SSH/NFS)--Apple的学习笔记
  2. 搭建了软件编译调试环境
    ubuntu vscode内核模块软件开发环境搭建--Apple的学习笔记

三,项目调研:入门

  1. 先复习了设备树的应用
    Linux基于pinctrl的LED控制—Apple的学习笔记
  2. socketCAN驱动应用
    bb-black添加SocketCAN驱动--Apple的学习笔记
  3. python socket通信学习
    python socket通信--Apple的学习笔记
  4. python界面开发入门
    python GUI ttk库 -- Apple的学习笔记
    python模拟IG报文发送界面--Apple的学习笔记

四,项目评估:通信设计

  1. 数据交互的雏形设计
    诊断小系统通信设计(初步)--Apple的学习笔记
  2. 验证python client设计
    诊断系统python Client端架构验证--Apple的学习笔记
  3. 验证arm/linux server设计
    诊断系统Linux Server端架构验证--Apple的学习笔记
  4. arm和TC275 CAN通信电路验证
    购买了1050 can传输器模块,用杜邦线连接后,示波器查看报文,验证电路搭建成功。
    TC275及arm socketCAN硬件系统验证--Apple的学习笔记
  5. 通信重构及调试
    将之前提出的疑问逐个解决,进行调试解决bug
    通信架构及锁重构,解决coredump--Apple的学习笔记

五,项目完成:代码优化及资料打包

  1. 资料打包上传到gitee
    Python_arm_TC275诊断小系统完成--Apple的学习笔记

六,剩余问题记录

  1. python发送的报文十六进制都是\x打头的,但是将字符串转十六进制最后还要替换成\x比较麻烦,我直接点击send后在python中直接发送b\x02\x10\x03。将来需要做应用层工具开发的时候再修改。此次目的是搭建底层系统。
  2. arm socketCAN中没有处理busoff的API,只做了read和write。后续准备深入下socketCAN的源码及内核驱动的数据流。
    已完成:socketCAN内核源码分析是否支持busoff自恢复--Apple的学习笔记
  3. c++11的智能指针传递给thead后编译报错,所以没有用智能指针,后续关于智能指针需要做个专题学习。

你可能感兴趣的:(大总结:诊断小系统搭建步骤总结--Apple的学习笔记)