ADuC703x系列LIN波特率計(jì)算
替換波特率:
上式可簡(jiǎn)化為:
為減少小數(shù)除數(shù)計(jì)算所用的復(fù)雜數(shù)學(xué)計(jì)算,將DL的值(COMDIV0/COMDIV1)限制為2的冪數(shù)。例如,如果DL = 17,則計(jì)算N時(shí)使用DL = 16 = 2 4,這將自動(dòng)調(diào)整N的值以補(bǔ)償DL修改所引入的誤差。
如果將M設(shè)為1
例如,對(duì)于19,200 bps的波特率,如果CD = 0、DL = 33、LHSVAL0 = 2133,則N = 21,波特率為19,197 bps;如果使用DL = 32、N = 85,則波特率為19,203 bps.
LIN波特率計(jì)算C代碼示例
使用C語(yǔ)言編程時(shí),上述方程式可以簡(jiǎn)單地利用《和》移位命令編寫(xiě)。
評(píng)論