Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🎨 有大量更改,见以下内容 #15

Open
wants to merge 8 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 52 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
/*********************************************************************
*
* J1939 Main Source Code
*
*********************************************************************
*
* 本程序是由XieTongXueFlyMe对现有的J1939协议文档分析,和对前辈的贡献总结,
* 写出的一套开源的J1939驱动。
* 本协议特点:
* 1.易移植(不针对特定的CAN硬件,只要满足CAN2.0B即可)
* 2.轻量级(可适应低端的MCU)
* 3.支持多任务调用接口(可用于嵌入式系统)
* 4.双模式(轮询或者中断,逻辑更加简单明了)
* 5.不掉帧(数据采用收发列队缓存)
*
* 源代码下载:
* https://github.com/XeiTongXueFlyMe/J1939
* 源代码临时手册Web站点:
* https://xeitongxueflyme.github.io/j1939doc.github.io/
*
* Version Date Description
* -------------------------------------------------------------------
* v1.0.0 2017/06/04 首个版本 Version 1 测试版发布
* v1.0.1 2017/08/04 完善功能
* v1.1.0 2017/11/22 Version 1 稳定发布版
* v2.0.1 2017/11/24 Version 2 测试版发布
* v2.0.2 2018/01/03 解决V2.0.1 遗留问题
* v2.1.0 2018/01/20 Version 2 稳定发布版
* Author Date changes
*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*XeiTongXueFlyMe 17/06/04 首个版本
*XeiTongXueFlyMe 17/08/04 增加对TP的支持
*XeiTongXueFlyMe 17/11/24 增加对多路CAN硬件的收发,和报文处理
*XeiTongXueFlyMe 17/11/29 增加请求和响应API
*XeiTongXueFlyMe 17/12/07 重做TP接受API函数
*XeiTongXueFlyMe 17/12/08 增加软件滤波器
*XeiTongXueFlyMe 18/01/03 重做接受发送API,简化协议栈初始化调用逻辑
*SummerFalls 20/08/04 简化了宏开关;
统一自定义类型大小写及_t后缀;
将多组宏定义分组并改换成枚举类型;
调整枚举类型变量的命名中相同字段所处的位置,
例如将 'J1939_CONTROL_BYTE_' 提前,
方便编辑器快速联想同类型变量;
将不同CAN节点的相关全局变量使用数组进行管理,
去除了多个switch代码段所造成的代码重复性高的问题,
减少了Flash占用,增强了可扩展更多CAN节点的可能性,
同时增加代码灵活性,尽量避免增减节点时对协议栈主源文件的大量改动;
注释统一使用 MISRA-C 的标准 C 注释:/* Comment */;
缩进统一使用空格缩进,避免不同编辑器缩进量差异;
将本段版本历史记录信息从各个源文件中提取出来,单独存放于 CHANGELOG 文件中。
**********************************************************************/

36 changes: 18 additions & 18 deletions readme.md
Original file line number Diff line number Diff line change
@@ -1,39 +1,39 @@
# 简述
1. 源代码下载:
> https://github.com/XeiTongXueFlyMe/J1939
2. 源代码说明书Web站点:(临时,已准备建站,以后分享更多的汽车通信协议)
> https://xeitongxueflyme.github.io/j1939doc.github.io/
3. 技术支持群:
> QQ群:264864184 ,为了节约时间成本,群主可以免费为大家解决最新协议栈问题(老版本,群里也有其他工程师为大家解决,群主不做答)
# 简述 <a title="Hits" target="_blank" href="https://github.com/SummerFalls/J1939"><img src="https://hits.b3log.org/SummerFalls/J1939.svg"></a>

# 历史版本变更
1. 源代码下载:
> <https://github.com/XeiTongXueFlyMe/J1939>
2. 源代码说明书Web站点:(临时,已准备建站,以后分享更多的汽车通信协议)
> <https://xeitongxueflyme.github.io/j1939doc.github.io/>
3. 技术支持群:
> QQ群:264864184 ,为了节约时间成本,群主可以免费为大家解决最新协议栈问题(老版本,群里也有其他工程师为大家解决,群主不做答)

