STM32F429 CAN通信不成功

发布者:RadiantDreams最新更新时间:2019-08-28 来源: eefocus关键字:STM32F429  CAN通信  不成功 手机看文章 扫描二维码
随时随地手机看文章

最近因为CAN的问题弄了我好几天时间,总结一下:


1:STM32F407开发板回环模式与CAN1给CAN2发数据都是OK的,STM32F429不行。


对比初始化函数以及检查硬件,120欧电阻还是要的,什么光耦电路能去掉还是去掉,H/L直接从TJA1050芯片出来即可。


2:STM32F407与STM32F429回环模式,can1与can2通信都成功,但是STM32F407与STM32F429通信不成功。


这是为毛啊??不急,再做个试验,STM32F429两块板子能通信成功,不存在硬件问题了,定位应该是波特率不匹配的问题。


按照STM32规格书波特率计算方式应该是:


can波特率=(APB1时钟/(分频系数*(SYNC_SEG+BS1+BS2)));


再看看自己的配置,怎么看怎么对啊,虽然429系统时钟是180M,407系统时钟是168M,但407与429都是设置的是250kbps。


好吧,代码是看不出结果的。


1:拿个示波器来量吧,唯一借的一个示波器是坏的,can是通过H/L之前的电平差来计算1与0的,所以可以测试出来,我是没测成功,放弃。


2:弄个can转USB吧,407设置250Kbps通信成功,429设置250Kbps不成功。


更加确认波特率不对,但是为什么不对呢,那就去研究下系统时钟的产生,大概说下:


系统时钟可以由好几种方式产生,我的板是有外部晶振产生的,一般STM32官方固件库默认外部晶振是8M,但是我这块板子外部晶振是25M,那就怀疑是不是这方面配置,修改下配置25M(具体配置自行百度),再次试验,成功。


关键字:STM32F429  CAN通信  不成功 引用地址:STM32F429 CAN通信不成功

上一篇:STM32F103VET6多串口调试
下一篇:STM32F429之使用FPU和DSP

推荐阅读最新更新时间:2024-11-09 19:40

