CAN Chip Implementations and Basic Software Routines