## 历史版本变更

> 版本说明:V a,b,c
1. a 代表版本号
2. b 代表稳定的版本号
3. c 代表基于稳定版本号上功能添加,新的功能不一定稳定

> 如果是工程使用,建议使用 **V x.x.0** 例如 ***V 1.1.0*** ,***V 2.1.0***
1. a 代表版本号
2. b 代表稳定的版本号
3. c 代表基于稳定版本号上功能添加,新的功能不一定稳定

> 如果是工程使用,建议使用 **V x.x.0** 例如 ***V 1.1.0*** ,***V 2.1.0***

## J1939Socket API Version 2
### J1939Socket API Version 2

Version | date |Description
------------- | ------------- | -------------
[V2.1.0] |2018/1/20| Version 2.1 稳定发布版。经过实用性测试,Version 2.1相对Version 1.1做了很大的改进,Version 2.1版本更加的偏向于使用,移植更加的简单,架构和注解更加的规范。API(接口)更加人性化,实用化(感谢许多同行的使用反馈)。
[V2.0.1] |2017/12/8| 地址竞争,动态地址分配等J1939网络功能不能使用,本版本为V2.1.0发布前的测试版本。


## J1939Socket API Version 1
### J1939Socket API Version 1

Version | date | Description
------------- | ------------- | -------------
[V1.1.0] | 2017/11/22 | Version 1.1 稳定发布版。\n * 实现了J1939-21文档规定的功能(数据链路层)。\n * 轻量级(可适应低端的MCU)建议低端的MCU采用本版本移植开发。\n * 使用示例参考附带的readme.md和<http://blog.csdn.net/xietongxueflyme> \n * 移植示例参考 <http://blog.csdn.net/xietongxueflyme>
[V1.1.0] | 2017/11/22 | Version 1.1 稳定发布版。\n * 实现了J1939-21文档规定的功能(数据链路层)。\n * 轻量级(可适应低端的MCU)建议低端的MCU采用本版本移植开发。\n * 使用示例参考附带的readme.md和<http://blog.csdn.net/xietongxueflyme> \n * 移植示例参考 <http://blog.csdn.net/xietongxueflyme>
[V1.0.1] | 2017/08/04 | 完善功能,增加对TP(长帧,多组)传输的支持,\n 1.增加非阻塞API调用接口 \n * 使用示例参考附带的readme.md和<http://blog.csdn.net/xietongxueflyme> \n * 移植示例参考 <http://blog.csdn.net/xietongxueflyme> \n * 本文档不对Version 1 进行阐述。
V1.0.0 | 2017/06/04 | 首个开源版本\n 1.增加双模式(轮询或者中断,逻辑更加简单明了)\n 2.可适应低端的MCU \n 3.支持多任务调用接口(可用于嵌入式系统)
V0.0.1 | 2017/05/04 | 初建工程\n * 易移植(不针对特定的CAN硬件,只要满足CAN2.0B即可)

[V1.1.0]: https://github.com/XeiTongXueFlyMe/J1939/releases/tag/v1.1.0 "V1.1.0下载地址"
[V1.0.1]: https://github.com/XeiTongXueFlyMe/J1939/releases/tag/V1.01 "V1.0.1下载地址"
[V1.0.1]: https://github.com/XeiTongXueFlyMe/J1939/releases/tag/V1.01 "V1.0.1下载地址"
[V2.0.1]: https://github.com/XeiTongXueFlyMe/J1939/releases/tag/V2.0.1 "V2.0.1下载地址"
[V2.1.0]: https://github.com/XeiTongXueFlyMe/J1939/releases/tag/V2.1.0 "V2.1.0下载地址"

Loading