Can Bus Haberleşme Protokolü

Başlatan dmc1, 07 Ekim 2016, 21:49:07

dmc1

Merhabalar

Can Bus haberleşmeyi öğrenmek adına 2 adet stm32f4-disc kartını Can-Bus ile haberleştirmek istiyorum.MCP2551 entegresi,sonlandırma dirençleri vs. herşey hazır.Can 2.0A protokolü kullanmak istiyorum.İlk adım olarak şunu yapmak istiyorum.Bir taraf alıcı bir taraf verici olacak.Verici tarafında tuşa her bastığımda alıcı tarafındaki kartın üstündeki ledlerden herhangi birini yakmak istiyorum.

Fakat bu haberleşmeyi yapabilmek için işlemcideki Can Bus ile alakalı registeleri configure etmem gerek.İşte ben de tam olarak bunu bilmiyorum.İşlemcideki Can Bus donanımını çalıştırabilmem için register ayarlarını nasıl yapmalıyım?Bu konuda yardımcı olabilirseniz çok sevinirim.

Şimdiden cevaplar için çok teşekkürler.

skara1214

2 stm yi haberlestirmeden once tek stm de Canbusu loop back moduna alip denemelere basla. Onu hallettikten sonra gerisi xocuk oyuncagi
Herkes ölür ama herkes gerçekten yaşamaz

dmc1

#2
O uygulamayı gerçekleştirdim fakat kod yapısını anlayamadım.Loopback mode biraz da bana karmaşık geldi açıkçası.Standart ve en basit olabilecek şekilde 2 kartla tek yönlü bir Can-Bus haberleşmesi gerçekleştirmek istiyorum.Bu söylediğim yapıda çalışırsam çok daha kolay öğrenebilirim.Bu konuda söylenebilecek bişeyler varsa çok iyi olur.

mesaj birleştirme:: 07 Ekim 2016, 23:27:31

Ayrıca benim problemim zaten stm32f4 üzernde Can ayarları yapmak.Mesela STM'yi loopback moda al demişsiniz.Nasıl alınır bilmiyorum.Loopback moda nasıl alınır?

dmc1

Aslında bu konuda sıkıntıya düşmemin ana sebebi STM'nin STANDART ya da HAL kütüphanelerini kullanmamak.Low Level'da çalışmak istediğim için her register'a doğrudan müdahale etmek istiyorum.Bu doğrultuda paylaşımlarda bulunabilirseniz gerçekten çok faydalı olur.

Teşekkürler.

skara1214

bu can bus mevzusu gittikçe canlanan bir mevzu bununla alakalı bir video yada yazı hazırlayıp buraya koymak farz oldu .Ama ne zamana yetiştirebilirim bilmiyorum
Herkes ölür ama herkes gerçekten yaşamaz

dmc1

Peki bana yardımcı olabilir misiniz?