恩智浦最新CAN收发器系列保障CAN通信安全而无需加密
中国上海,2018年1月31日 - 恩智浦半导体NXP Semiconductors(纳斯达克代码:NXPI),汽车半导体解决方案供应商,今日宣布推出新的安全型CAN收 发器系列,该系列为安全型CAN通信提供无缝、高效的解决方案,且无需软件或加密。 每辆汽车中都使用CAN网络来连接电子控制单元(ECU),预计未来十年它仍会是主导性网络。随着汽车电子设备不断增多,跨CAN网络交换的实时数据量也在增加。 CAN是一个强大的多点连接网络,迄今为止,车内大部分数据通信都没有安全措施,单个受到破坏的ECU可以直接访问联网的ECU。目前市场上的安全解决方案 使用基于加密和复杂密钥管理的报文认证码 (MAC)来保护CAN通信,但这势必造成C
[汽车电子]
STM32F429 CAN通信不成功
最近因为CAN的问题弄了我好几天时间,总结一下: 1:STM32F407开发板回环模式与CAN1给CAN2发数据都是OK的,STM32F429不行。 对比初始化函数以及检查硬件,120欧电阻还是要的,什么光耦电路能去掉还是去掉,H/L直接从TJA1050芯片出来即可。 2:STM32F407与STM32F429回环模式,can1与can2通信都成功,但是STM32F407与STM32F429通信不成功。 这是为毛啊??不急,再做个试验,STM32F429两块板子能通信成功,不存在硬件问题了,定位应该是波特率不匹配的问题。 按照STM32规格书波特率计算方式应该是: can波特率=(APB1时钟/(分频系数*
[单片机]
STM32F429 >> 10. DMA_直接存储器访问
本工程板级支持包文件适用于野火stm32f429 开发板。 DMA 传输实现高速数据移动过程无需任何CPU 操作控制 其支持以下三种传输方式: 外设到存储器传输; 存储器到外设传输; 存储器到存储器传输。 功能框图: ① 外设通道选择 外设通道选择所解决的问题是决定哪一个外设作为数据传输的源地址或目标地址。 DMA1 请求映射: DMA2 请求映射: 每个外设请求都占用一个数据流通道,相同外设请求可以占用不同数据流通道。 ② 仲裁器 仲裁器管理数据流方法分为两个阶段。 第一阶段属于软件阶段,我们在配置数据流时可以通过寄存器设定其优先级别,具体配置DMA_SxCR 寄存器PL 位,可以设置为
[单片机]
<font color='red'>STM32F429</font> >> 10. DMA_直接存储器访问
STM32F429芯片带FIFO的DMA传输实现过程
STM32系列芯片都内置DMA外设,其中很多系列的DMA配备了FIFO。这里以STM32F429芯片及开发板为例,演示一下带FIFO的DMA传输实现过程。 大致情况是这样的,我用TIMER1通道1的比较事件触发DMA,将内存数据写进UART5的数据发送寄存器DR,并将UART5的TX/RX脚物理短接,同时开启UART5的DMA接收模式,即DMA将UART5接收到的数据写到指定的接收内存区。下面重点介绍UART5的DMA方式的接收过程。 首先使用STM32CubeMx完成基本配置。 下面是关于TIM1的相关配置,使用通道1的比较事件触发DMA,将内存数据写入UART的发送数据寄存器。为什么还要搞个定时器来触发,其中一个原因是
[单片机]
<font color='red'>STM32F429</font>芯片带FIFO的DMA传输实现过程
STM32F429 如何使用LCD(2)
刚开始是在安富莱V6的开发板上焊接的调试了好久。需要注意的坑有一下: (1)该屏幕使用LCD驱动为ILI9806 ,使用的触摸芯片是ft6206。 第一步选择:LCD使用RGB8888 IM0-2 = 1 1 0 (电阻配置) 第二步:配置LTDC接口参照上一章,同时需要留出来SPI接口对LCD进行配置。 第三步:配置IIC接口的ft6206芯片。 引脚分配: CS:PB9 SDI :PB5 SCL :PB6 INT: H7 SDA:PB3 SCL :PB6(复用) /* GPIOs Configuration / / ±-----------------------±----------------------±------
[单片机]
<font color='red'>STM32F429</font> 如何使用LCD(2)
STM32F429——GPIO
除非特别说明,否则本部分适用于整个 STM32F4xx 系列 七 .通用I/O简介 7.1 GPIO 简介 每个通用 I/O 端口包括 4 个 32 位配置寄存器(GPIOx_MODER、GPIOx_OTYPER、GPIOx_OSPEEDR 、GPIOx_PUPDR), 2个32位数据寄存器( GPIOx_IDR 和GPIOx_ODR)、1个32位置位/复位寄存器(GPIOx_BSSR)、1个32位锁定寄存器(GPIOx_LCKR)和 2个32位复用功能选择寄存器(GPIOx_AFRH和GPIOx_AFRL)。 7.2 GPIO工作模式 GPIO可以设置成一下模式 1.输入模式(上拉/下拉/浮空) 在输入模式
[单片机]
STM32F429 >> 4. 使用固件库点亮LED
本工程板级支持包文件适用于野火stm32f429 开发板。 在这一节的当中,最核心的内容就两点: 学会创建自己的项目; 学会创建板级支持包; STARTUP :放置启动文件 STM32F4xx_StdPeriph_Driver 和CMSIS :放置库文件,不需要改动 DOC :放置说明文件 USER :放置用户创建或要进行改动的文件 bsp_led.h /** ****************************************************************************** * @file bsp_led.h * @author Waao * @version V1.0
[单片机]
<font color='red'>STM32F429</font> >> 4. 使用固件库点亮LED
热门资源推荐
热门放大器推荐
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved