0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Verilog/FPGA开源项目介绍

OpenFPGA ? 来源:OpenFPGA ? 作者:碎碎思 ? 2021-11-17 11:19 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

优秀的 Verilog/FPGA开源项目介绍(七)- CAN0、CAN总线介绍《【科普】CAN总线介绍及FPGA实现方案简介》

1、CAN权威文档CAN总线有两个ISO国际标准:ISO11898 和 ISO11519。其中:

ISO11898 定义了通信速率为 125 kbps~1 Mbps 的高速 CAN 通信标准,属于闭环总线,传输速率可达1Mbps,总线长度 ≤ 40米。

ISO11519 定义了通信速率为 10~125 kbps 的低速 CAN 通信标准,属于开环总线,传输速率为40kbps时,总线长度可达1000米。

ISO 11898 文档在这里

链接//caiyun.139.com/m/i?1B5C60ZjPpmPA提取码:PR9t复制内容打开和彩云PC客户端,操作更方便哦

3、【小梅哥FPGA】使用FPGA实现CAN通信的例子(NIOS+CAN IP)

https://bbs.elecfans.com/jishu_1385802_1_1.html

这是小梅哥FPGA开发板上的实例,之所以放到第一个是因为这是目前FPGA实现CAN通信的比较完美的解决方案,单纯使用硬件描述语言的IP,会有一些不可预知的BUG,但是使用软核处理器是比较完美的。

上图就是整个项目的系统方案,也很好理解,就不过多赘述了。

SJA100就是CAN控制器

VP230就是CAN收发器

PS:代码在上诉链接中。

4、liteCAN

https://github.com/WangXuan95/liteCAN

基于 FPGA 的轻量级CAN总线控制器

此项目实现的是CAN控制器,CAN收发器还是需要外挂。

简介CAN总线作为工业和汽车领域最常用的通信总线,具有拓扑结构简洁、可靠性高、传输距离长等优点。CAN总线的非破坏性仲裁机制依赖于帧ID,CAN2.0A和CAN2.0B分别规定了11bit-ID(短ID) 的标准帧和29bit-ID(长ID) 的扩展帧,另外,还有远程帧这种数据请求机制。关于CAN总线的更多知识可以参考这个科普文章。

CAN总线的复杂机制决定了控制器设计的复杂性。本库实现了一个轻量化但完备的CAN控制器,特点如下:

本地ID可固定配置为任意短ID。

发送 : 仅支持以本地ID发送数据长度为4Byte的帧。

接收 : 支持接收短ID或长ID的帧,接收帧的数据长度没有限制 (即支持 0~8Byte ) 。

接收帧过滤 : 可针对短ID和长ID独立设置过滤器,只接收和过滤器匹配的数据帧。

自动响应远程帧 : 当收到的远程帧与本地ID匹配时,自动将发送缓存中的下一个数据发送出去。若缓存为空,则重复发送上次发过的数据。

平台无关 :纯 RTL 编写 (SystemVerilog),可以在 Altera 和 Xilinx 等各种 FPGA 上运行。

设计文件说明

设计相关的4个文件在 RTL 文件夹中,各文件功能如下表。你只需将以上4个文件包含进工程,就可以调用can_top.sv进行更高层次的CAN通信业务的二次开发。

此项目非常完整,项目由中文说明,完备的TB及测试方案。

5、CAN-fpga

https://github.com/AlxyF/CAN-fpga

项目没有任何介绍,看文件结构,是基于Quartus II建立的,结构和上一项目完全没什么区别。整个项目应该是完备的,有兴趣可以看看。

6、sja1000

https://github.com/zhaotliang/sja1000

这个就是Verilog编写的外挂SJA100的驱动程序,这里就不过多介绍了。

7、Click_MCP25625

https://github.com/MikroElektronika/Click_MCP25625

这是MCP25625(控制器+收发器集合)的SPI驱动(ARM单片机的)。

https://github.com/UberLambda/CANnuccia

这个项目和这个功能一样,就不展开描述了。

USB-CAN(调试利器)因为本期没几个开源项目,所以这里在推荐几个开源的USB-CAN方案,大部分都是可以直接打板使用的。

一、stm32f0 + CAN收发器TJA1051/3

https://canable.io/

https://codechina.csdn.net/mirrors/HubertD/candleLight?utm_source=csdn_github_accelerator

https://github.com/HubertD/candleLight/blob/master/export/v1.1/pdf/candleLight-v1.1.pdf

ta有完全开源的软硬件及上位机支持,支持windos和linux Stock can并且都免驱哦。且支持Python

上述的方案某宝上也有成品。

二、KS22方案

http://bbs.eeworld.com.cn/thread-491860-1-1.html

相关文档及上位机:

三、open-usb-can

https://github.com/fabiobaltieri/open-usb-can

文档很完备。

该项目是基于 ATMega32U2 和 MCP2515 SPI CANBus 控制器的 USB 转 CANBus 接口

最后,还是感谢各个大佬开源的项目,让我们受益匪浅。后面有什么感兴趣方面的项目,大家可以在后台留言或者加微信留言,今天就到这,我是爆肝的碎碎思,期待下期文章与你相见。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1646

    文章

    22072

    浏览量

    619840
  • CAN
    CAN
    +关注

    关注

    57

    文章

    2923

    浏览量

    468532
  • 通信
    +关注

    关注

    18

    文章

    6211

    浏览量

    138032

原文标题:优秀的 Verilog/FPGA开源项目介绍(七)- CAN通信

