can部分 2 can幀結(jié)構(gòu):ID和數(shù)據(jù)
CAN不同于串口,spi,iic等通信方式.CAN它不僅有數(shù)據(jù),還有ID.
這里ID又叫做標(biāo)識(shí)符,在canopen中叫做cob-id.
CAN有標(biāo)準(zhǔn)幀和擴(kuò)展幀,它們的ID是不同的.
標(biāo)準(zhǔn)幀具有11位標(biāo)識(shí)符(11位ID, cob-id). ?CANopen協(xié)議用的是標(biāo)準(zhǔn)幀.
擴(kuò)展幀具有29位標(biāo)識(shí)符.
?
由于多出了ID,所以CAN里面針對(duì)ID的不同,分配了不同的功能.



CAN也有數(shù)據(jù),它的特點(diǎn)如下:
?
1.一次通信數(shù)據(jù)最長(zhǎng)只能傳輸8個(gè)字節(jié).
每次發(fā)送叫做一條報(bào)文.(結(jié)構(gòu)是:ID+數(shù)據(jù))
比如,發(fā)送1234567890這個(gè)數(shù)據(jù)串,就需要用到兩個(gè)CAN報(bào)文.
000,87654321
000,09
?
2.小端模式
CAN的數(shù)據(jù)部分習(xí)慣上采用小端模式,比如上面的發(fā)送save這個(gè)字符,
就要寫作evas.
?
3.十六進(jìn)制
CAN的數(shù)據(jù)部分是采用16進(jìn)制的.發(fā)送1000,需要轉(zhuǎn)換成16進(jìn)制0x03e8.
又由于是小端模式發(fā)送,所有正確的發(fā)送順序是e8 03.
?
注意:
在CANopen協(xié)議中從CAN報(bào)文讀取的數(shù)據(jù),如報(bào)錯(cuò)位的解析,都是需要按照小端模式換序的.
標(biāo)簽: