杰发科技AC7840——CAN通信简介(1)

简介

7840支持4路CAN-FD

Demo调试

官网下载demo,烧录,打开串口发现打印如下。原因是没有连接CAN盒子,总线错误。

CAN收发器端波形 

CAN_L有信号,CAN_H没有

波形放大

GPIO端波形

有持续波形输出

波形放大查看,有50Us延迟(不排除测试仪表的延迟原因)

接CAN盒子

以图莫斯为例(便宜好用,500-1200RMB)

总线协议使用CAN,可以快速探测找到仲裁域波特率为500K

双击进入数据展示界面

重启发现串口没有数据打印了

测试CAN1

Demo板子的CAN1因为接了LED灯暂时不能使用为CAN

测试CAN2

CAN2接上之后,将代码的CAN2开启,代码写的还行,可以在这里直接修改使用的CAN通道

编译烧录后没有信号

难道是没有CAN收发器的原因??

于是把CAN2的GPIO引脚接在CAN0引脚上,此时CAN0没有初始化。

发现有信号了。

仔细一看,是PC16,也就是RX有信号,感觉很奇怪,demo只写了发送,没有做接收处理。

于是怀疑是高低电平的原因,把CANRX接在3.3V的电源上,果然有了同样的信号。

在此有了疑问,为什么直接给3.3V电源就能产生RX信号,需要和大佬请教下。

通过断点发现,在走完这一行代码后开始有接收信号出现。

分析CANRX出现的原因

留坑 后续再填

分析CAN2没有信号的原因

需要配置内部上拉,对上拉理解更深了。

GPIO_DRV_SetPullSel(PORTC, 16U,PORT_INTERNAL_PULL_UP_ENABLED);
GPIO_DRV_SetPullSel(PORTC, 17U,PORT_INTERNAL_PULL_UP_ENABLED);

CAN0在硬件上做了上拉

测试CAN3

同样上拉后,有数据

至此,Demo的测试已经OK,下一步看看CAN的细节

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/218389.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入理解人工智能中的图神经网络:原理、应用与未来展望

导言: 图神经网络(Graph Neural Networks, GNNs)作为人工智能领域的一项前沿技术,在社交网络分析、推荐系统、生物信息学等多个领域展现出卓越的性能。本文将深入剖析图神经网络的原理、当前应用场景以及未来可能的发展方向。 1.…

认识产品经理以及Axure简单安装与入门

目录 一.认识产品经理 1.1.项目团队 1.2.概述 1.3.认识产品经理 1.4.产品经理工作范围 1.5.产品经理工作流程 1.6.产品经理的职责 1.7.产品经理的分类 1.8.产品经理能力要求 1.9.产品工具 1.10.产品体验报告 二.Axure简介 三.应用场景 四.安装与汉化 4.1.安装 4…

神经网络是如何工作的? | 京东云技术团队

作为一名程序员,我们习惯于去了解所使用工具、中间件的底层原理,本文则旨在帮助大家了解AI模型的底层机制,让大家在学习或应用各种大模型时更加得心应手,更加适合没有AI基础的小伙伴们。 一、GPT与神经网络的关系 GPT想必大家已…

1.6 实战:Postman请求Get接口-获取用于登录的图形验证码

上一小节我们学习了Postman的布局,对Postman有了一个整体的认知,本小节我们就来实操一下Get接口。 我们打开Postman,点击我们之前创建的请求”获取登录页验证码“。我们在地址栏里填入获取登录页验证码的接口地址。怎么查看这个接口地址呢?我们打开校园二手交易系统,打开…

【Spring】00 入门指南

文章目录 1.简介2.概念1)控制反转(IoC)2)依赖注入(DI) 3.核心模块1)Spring Core2)Spring AOP3)Spring MVC4)Spring Data5)Spring Boot 4.编写 Hel…

极速学习SSM之SpringMVC笔记

文章目录 一、SpringMVC简介1、什么是MVC2、什么是SpringMVC3、SpringMVC的特点 二、HelloWorld1、开发环境2、创建maven工程a>添加web模块b>打包方式:warc>引入依赖 3、配置web.xmla>默认配置方式b>扩展配置方式 4、创建请求控制器5、创建springMVC…

CSS的盒子模型(重点)

网页布局的三大核心:盒子模型、浮动、定位 网页布局的过程: 1. 先准备好相关的网页元素,网页元素基本都是盒子 Box 。 2. 利用 CSS 设置好盒子样式,然后摆放到相应位置。 3. 往盒子里面装内容.网页布局的核心本质: 就…