文章出处:【微信号:Open_FPGA,微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    火爆开发中 | 开源FPGA硬件板卡,硬件第一期发布

    开源FPGA项目自发布以来,得到了众多开发者的关注,涉及工业、通信、车载等多个行业的100+位工程师报名参与设计,并分为:硬件组、FPGA组、linux组。其中硬件组率先开始启动
    发表于 07-09 13:54

    RT-Thread荣获2025优秀开源项目 | 新闻速递

    6月底,RT-Thread睿赛德受邀参与由上海开源信息技术协会主办的2025上海开源创新精英荟。上海市商委副主任张杰出席会议并致辞。RT-Thread嵌入式操作系统项目凭借其卓越的技术创新与
    的头像 发表于 07-04 09:04 ?1843次阅读
    RT-Thread荣获2025优秀<b class='flag-5'>开源</b><b class='flag-5'>项目</b> | 新闻速递

    开源分享】:开源小巧的FPGA开发板——Icepi Zero

    活动推荐:拥抱开源!一起来做FPGA开发板啦!https://bbs.elecfans.com/jishu_2491185_1_1.html 项目计划以紫光同创PG2L25H-6IMBG325为
    发表于 06-09 14:01

    拥抱开源!一起来做FPGA开发板啦!

    与开发,包括编写Verilog或VHDL代码、进行逻辑功能仿真、调试以及与硬件接口的适配等工作,适合熟悉FPGA开发流程、具备逻辑设计能力的伙伴。 主要任务: 基于开源项目功能需求反馈
    发表于 06-06 14:05

    使用IP核和开源库减少FPGA设计周期

    FPGA 开发的目标是按时、按质交付项目。 然而,这一目标说起来简单,实现起来老费劲了。根据业内最广泛的调查之一,西门子威尔逊集团 2022 年的调查(https
    的头像 发表于 01-15 10:47 ?758次阅读
    使用IP核和<b class='flag-5'>开源</b>库减少<b class='flag-5'>FPGA</b>设计周期

    Verilog 测试平台设计方法 Verilog FPGA开发指南

    Verilog测试平台设计方法是Verilog FPGA开发中的重要环节,它用于验证Verilog设计的正确性和性能。以下是一个详细的Verilog
    的头像 发表于 12-17 09:50 ?1202次阅读

    凌蒙派OpenHarmony开源项目荣获本期Gitee官方推荐

    近日,我司凌蒙派OpenHarmony开源项目荣获本期Gitee官方推荐。本期Gitee官方推荐不仅是对凌蒙派OpenHarmony开源项目的高度认可,也是对我司在推动
    的头像 发表于 11-20 01:04 ?882次阅读
    凌蒙派OpenHarmony<b class='flag-5'>开源</b><b class='flag-5'>项目</b>荣获本期Gitee官方推荐

    开源ISP(Infinite-ISP)介绍

    公开,都是给一堆函数自己调用调试。因为厂商将 ISP 算法视为保持市场竞争力的独特秘诀。虽然之前介绍了很多开源ISP项目(优秀的 Verilog/F
    的头像 发表于 11-18 10:21 ?1371次阅读
    <b class='flag-5'>开源</b>ISP(Infinite-ISP)<b class='flag-5'>介绍</b>

    Verilog vhdl fpga

    岗位职责 1.负责FPGA的架构设计、代码编写、仿真等; 2.协同软、硬件工程师完成系统联调和测试; 3.负责项目FPGA设计的相关文档编写及维护;任职要求 1.硕士及以上学历,电子、通信、计算机
    发表于 11-12 16:40

    如何自动生成verilog代码

    介绍几种自动生成verilog代码的方法。
    的头像 发表于 11-05 11:45 ?1111次阅读
    如何自动生成<b class='flag-5'>verilog</b>代码

    FPGA加速深度学习模型的案例

    名称 :DE5Net_Conv_Accelerator 应用场景 :面向深度学习的开源项目,实现了AlexNet的第一层卷积运算加速。 技术特点 : 采用了Verilog语言进行编程,与PCIe接口相集成,可以直接插入到
    的头像 发表于 10-25 09:22 ?1310次阅读

    基于FPGA实现数码管显示

    本文介绍数码管显示译码基本工作原理及Verilog HDL驱动代码编写,进一步熟练掌握FPGA入门基础知识。
    的头像 发表于 10-24 14:44 ?1901次阅读
    基于<b class='flag-5'>FPGA</b>实现数码管显示

    基于FPGA的JPEG-LS图像压缩器介绍

    现在来看一下GitHub上面一个开源的JPEG LS算法的Verilog实现
    的头像 发表于 10-15 17:27 ?1301次阅读
    基于<b class='flag-5'>FPGA</b>的JPEG-LS图像压缩器<b class='flag-5'>介绍</b>

    ElfBoard开源项目|“智慧光伏”开源项目技术文档

    最大化地捕捉和利用。下面就和各位小伙伴详细介绍一下这一开源项目是怎样实现的。环境说明1.开发环境操作系统:Ubuntu18.0464位版2.交叉编译工具链:arm-
    的头像 发表于 10-11 15:52 ?870次阅读
    ElfBoard<b class='flag-5'>开源</b><b class='flag-5'>项目</b>|“智慧光伏”<b class='flag-5'>开源</b><b class='flag-5'>项目</b>技术文档

    【招聘】verilog vhdl FPGA

    1.熟悉FPGA架构及应用,熟悉图像算法的FPGA实现。 2.熟悉verilog vhdl,熟悉Xilinx或Intel等开发工具。 3.有AI算法 fpga实现经验优先。 4.本科及
    发表于 09-02 15:50