历史上的今天
今天是:2024年12月19日(星期四)
2020年12月19日 | 神舟IV学习笔记-控制器局域网bxCAN(十六)
2020-12-19 来源:eefocus
CAN采用两线通信,简单能实现高波特率通信,是最有前途的现场总线之一。但是CAN的协议较复杂,涉及报文等专业内容。好在STM32的CAN容易上手,通过CAN_Init(CAN1, &CAN_InitStructure);和
CAN_FilterInit(&CAN_FilterInitStructure);配置好CAN,
就可以通过CAN_Transmit(CAN1, &TxMessage);发送和
CAN_Receive(CAN1, CAN_FIFO0, &RxMessage);接收。
上面只是大体的介绍了下STM32的CAN配置,具体的使用可以参考下面附件的CAN代码,包含CAN测试模式,CAN查询,CAN中断三个应用。这里特别地说明下CAN波特率的计算:
CAN在APB1总线上,所以CAN 波特率设置中需要的就是PCLK1 的时钟。
CAN_InitStructure.CAN_Mode=CAN_Mode_LoopBack;
CAN_InitStructure.CAN_SJW=CAN_SJW_1tq;
CAN_InitStructure.CAN_BS1=CAN_BS1_8tq;
CAN_InitStructure.CAN_BS2=CAN_BS2_7tq;
CAN_InitStructure.CAN_Prescaler=5;
波特率设计到BS1、BS2和Prescaler三个参数
通过上面部分的时钟设置我们已经可以算出我们的波特率了
CAN_bps = PCLK1 / ((1 + 7 + 8) * 5) = 36M/80=450KHZ
史海拾趣
|
转自:http://www.1000bbs.com/dispbbs.asp?boardid=51&Id=261604 首先声明一下身份:辽宁锦州安防器材经销商、工程商。 我开始选择红外一体机,是因为甲方点着名要这玩意。 选了哪些厂家的哪些型号的红外机,恕我不一一列举了。总之,深圳的、 ...… 查看全部问答> |
|
WINCE SDK平台改变后出现的问题: fatal error LNK1112: module machine type \'ARM\' conflicts with target machine type \'SH3\' 这要怎么解决啊???… 查看全部问答> |
|
各位大虾,我采用了sim300d gprs模块,北京的神州行wap gprs 卡,通过ppp协议来连接cmwap,现在通过了pap验证,可以拿到ISP server的ip address和分配的本地ip address。有几个问题: 1,如何自动获取dns。如果在ipcp请求中请求分配dn ...… 查看全部问答> |
|
例如 taskA 在moduleA中定义, 而moduleB与moduleA有可能是嵌套关系,也可能是并列的被高层模块调用,那么moduleB能调用taskA么?… 查看全部问答> |
|
我现在程序在外部flash运行,LPC2292,外部flash是sst39vf1601,在外部flash的0x10000地址(也就是arm看到的0x80010000地址开始我是烧的fpga程序,这个已经是没问题的),在用EASYJTAG-H外部仿真的时候,在MAIN入口处,我也看到了数据。startup.s的设 ...… 查看全部问答> |
|
大家好,我在编译一个代码出现了栈溢出警告, 理论上讲我的数据段为: map文件 6 152 bytes of CODE memory 1 268 bytes of DATA memory (+ 56 absolute ) 463 bytes of CONST memory 而栈的使用情况 ...… 查看全部问答> |
|
美国全国运输安全委员会(National Transportation Safety Board, 简称NTSB)的调查人员正在分析近一个月前发生的两起波音(Boeing Co., BA) 787梦想飞机起火事故是否与锂电池内部细微结构(即树枝晶)的构造有关。相关事故已导致波音787飞机禁飞。 & ...… 查看全部问答> |
|
在电子电路中,常可以看到VCC、VDD和VSS三种不同的符号,它们有什么区别呢?一、解释VCC:C=circuit 表示电路的意思, 即接入电路的电压;VDD:D=device 表示器件的意思, 即器件内部的工作电压;VSS:S=series 表示公共连接的意思,通常指电路公共接 ...… 查看全部问答> |




