Ecan Treiber PIC18: wie einbinden, woher bekommen?

OP #4373138
Lesenswert?

Hallo Zusammen,

ich habe einen PIC18F66K80 mit integrietem ECAN. Gerade bin ich dabei 
die Initialisierungen für die Hardware zu machen. Da ich neu bei MPLAB X 
IDE(V3.10) bin, frage ich mich woher ich die Treiber für dies Funktionen 
bekomme.

Hier mein Code (zusätzlich die PNG-Datei im Anhang):
1
/*CAN-Parameter initialisieren*/
2
SJW = 1;
3
BRP = 1;
4
Phase_Seg1 = 6;
5
Phase_Seg2 = 7;
6
BRP = 1;
7
Prop_Seg = 6;
8

9
init_flag = CAN_CONFIG_SAMPLE_THRICE  &
10
    CAN_CONFIG_PHSEG2_PRG_ON  &
11
    CAN_CONFIG_STD_MSG        &
12
    CAN_CONFIG_DBL_BUFFER_ON  &
13
    CAN_CONFIG_VALID_XTD_MSG  &
14
    CAN_CONFIG_LINE_FILTER_OFF;
15

16
send_flag = CAN_TX_PRIORITY_0          &
17
    CAN_TX_XTD_FRAME           &
18
    CAN_TX_NO_RTR_FRAME;
19

20
read_flag = 0;
21

22
/*Integrieters CAN-Modul initialisieren*/
23
      CANInitialize(SJW, BRP, Phase_Seg1, Phase_Seg2, Prop_Seg, init_flag);
24
/*Set CAN CONFIG mode*/
25
      CANSetOperationMode(CAN_MODE_CONFIG, 0xFF);
26
      mask = -1;
27
/*Set all MASK1 bits to 1's*/
28
      CANSetMask(CAN_MASK_B1, mask, CAN_CONFIG_XTD_MSG);
29
/*Set all MASK2 bits to 1's*/
30
      CANSetMask(CAN_MASK_B2, mask, CAN_CONFIG_XTD_MSG);
31
/*Set id of filter B1_F1 to 3*/
32
      CANSetFilter(CAN_FILTER_B2_F3,500,CAN_CONFIG_XTD_MSG);
33
/*Set CAN module to NORMAL mode*/
34
      CANSetOperationMode(CAN_MODE_NORMAL, 0xFF);

Ich bekomme die Fehlermeldung  "Unable to resolve identifier - 
Identifier whose declaration cannot be found." für jede Funktion. Kann 
ir jemand einen Tipp geben wir ich diese Fehlermeldungen beseitige? (Wo 
kriege ich die Header/Library her bzw. was muss ich bei der Einbindung 
in MPLAB beachten)

VIELEN DANK!!!!

Gruß Andre
Angehängte Dateien:
OP #4373335
Lesenswert?

Hallo Teo,

vielen Dank für den Hinweis. Ich habe bereits die ECAN.h und ECAN.def 
auf der Microchiphomepage heruntergeladen und in mein Projekt, wie im 
Screenshot zu sehen, integriert 
(http://www.microchip.com/wwwAppNotes/AppNotes.aspx?appnote=en012117). 
Aber er erkennt den Treiber noch nicht. Ich komme hier nicht weiter. Hat 
jemand eine Idee was ich hier noch falsch mache? Meine Idee ist, dass 
der Header + die Def-Datei an bestimmten Speicherorten im Projekt 
abgelegt werden müssen, aber ob und wo habe ich noch nicht heraus 
gefunden ...

(Wie gesagt, es kann und wird wahrscheinlich sehr trivial sein, da ich 
neu bin bei MPLAB)


Vielen Dank.
Angehängte Dateien:
OP #4374200
Lesenswert?

Hallo Teo,

Teo D. schrieb:
> Die Files stehen halt nicht im such Path. Event. reicht's da "" zu
> nutzen.
-> nein "" genügt nicht und Codegenerator unterstützt meine Hardware 
nicht (PIC18F66K80). Was bedeutet der "such Path"? :/

Meinem Verständnis von CAN-BUS muss ich die ECAN.def einbinden und 
parametrieren, sowie den ECAN.h einbinden, dann sollten meine Funktionen 
(CANInitialize, ECANSetOperationMode, ECANSetMask, ECANSetMask, 
ECANSetFilter, ECANSetOperationMode) erkannt werden und ich kann diese 
verwenden.
Weiterhin sollten meine CAN-Variablen deklarieren werden sowie die 
Zeitparameter angepasst werden. Alles bis auf die Einbindung der Header 
ist i.O. . Was fehlt denn hier noch?

Vielen Dank

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