Skip to content

This is an arduino project that simulates an ECU running the CAN 2.0A & 2.0B protocol.

Notifications You must be signed in to change notification settings

lcc/CAN-Controller-Arduino

Repository files navigation

CAN-Controller-Arduino

This is an arduino project that simulates an ECU running the CAN 2.0A & 2.0B protocol.

TODO:

  • Errors:

    • Bit_error [] --> if (RX != TX && state > arb_phase)

    • Bit_Stuff error [x]

    • Form error [x]

      • CRC delimiter [x]
      • ACK delimiter [x]
      • End of Frame [x]
      • Intermission [x]
    • Ack_error [x] --> adicionar isso em cima de decoder() if(state == ack && send_ack){write = 0;} ====> Vou setar send_ack pra 0 quando chamar read;

    • CRC_error []

  • Add arbitration logic when writing []

  • Add Overload and Error state methods [x]

  • Se frame for request -> não ter DATA -> passar direto para crc => resolvi isso colocando no data_frame um check pra ver se o bit rtr ou o srr

  • Se DLC for zero-> passsar direto para crc

  • Criar uma função raise_error [x]

  • Calculo do CRC juntamente com a verificação dele []

  • Adicionar e testar super-módulo com bit-stuffing [x]

  • Desenvolver lógica para a perda de uma arbitração [x]

  • Integrar esse módulo com o código de saulo []

  • verificar se settingthingsup está funcionando adequadamente []

About

This is an arduino project that simulates an ECU running the CAN 2.0A & 2.0B protocol.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published