MCP2515 ile Arduino haberleşmesi

salimcan76

Üye
Katılım
17 Ocak 2022
Mesajlar
2
Puanları
1
Yaş
48
Arkadaşlar , MCP2515 Can - SPI haberleşme modülü kullanarak aracın Can Bus bilgilerini okumaya çalışıyorum. Fakat bir yerde takıldım. Çünkü bu modülde 8 MHz kristal var. Fakat internette konu ile yaptığım aramalarda Arduino kodları standart olarak 16 MHz 'ye göre yazılmış. Piyasadaki modüller ise standart 8 MHz. Bu durumda hazır Arduino kodlarını 8 MHz için nasıl uygun hale getirebilirim? Bununla ilgili Can Bus dosyalarının olduğu bir yerin linkini yazıyorum. Amacım oradaki kütüphane dosyalarını görmeniz içindir. Link yazarak hata yapıyorsam kusuruma bakmayın.
https://github.com/sparkfun/SparkFu...9c10/examples/CAN_Read_Demo/CAN_Read_Demo.ino
 
Arkadaşlar , MCP2515 Can - SPI haberleşme modülü kullanarak aracın Can Bus bilgilerini okumaya çalışıyorum. Fakat bir yerde takıldım. Çünkü bu modülde 8 MHz kristal var. Fakat internette konu ile yaptığım aramalarda Arduino kodları standart olarak 16 MHz 'ye göre yazılmış. Piyasadaki modüller ise standart 8 MHz. Bu durumda hazır Arduino kodlarını 8 MHz için nasıl uygun hale getirebilirim? Bununla ilgili Can Bus dosyalarının olduğu bir yerin linkini yazıyorum. Amacım oradaki kütüphane dosyalarını görmeniz içindir. Link yazarak hata yapıyorsam kusuruma bakmayın.
https://github.com/sparkfun/SparkFu...9c10/examples/CAN_Read_Demo/CAN_Read_Demo.ino
Abicim modül üzerindeki kristalin kaç mhz olduğundan sanane o kristal modülün üzerindeki entegre için lazım. Arduinonun üzerindeki kristal arduino için lazım. İkisi birbirinden bağımsız şeyler. Sen sadece CAN bus hzını ayarlamalısın gerisini boşver. Aleti kurup denedin mi?
 
Evet, Arduinoyu kurup denedim, çalışmıyor. Yabancı bir sitede Arduino'nun Mcp2515 ile haberleşebilmesi için Mcp kütüphanesin 16 MHz kristali olan modül için yazıldığı, 8 MHz kristali olan modüller için Mcp kütüphanesinin 8 MHz için ayarlanması gerektiği yazıyor. https://forum.arduino.cc/t/how-to-s...brary-file-based-on-crystal-oscillator/628822
Ancak nasıl yapılacağını anlamadım. İlgili linki ekliyorum.
 
Merhaba. Ben aranıza bugün katıldım. Arduino öğrenmeye çalışıyorum,bi skeç hazırladım mcp2515 ile veri göndermeye çalışıyorum derleme hatası veriyor ,yardım edebilcek varsa şimdiden tşk.
>(yutubta video ya bakarak yazdım bunları )

#include <SPI.h>
#include <can.h>
#include <digitalWriteFast.h>
#include <mcp2515.h>

struct can_frame GidenPaket1;
struct can_frame GidenPaket2;

MCP2515 mcp2515(10); // cs pin

void setup() {
GidenPaket1.can_id = 0x456;
GidenPaket1.can_dlc = 8;
GidenPaket1.data[0] = 0x87;
GidenPaket1.data[1] = 0x00;
GidenPaket1.data[2] = 0x00;
GidenPaket1.data[3] = 0x00;
GidenPaket1.data[4] = 0x00;
GidenPaket1.data[5] = 0x00;
GidenPaket1.data[6] = 0x00;
GidenPaket1.data[7] = 0x00;

GidenPaket2.can_id = 0x457;
GidenPaket2.can_dlc = 8;
GidenPaket2.data[0] = 0xfe;
GidenPaket2.data[1] = 0x16;
GidenPaket2.data[2] = 0x3F;
GidenPaket2.data[3] = 0xFF;
GidenPaket2.data[4] = 0xFF;
GidenPaket2.data[5] = 0xFF;
GidenPaket2.data[6] = 0xFF;
GidenPaket2.data[7] = 0xFF;

mcp2515.reset();
mcp2515.setBitrate(CAN_83K3BPS, MCP_8MHZ);
mcp2515.setNormalMode();
}

void loop() {
mcp2515.sendMessage(GidenPaket1);
delay(100);
mcp2515.sendMessage(GidenPaket2);
delay(100);
}
 
Son düzenleme:
Valla helal olsun size.Ardunio ögrenmeye can bus ile başlamak.
Genç kardeşlerim Can bus çok basit bir haberleşme protokolu degil.Ezbere birilerinin yaptıgını kopyala yapıştır yapacaksanız sizin bileceginiz iş.Öncelikle daha basit konularla ugraşmanızı tavsiye ederim.
 

Forum istatistikleri

Konular
128,449
Mesajlar
917,689
Kullanıcılar
450,389
Son üye
ciuu

Yeni konular

Geri
Üst