Versandt von CAN-Nachrichten stm32f10

Gast #3501849
Lesenswert?

Ich habe den CAN Konfiguriert aber weisst ich nicht, wo ich Senden bwz 
Emfangen schreiben soll

hier der ein teil der Code zu der Konfiguration. Es ist nicht in der 
main-Methode .

void CAN_Configuration(){

CAN_InitTypeDef CAN_InitStructure;

CAN_FilterInitTypeDef CAN_FilterInitStructure;

CanTxMsg TxMessage;   // TextMessage zu versenden



// CAN-Register initialisieren
CAN_DeInit(CAN1);

CAN_StructInit(&CAN_InitStructure); // Structure vorkonfigurieren
CAN_InitStructure.CAN_Mode = CAN_Mode_Normal; // CAN-Betriebsmodus

  // Baudrate = 125kbps
CAN_InitStructure.CAN_SJW=CAN_SJW_1tq; // Bit-Synchronisation
CAN_InitStructure.CAN_BS1=CAN_BS1_2tq;
CAN_InitStructure.CAN_BS2=CAN_BS2_3tq;
CAN_InitStructure.CAN_Prescaler=48; // Takt-Vorteiler
CAN_Init(CAN1, &CAN_InitStructure); // Initialisieren


// CAN filter Konfiguration
CAN_FilterInitStructure.CAN_FilterNumber=0; // Nr der Filterbank (0-27)
CAN_FilterInitStructure.CAN_FilterMode=CAN_FilterMode_IdMask;
CAN_FilterInitStructure.CAN_FilterScale = CAN_FilterScale_32bit;
CAN_FilterInitStructure.CAN_FilterIdHigh = (0x000 << 5);
CAN_FilterInitStructure.CAN_FilterIdLow=0x0000;
CAN_FilterInitStructure.CAN_FilterMaskIdHigh=(0x000 << 5);
CAN_FilterInitStructure.CAN_FilterMaskIdLow=0x0000;
CAN_FilterInitStructure.CAN_FilterFIFOAssignment=0;
CAN_FilterInitStructure.CAN_FilterActivation=ENABLE; // Filter 
einschalten
CAN_FilterInit(&CAN_FilterInitStructure);





// Daten Versenden

TxMessage.StdId = 0x11;
TxMessage.RTR = CAN_RTR_DATA;
TxMessage.IDE = CAN_ID_STD;
TxMessage.DLC=2;
    TxMessage.Data[0] = 0xCA;
TxMessage.Data[1] = 0xFE;

}

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren