下载此文档

stm32can波特率设置指南.docx


文档分类:IT计算机 | 页数:约6页 举报非法文档有奖
1/6
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/6 下载此文档
文档列表 文档介绍
STM32的CAN波特率计算
STM32里的CAN ,, 带有FIFO,中断等, 这里主要提一下内部的时钟应用.
bxCAN挂接在APB1总线上,采用总线时钟,所以我们需要知道APB1的总线时钟是多少. 我们先看看下图,看看APB1总线时钟:
APB1时钟取自AHB的分频, 而AHB又取自系统时钟的分频, 系统时钟可选HSI,HSE, PLLCLK, 这个在例程的RC设置里都有的,
然后再看看有了APB1的时钟后,如何算CAN的总线速率, 先看下图:
有了上边的这个图,基本就清楚了.
                       总线时钟MHz   (3+TS1+TS2)*(BRP+1)
===================================================
下面是我的计算:
= CAN_SJW_1tq;
= CAN_BS1_3tq;
注意//#define CAN_BS1_3tq                 ((uint8_t)0x02) /*!< 3 time quantum */
= CAN_BS2_5tq;
= 4;//2
nominal bit time(3+5+1)tq=9tq
关于分频系数查看
static void SetSysClockTo72(void) 函数
/* HCLK = SYSCLK */
/* PCLK2 = HCLK */
/* PCLK1 = HCLK/2 */
所以can时钟 72MHZ/2/4=9 Mhz
tq=1/36Mhz
波特率为 1/nominal bit time= 9/9=1MHZ
=========================================
-----------------------------------------------
              ====================================================
void CAN_Configuration(void)
{
CAN_InitTypeDef         CAN_InitStructure;
CAN_FilterInitTypeDef   CAN_FilterInitStructure;
/* CAN register init */
CAN_DeInit();
CAN_StructInit(&CAN_InitStructure);
/* CAN cell init */
=DISABLE;
=DISABLE;
=DISABLE;
=DIS

stm32can波特率设置指南 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数6
  • 收藏数0 收藏
  • 顶次数0
  • 上传人86979448
  • 文件大小121 KB
  • 时间2017-12-01
最近更新