yoncho`s blog

CAN, 주섬 주섬 본문

기술, 나의 공부를 공유합니다./[Vehicle] CAN, CANFD

CAN, 주섬 주섬

욘초 2023. 3. 7. 16:24

 

1) CAN / CAN FD 상관없이 data길이가 9byte 이상일 때, Multi-Frame 구성(first frame, consecutive frame)으로 data를 전송해야한다. (+ option : Single Frame으로 전송할 경우 9byte 이상 data는 8byte까지만 전송)

 

ex) can/canfd 동일하게 multi frame 구성

can 일 때, data ( 01 02 03 04 05 06 07 08 09 0a 0b 0c )를 멀티프레임 구성

first frame               : id, 08, 10 0c 01 02 03 04 05 06

consecutive frame  : id, 08, 21 07 08 09 0a 0b 0c

 

can fd 일 때, data ( 01 02 03 04 05 06 07 08 09 0a 0b 0c )를 멀티프레임 구성

first frame               : id, 08, 10 0c 01 02 03 04 05 06

consecutive frame  : id, 08, 21 07 08 09 0a 0b 0c

 

 

2) Multi Frame (First Frame/  Consecutive Frame)에서 First Frame에 SID가 존재하고, Consecutive에는 순서에 맞게 Sequence Index가 증가한다.

 

first frame의 구조에서 3번째 Byte가 SID이다. 1~2번째 Byte에는 first frame 정보 (1)과 12bit의 ffdlc 값이 들어간다.

consecutive frame에는 sequence index가 0~ 15를 반복하며 15다음 0 시작하고, first frame을 0번째 sequence index로 취급하기 때문에 first frame 다음 consecutive frame의 sequence index는 1부터 시작한다.

 

 

3) Multi Frame 전송 과정

Sender일 경우, 

1) First Frame을 전송 했을 때, Flow Control 응답이 아닌 경우  : Fail

2) First Frame을 전송, Flow Control 응답 후 Consecutive Frame을 전송 : flow status, block size, separation time 값에 맞게 Consecutive 전송 : Ok

 

Receiver일 경우,

1) First Frame 응답 받았을 때, Flow Control 전송 : Ok

2) Flow Control 전송하고 (flow status, block size, separation time 값 지정) 설정값에 맞게 Consecutive Frame을  응답 받아야함.

 

 

 

 

Comments