LTC6802在電池管理系統(tǒng)中的應(yīng)用分析
芯片可級(jí)聯(lián)工作, 當(dāng)芯片串聯(lián)使用時(shí), 依據(jù)芯片在串聯(lián)組中的順序由高至低依次向芯片寫(xiě)入命令,讀取數(shù)據(jù)時(shí), 數(shù)據(jù)依據(jù)芯片在串聯(lián)組中的順序由低至高依次被讀出。
微控制器可以通過(guò)IO 口模擬SPI接口訪(fǎng)問(wèn)時(shí)序, 如此可以使應(yīng)用更加靈活。下面是通過(guò)對(duì)LTC6802的操作來(lái)實(shí)現(xiàn)對(duì)電壓的測(cè)量。在電池管理系統(tǒng)應(yīng)用中采用Freescale S12系列單片機(jī), 通過(guò)IO 口模擬SPI來(lái)對(duì)傳感器進(jìn)行訪(fǎng)問(wèn)。為了說(shuō)明問(wèn)題給出了兩個(gè)主要的操作程序清單:
ccs68002( );
w rcmd_ltc( 0x01) ; 配置命令寄存器
w rcmd_ltc( 0x00) ;
w rcmd_ltc( 0x00) ;
w rcmd_ltc( 0x00) ;
w rcmd_ltc( 0x00) ;
w rcmd_ltc( 0x00) ;
w rcmd_ltc( 0x00) ;
scs68002( ) ;
de lay( 1) ;
ccs68002( ) ;
w rcmd_ltc( 0x10) ; 開(kāi)始轉(zhuǎn)換電壓
scs68002( ) ;
de lay( 1) ;
ccs68002( ) ;
w rcmd_ltc( 0x04) ; 讀電壓數(shù)據(jù)
for ( i= 0; i 19; i+ + )
{
temp= rddata_ltc( );
}
scs68002( ) ;
vo id w rcmd_ltc( uchar cmd)寫(xiě)命令
{
Byte ;i
csclk68002( ) ;
for( i= 0; i 8; i+ + )
{
if( ( cmd0x80) = = 0x80)
{
sdo68002( );
}
else
{
cdo68002( ) ;
}
ssclk68002( ) ;
cmd= cmd 1;
csclk68002( );
}
}
Byte rddata_ ltc( void) 讀命令
{
Byte ,i res= 0;
csclk68002( );
for ( i= 0; i 8; i+ + )
{
res= res 1;
ssc lk68002( );
if( d i68002= = 1)
res= res| 1;
csclk68002( );
}
return res;
}
4 結(jié)束語(yǔ)
在實(shí)際應(yīng)用中, 測(cè)量全部電池的時(shí)間為13m s,電壓測(cè)量誤差值在10mV 以?xún)?nèi), 完全滿(mǎn)足電池管理系統(tǒng)的精度要求。LTC6802 的高集成度、高測(cè)量精度、快速測(cè)量時(shí)間、低功耗等優(yōu)點(diǎn)使其在針對(duì)電動(dòng)汽車(chē)的電池管理系統(tǒng)中得到了良好的應(yīng)用。
評(píng)論