CAN 통신을 위한 컨트롤러 회로도는 CAN 통신 -IV 에서 소개하였다. CAN 통신의 컨트롤러에 CAN Transceiver 가 필요하다.

CAN Transceiver 는 다음에 회로도를 올리도록 하겠습니다.

이에 앞서 CAN 통신 컨트롤러 회로도 잠시 설명하도록 하겠습니다.

 

현재 사용한 CAN 컨트롤러는 SJA1000 입니다. 이 칩은 ALE 신호가 있어 DATA 신호와 ADDR 신호를 같이 사용합니다.

따라서 회로도에서 ALE_CAN0# 신호와 CS_CAN0# 신호는 S3C6410에서 나오는 CS 신호를 74LVC138을 이용하여 디코딩한 신호이다.

 

또한  ALE_CAN0# 는 High일때 Addr 래치가 되기 때문에 ALE_CAN0#는 Active Low 이므로 74HC14를 달아서 반전하여 Active High 상태로 되게 하였습니다.

 

SJA1000는 5V로 구동하고, S3C6410의 경우에는 3.3V로 전압레벨이 다릅니다. 따라서 74LVC245(74LCX245)로 전압레벨을 맞추었습니다.

CAN_RD0#과 CAN_WR0# 도 전압레벨을 위하여 74LVC32를 사용하였습니다.