找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3551|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

CAN波特率設(shè)置

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:274692 發(fā)表于 2018-1-11 10:34 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
CAN時(shí)鐘源的選擇有兩種,一種為總線時(shí)鐘,一種為外接時(shí)鐘
波特率計(jì)算公式:F(Baud) = F/(BRP* (1+TSEG2+TSEG1))
波特率設(shè)置相關(guān)寄存器
7
6
5
4
3
2
1
0
SJW1
SJW0
BRP5
BRP4
BRP3
BRP2
BRP1
BRP0
Table1 CANBTR0
SJW1
SJW0
Synchronization  Jump Width
0
0
1  Tq clock cycle
0
1
2  Tq clock cycle
1
0
3  Tq clock cycle
1
1
4 Tq clock cycle
Table2 SJW
BRP5
BRP4
BRP3
BRP2
BRP1
BRP0
Prescaler value
0
0
0
0
0
0
1
0
0
0
0
0
1
2
0
0
0
0
1
1
3
0
0
0
1
1
1
4
..
..
..
..
..
..
..
1
1
1
1
1
1
64
Table3 Baud Rate Prescaler
7
6
5
4
3
2
1
0
SAMP
TSEG22
TSEG21
TSEG20
TSEG13
TSEG12
TSEG11
TSEG10
Table4 CANBTR1
TSEG22
TSEG21
TSEG20
Time  Segment 2
0
0
0
1
0
0
1
2
..
..
..
...
1
1
0
7
1
1
1
8
Table5 TSEG2
TSEG13
TSEG12
TSEG11
TSEG10
Prescaler value
0
0
0
0
1
0
0
0
1
2
0
0
1
0
3
0
0
1
1
4
..
..
..
..
..
1
1
1
0
15
1
1
1
1
16
例程
1.        總線時(shí)鐘40MHZ,設(shè)置CAN波特率為500KHZ
40MHZ/500KHZ=80
80 = BRP *(1+TSEG2+TSEG1) =10 * 8;
所以設(shè)置BRP =8,TSEG2=4,TSEG1=5. SJW=0x01對(duì)應(yīng)寄存器值
CAN0BTR0=0x47;                                                                           
CAN0BTR1=0x43;
2.        總線時(shí)鐘40MHZ,設(shè)置CAN波特率為250KHZ
40MHZ/250KHZ=16
80 = BRP *(1+TSEG2+TSEG1) =16 * 8;
所以設(shè)置BRP =8,TSEG2=4,TSEG1=5,SJW=0x01對(duì)應(yīng)寄存器值
CAN0BTR0=0x4F;                                                                           
CAN0BTR1=0x43;

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表