掌握魔法绘制图片、PDF剪辑器功能,智能生成AI文章,高效工作从此开始

在这个信息爆炸的时代,如何高效地处理和利用各种文件格式成为了我们日常工作的关键。今天,我们将为您介绍一款强大的工具,它能够智能生成AI文章,高效掌握魔法绘制图片和PDF剪辑器功能,为您的工作带来前所未有的便捷和高…

互联网加竞赛 python+opencv+机器学习车牌识别

0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 基于机器学习的车牌识别系统 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:4分工作量:4分创新点:3分 该项目较为新颖,适…

解决:AttributeError: ‘dict’ object has no attribute ‘has_key’

解决:AttributeError: ‘dict’ object has no attribute ‘has_key’ 文章目录 解决:AttributeError: dict object has no attribute has_key背景报错问题报错翻译报错位置代码报错原因解决方法方法一方法二方法三今天的分享就到此结束了 背景 在使用之…

java导出word使用模版与自定义联合出击解决复杂表格!

1. 看一下需要导出什么样子的表格 如图所示,这里的所有数据行都是动态的,需要根据查询出来的数据循环展示。 如果只是这样的话,使用freemarker应该都可以搞定,但是他一列中内容相同的单元格,需要合并。 这对于表格样式…

Cosmopolitan Libc:让 C 语言一次构建、随处运行 | 开源日报 No.109

jart/cosmopolitan Stars: 12.9k License: ISC Cosmopolitan Libc 使 C 成为一种构建一次运行在任何地方的语言,就像 Java 一样,但它不需要解释器或虚拟机。相反,它重新配置了标准 GCC 和 Clang 以输出符合 POSIX 标准的多语言格式&#xff…

MySQL的事务以及springboot中如何使用事务

事务的四大特性: 概念: 事务 是一组操作的集合,它是不可分割的工作单元。事务会把所有操作作为一个整体,一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。 注意: 默认MySQ…

【网络安全】HTTP Slowloris攻击原理解析

文章目录 Slowloris攻击的概念Slowloris攻击原理Slowloris攻击的步骤其他的DDoS攻击类型UDP FloodICMP (Ping) FloodSYN FloodPing of DeathNTP AmplificationHTTP FloodZero-day DDoS 攻击 推荐阅读 Slowloris攻击的概念 Slowloris是在2009年由著名Web安全专家RSnake提出的一…

教育数字化转型 赋能家庭场景自主学习习惯养成

北京市气象台12月12日22时升级发布暴雪橙色预警信号,北京市教委决定自12月13日开始,全市中小学幼儿园采取学生临时居家学习措施。自疫情以来,家庭已经成为另一个学习中心,学校不再是教育的孤岛。 学习方式的变革,数字…

Etcd实战(二)-k8s集群中Etcd数据存储

1 介绍 k8s中所有对象的manifest都需要保存到某个地方,这样他们的manifest在api server重启和失败的时候才不会丢失,因此引入了etcd。在k8s中只有api server和etcd直接交互,其它组件都通过api server间接和etcd交互,这样做的好处…

目标检测锚框

目标检测锚框 最开始呢,我们需要先介绍一下框,先学会一下怎么画框 导入所需要的包 from PIL import Image import d2lzh_pytorch as d2l import numpy as np import math import torch展示一下本次实验我们用到的图像,猫狗 d2l.set_figsiz…

python自动化测试实战 —— WebDriver API的使用

软件测试专栏 感兴趣可看:软件测试专栏 自动化测试学习部分源码 python自动化测试相关知识: 【如何学习Python自动化测试】—— 自动化测试环境搭建 【如何学习python自动化测试】—— 浏览器驱动的安装 以及 如何更…

Linux shell编程学习笔记35:seq

0 前言 在使用 for 循环语句时,我们经常使用到序列。比如: for i in 1 2 3 4 5 6 7 8 9 10; do echo "$i * 2 $(expr $i \* 2)"; done 其中的 1 2 3 4 5 6 7 8 9 10;就是一个整数序列 。 为了方便我们使用数字序列,Linux提供了…

理解Socket

前言 我在去年就学习过Java中Socket的使用,但对于Socket的理解一直都是迷迷糊糊的。看了网上很多关于Socket的介绍,看完还是不太理解到底什么是Socket,还是很迷。直到最近在学习计算机网络,我才对Socket有了一个更深地理解。之前一…