新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > ADuC703x系列LIN波特率計(jì)算

ADuC703x系列LIN波特率計(jì)算

作者: 時(shí)間:2012-09-19 來源:網(wǎng)絡(luò) 收藏

簡介

本文引用地址:http://m.butianyuan.cn/article/185754.htm

  本應(yīng)用筆記旨在讓用戶熟悉用于ADI公司x系列器件UART通信的除數(shù)值COMDIV0、COMDIV1和COMDIV2的計(jì)算。本應(yīng)用筆記假定用戶熟悉本地互連網(wǎng)絡(luò)() 2.0規(guī)范。

  本文分為以下三部分:

  ● 幀報(bào)頭:本部分說明幀報(bào)頭和同步字節(jié)。

  ● LIN波特率計(jì)算:本部分說明一種使用LIN硬件同步(LHS)功能來計(jì)算UART除數(shù)值的方法。

  ● LIN波特率計(jì)算C代碼示例:本部分提供LIN波特率計(jì)算部分所述計(jì)算的C代碼實(shí)現(xiàn)示例。

  LIN幀報(bào)頭

  標(biāo)準(zhǔn)LIN通信幀如圖1所示,它分為如下部分:斷開符號(hào)、同步字節(jié)、受保護(hù)標(biāo)識(shí)符、數(shù)據(jù)和校驗(yàn)和。

圖1. LIN幀

圖1. LIN幀

  ●斷開符號(hào)表示LIN分包的開始。

  ●同步字節(jié)標(biāo)定從機(jī)的波特率。

  ●受保護(hù)標(biāo)識(shí)符用于識(shí)別從機(jī)。

  ●校驗(yàn)和既可以是根據(jù)發(fā)送數(shù)據(jù)計(jì)算的傳統(tǒng)校驗(yàn)和,也可以是根據(jù)受保護(hù)標(biāo)識(shí)符和數(shù)據(jù)計(jì)算的擴(kuò)展校驗(yàn)和。

  圖2更加詳細(xì)地顯示了同步字節(jié),它是以主機(jī)所需的波特率發(fā)送的字節(jié)0xAA.確定主機(jī)比特率的標(biāo)準(zhǔn)方法是測量從第一個(gè)下降沿到第五個(gè)下降沿的時(shí)間,然后將此值除以8,便得到所需的比特率。此值可以用于計(jì)算UART除數(shù)值。具體計(jì)算詳見后續(xù)部分。本應(yīng)用筆記假設(shè)用戶已設(shè)置LHS MMR來為同步字節(jié)的全部8位計(jì)時(shí)(LHSCON1 = 0x62)。

圖2. LIN同步字節(jié)

圖2. LIN同步字節(jié)

LIN波特率計(jì)算

  使用LHS系統(tǒng),用戶在收到同步字節(jié)后會(huì)得到LHSVAL0中的值。LHSVAL0包含8 TBIT的等效值,此值用于產(chǎn)生UART除數(shù)COMDIV0、COMDIV1和小數(shù)除數(shù)COMDIV2的值。有關(guān)UART的更多信息,請(qǐng)參閱相關(guān)x數(shù)據(jù)手冊(cè)。

  為利用標(biāo)準(zhǔn)波特率發(fā)生器計(jì)算COMDIV0/COMDIV1值,需使用如下基本UART方程式:

  其中:

  DL為COMDIV0和COMDIV1的值。

  CD為時(shí)鐘分頻比。

  就LHSVAL0而言,所需的波特率如下:

  (LHSVAL0采用內(nèi)部5.12 MHz時(shí)鐘,假設(shè)將LHSCON1配置為測量8 TBIT.)將標(biāo)準(zhǔn)波特率方程式與所需波特率方程式合并:

  僅使用標(biāo)準(zhǔn)波特率發(fā)生器方程式可得出所需的COMDIV0/ COMDIV1值。

  為提高精度,使用x小數(shù)除數(shù)和以上針對(duì)標(biāo)準(zhǔn)波特率發(fā)生器計(jì)算的DL值(COMDIV0/COMDIV1)。使用小數(shù)除數(shù)的方程式如下:

  其中,M和N為COMDIV2值。


上一頁 1 2 下一頁

關(guān)鍵詞: ADuC 703x 703 LIN

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