国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

LPC11Cx系列CAN總線位定時參數(shù)計(jì)算方法校正

2013-09-21 10:44:14盧斌董書大
關(guān)鍵詞:位值緩沖區(qū)寄存器

盧斌,董書大

(湖南大學(xué) 電氣與信息工程學(xué)院,長沙 410082)

引 言

LPC11Cx系列是NXP公司的高性價比Cortex-M0構(gòu)架ARM微控制器產(chǎn)品,內(nèi)嵌CAN總線控制器。CAN總線位定時參數(shù)決定CAN總線能否按給定速率正常通信及其穩(wěn)定性,但在實(shí)踐中發(fā)現(xiàn),原版用戶手冊及國內(nèi)譯本在CAN總線位定時參數(shù)配置寄存器的表述上有誤,導(dǎo)致用戶CAN總線無法正常通信。下面將校正錯誤,并給出CAN總線位定時參數(shù)具體計(jì)算實(shí)例。

1 位定時時序及參數(shù)

依據(jù)CAN總線規(guī)范,LPC11Cx系列的位時間被分成4個段:同步段、時間傳播段、相位緩沖區(qū)段1和相位緩沖區(qū)段2,位時序如圖1所示。

圖1 位時序

圖1中,每一個段包含有一個指定的、可編程的時間量子數(shù),如表1所列。

表1 CAN總線位時間參數(shù)

表1中,時間量子tq是位時間長度的基本時間單元,tq與CAN總線控制器的系統(tǒng)時鐘fsys可確定參數(shù)BRP,即tq=BRP/fsys。同步段SYNC_SEG是位時間的第一部分,CAN總線的邊沿電平會在這里發(fā)生。傳播時間段PROP_SEG用于對CAN總線網(wǎng)絡(luò)內(nèi)的物理延遲時間進(jìn)行補(bǔ)償。相位緩沖區(qū)段TSEG1和TSEG2包圍著采樣點(diǎn)。(重新)同步跳轉(zhuǎn)寬度SJW實(shí)現(xiàn)對邊沿相位誤差作出補(bǔ)償。

2 位定時寄存器描述校正

LPC11Cx系列CAN總線的位時間參數(shù)通過其內(nèi)部的32位控制寄存器CANBT來定義及編程。CANBT寄存器的詳細(xì)描述如表2所列。

表2 CAN總線位定時寄存器CANBT

請注意,表2中上標(biāo)注*表示硬件把寫入這些位的值理解為位值+1。NXP公司原版用戶手冊及國內(nèi)譯本還同時標(biāo)注了SJW、TSEG2,說明這兩項(xiàng)也需進(jìn)行位值+1處理,但這么做得出的位定時參數(shù)無法使CAN總線正常通信。

3 位定時參數(shù)計(jì)算

根據(jù)表1各定時位段定義,設(shè)目標(biāo)系統(tǒng)晶振頻率為12MHz,經(jīng)過LPC11Cx內(nèi)部PLL鎖相環(huán)電路倍頻后,系統(tǒng)時鐘頻率fsys為48MHz?,F(xiàn)要求CAN總線速率fc為500kHz,則CAN總線時鐘周期tc=1/fc=1/500kHz=2μs,位定時參數(shù)計(jì)算如下。

首先,將系統(tǒng)時鐘頻率fsys進(jìn)行6分頻,即fsys/(BRP+1)=fsys/6=48MHz/6=8MHz,由此確定參數(shù)BRP=0x000101,而時間量子tq=1/8MHz=0.125 μs,CAN總線時鐘周期tc包含的時間量子tq的個數(shù)為:tc/tq=2μs/0.125μs=16。

然后,根據(jù)CAN總線傳輸介質(zhì)及應(yīng)用場合的電磁干擾狀況,適當(dāng)確定CAN總線位定時寄存器CANBT的SJW、TSEG1、TSEG2的值,使這3項(xiàng)位值之和等于16。這里對3項(xiàng)位值取值為:SJW=0x11,TSEG1=0x0110,TSEG2=0x111,并滿足:SJW+(TSEG1+1)+TSEG2=16。

最后,將上述位值組合,確定位定時參數(shù)值為0x76C5,這個值將被配置寫入到位定時寄存器CANBT中。在Cortex-M0的CMSIS軟件開發(fā)標(biāo)準(zhǔn)框架下,可很方便地調(diào)用LPC11Cx片上CAN API函數(shù)集來編程,如下語句即可實(shí)現(xiàn)寄存器CANBT的位定時參數(shù)配置:

結(jié) 語

實(shí)踐表明,在改變系統(tǒng)時鐘頻率、CAN總線通信速率及CANBT寄存器的各項(xiàng)位值的情況下,校正之后的位定時參數(shù)計(jì)算方法所獲得的參數(shù)值均能滿足CAN總線正常通信的要求,消除了用戶手冊誤導(dǎo)。如何提高CAN總線通信的可靠性,在位定時方面還需要根據(jù)CAN總線的具體工作狀況不斷進(jìn)行實(shí)驗(yàn),并對CANBT寄存器的各項(xiàng)位值仔細(xì)調(diào)整而得到最佳值。

[1] 牛躍聽,周立功.CAN總線嵌入式開發(fā)——從入門到實(shí)戰(zhàn)[M].北京:北京航空航天大學(xué)出版社,2012.

[2] 楊春杰.CAN總線技術(shù)[M].北京:北京航空航天大學(xué)出版社,2010.

[3] NXP Semiconductors.LPC111x/LPC11Cxx User manual[DB/OL].[2012-03].http://www.zlgmcu.com/NXP/LPC1000/LPC1100.asp.

[4] ISO 11898-2007Road vehicles——Controller area network(CAN)——Part 5:High-speed medium access unit with lowpower mode[S].

猜你喜歡
位值緩沖區(qū)寄存器
嵌入式系統(tǒng)環(huán)形緩沖區(qū)快速讀寫方法的設(shè)計(jì)與實(shí)現(xiàn)
教學(xué)中如何滲透位值制
把握學(xué)科本質(zhì) 積淀數(shù)學(xué)素養(yǎng)
中國教師(2021年2期)2021-03-03 05:06:05
Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
“位值”背后的基本活動
“滿十進(jìn)一”的體驗(yàn)與“位值”的理解——以《認(rèn)識三位數(shù)》的教學(xué)為例
分簇結(jié)構(gòu)向量寄存器分配策略研究*
關(guān)鍵鏈技術(shù)緩沖區(qū)的確定方法研究
地理信息系統(tǒng)繪圖緩沖區(qū)技術(shù)設(shè)計(jì)與實(shí)現(xiàn)
電視技術(shù)(2012年1期)2012-06-06 08:13:58
斗六市| 梅州市| 六枝特区| 海兴县| 青龙| 东乡县| 石柱| 邵武市| 麻江县| 龙岩市| 邵东县| 阳泉市| 安阳市| 龙门县| 武鸣县| 北海市| 夏河县| 西乡县| 庆城县| 乌拉特前旗| 留坝县| 堆龙德庆县| 海阳市| 高唐县| 铁力市| 出国| 柯坪县| 甘孜| 青田县| 玛沁县| 岳西县| 钟山县| 延边| 汝州市| 高雄县| 杨浦区| 宜都市| 竹北市| 子洲县| 宜宾县| 汕尾市|