CANBUS TX pininden sinyali düzgün görünteleyemiyorum

Başlatan robikod, 27 Haziran 2019, 17:33:30

robikod

Alıntı yapılan: cripple - 29 Haziran 2019, 21:06:54Açıkçası belirgin bir hata yok

CanTxMsg TxMessage;
void Init_TxMes(CanTxMsg *TxMessage)

bu kısımda global buffer ile structure pointer ın ismi aynı derleyici hatalı bir yorumlama yapabilir. Yani günün sonunda canbus tan boş(id si ve datası olmayan) bir mesaj göndermeye çalışıyor olabilir.

Bunlardan birinin adını değiştirip bir denermisiniz.

İlginç bir şekilde, delay eklememle düzeldi. Yardımlarınız için teşekkürler

dumansiz

@robikod
"Delay" komutunu nereye eklediğinizi de belirtir misiniz?
Böylece sorunun çözümü; ya da sorunun kaynağının bulunması için aynı problemi yaşayan(yaşayacak olan) insanlara yardımcı olmuş olursunuz.

cripple

Aralıksız transmit yapıldığı için muhtemelen mesajlar biribirini ezip hiçbirşey gönderemiyordu. Transmit yaptıktan sonra biraz bekleme ekleyince düzelmiştir diye düşünüyorum.

robikod

Bekletmeyi döngü içerisine ekledim

while ((CAN_TransmitStatus(CAN1, TransmitMailbox) != CANTXOK))
        {
            GPIO_SetBits(GPIOE, GPIO_Pin_9);
            Delay(1000);
        }