can bus

  • genelde otomotiv haberleşmesidir.
  • Diferansiyel haberleşmedir.
  • 2 tellidir.
  • Half dublextir.
  • Diferansiyel hat olusu, 2 telli olusu ve half duplex olusundan dolayi rs485’e benzer.
  • Rs485’ten farkli taraflari sudur:

    • rs485’teki gibi bir master/slave durumu yoktur. Cünkü rs485’teki slave’lerin hepsi aynı hiyerarşidedir fakat can’deki cihazlarin oncelikleri vardir. Can bus’ta cihazlardan biri digerlerine data basarken eger oncelikli cihazlardan birinden data gelirse tüm haberleşme (bir cihaz data gonderiyor bile olsa) kesilir ve oncelikli cihazin gonderdigi data hatta hakim olur. Bunun sebebi otomobillerdeki cihazlarin ehemmiyetlerinin farkli seviyerde olmasidir.
  • 2 teldeki gerilim seviyeleri asagidaki sekildedir.

1

  • Hangi mesajin ID’si daha dusukse onun priority’si daha yuksektir. Mesela asagidaki node’lardan node 15 node 16’ya baskin gelecektir.

2

  • Can bus’ta NRZ kullanilir. Cunku haberlesme hatti mesaj paketleri sonuna sifirda kalmamasi gerekir. Cunku sifir gerilim baskin gerilimdir.
  • Frame type’lari:

    • Data frame: request’lere cevap verilen data basilan frame’ler.
    • Remote frame: request frame’leri.
    • Error frame: mesele check sum yanlis geldi. Remote frame’i basan cihaz tekrar bu frame’i basiyor. Error geldi bana diye.
    • Overload frame: hat dolu ise device’larin icinde bir overload biti set ediliyor. Birkac milisaniye sonra bu overload frame’ini tekrar basiyor.
  • Can bus’ta clock olmadigindan bir senkronizasyon process’i vardir. Her cekinik bitten (logic 1) dominant bite (logic 0) geciste cihazlar kendini senkronize ediyor. Eger arkasi arkasina cok fazla cekinik bit geliyorsa bu durumda senkronizasyon islemi icin her 5 dominant’tan sonra 1 tane cekinik bit gelir. Buna sniffing deniyor. Bu configuration yapilirken acilip kapatilabiliyor.