# lin_uds_bootloader
**Repository Path**: yongwong/lin_uds_bootloader
## Basic Information
- **Project Name**: lin_uds_bootloader
- **Description**: 基于LIN总线实现的固件在线升级功能
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 15
- **Created**: 2024-05-11
- **Last Updated**: 2024-05-11
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# lin_uds_bootloader
## 介绍
基于LIN UDS协议实现的固件在线升级功能,此项目会包含一些常用的单片机范例程序工程,目前只有STM32F405的,后续会陆续增加,也可以参考我们提供的范例程序自行移植。
上位机测试使用图莫斯的TCANLINPro软件,要求最低版本为v2.1版本。
软件下载地址为:[点击下载](http://www.toomoss.com/download/7-cn.html)
USB转LIN工具使用的是图莫斯的USB转CAN/LIN适配器,结合TCANLINPro软件,使用我们提供的固件升级配置文件,可以很容易的测试验证功能。
LIN适配器购买链接:[点击购买](https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w4004-15987418095.11.c2b37a2aRS7Fxr&id=569249781751)
## 软件架构
UDS LIN固件升级单片机程序主要包含LIN数据收发,UDS协议解析,UDS服务响应几个模块,LIN数据接收采用FIFO循环缓冲区接收数据,可以较高效率接收数据,防止丢帧。UDS协议解析采用状态机模式进行单帧,多帧接收解析,然后将接收完毕的请求传递给UDS服务处理函数进行数据处理。
## 移植说明
针对不同的单片机,需要修改的是LIN数据收发方式,单片机内部Flash读写方式不一样,所以针对不同的单片机,主要是要移植这两个功能模块,UDS解析和处理部分可以根据自己需求适当修改即可,后续会逐步完善不同单片机的范例程序。
## 测试使用
使用图莫斯的USB转LIN适配器和TCANLINPro软件可以快速的实现功能测试验证,也可以根据自己的需求,自己写上位机软件来实现固件升级,图莫斯也提供UDS的二次开发接口函数。
### 单片机程序下载
- 针对不同的单片机,测试工程和目录可能有所不同,请根据实际情况调整,此处以STM32F405/407单片机为例进行说明。
### 上位机软件使用
- 将图莫斯的LIN1接到对应的LIN总线上,打开TCANLINPro软件,点击LIN1后面的启动按钮启动LIN,然后再弹出界面选择LIN波特率为19200。
- 再点击【高级功能】->【LIN UDS固件升级】,点击界面的【流程文件】选择按钮,选择“stm32f405/test/lin_bootloader.tflash”流程文件,然后再点击【流程设置】按钮,打开流程编辑界面,选择“程序文件下载”行,然后在左边更改APP程序文件所在路径,再点击【更新到列表】,【应用到执行器】即可。
- 回到固件升级主界面后,点击【执行】按钮即可开始固件升级下载,升级结果在列表中显示。
## 免责声明
该代码可以免费自由使用,但是文件头注释不要修改,得保留作者信息和代码出处。由于作者能力有限,不能保证代码没任何问题,若使用该代码因为代码问题造成的任何后果本人概不负责。
## 联系我们
若有意向进行商业合作,可以通过以下方式联系我们,若已经购买图莫斯CAN/LIN工具,可以联系我们免费获得技术支持:
- 邮箱:wdluo@toomoss.com
- 电话:15086931395(微信同号)
- QQ:188298598