Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: can.getID Kategorie: CAN-Bus (von Schroeder - 12.02.2007 22:02)
Als Antwort auf Re: can.getID von Rocky98 - 12.02.2007 8:33
Ich nutze:
C164CI-ControllerBoard, eigenes Board, OSOPT V3.0
> > > Hallo CC2 Gemeinde,
> > >
> > > evtl. kann mir hier jemand einen Tip geben.
> > >
> > > Zum Projekt: Ein Multimedia Steuergerät mit Steuerung über ein VW NAVI RN-S2.
> > >
> > > Zum Problem: Das auslesen des CAN Buses scheint zu funktionieren.
> > > Da ich noch nicht weiss auf was ich lauschen muss möchte ich die einzelnen ID
> > > sequentiell durchgehen.Um erst einmal nur zu lauschen gebe ich über can.getID()
> > > den Identifier aus. Dieser scheint aber vom Wert her nicht korrekt zu sein. Scheint
> > > deshalb da ich die IDs ja nicht generell mit anderen VW Fahrzeugen vergleichen kann.
> > > Insgesamt passt aber keine der IDs.
> > >
> > > Benutzt noch jemand die getID Funktion und kann mir Tips geben? Evtl. eine kurzes
> > > Code-Fragment?
> > >
> > > Vielen Dank schon mal.
> > >
> > > Gruss
> > > Peter
> >
> > Hallo,
> >
> > und es geht doch, die CAN IDs nehmen so langsam ihren Schrecken. Zumindest beim VW T5
> > sind die IDs nicht so unterschiedlich zu älteren Audi Modellen auch wenn die Befehle etwas
> > anders aussehen.
> >
> > Gruss
> > Peter
>
>
> Hallo Peter,
>
> kannst du mal ein Stück hier posten von deiner Leseroutine für den CAN. Ich bin auch gerade dabei mit dem
> CAN rumzuspielen. Bisher klappt der Empfang von Nachrichten noch nicht. Das Versenden hingegen funktioniert
> perfekt.
>
> Ziel ist es am Anfang erstmal zu lauschen was da auf dem Bus so los ist, also analog zu dir.
>
> Grü�e
> Frank

Hallo Frank,

in den letzten Wochen hat sich einiges getan. Die CC2 funktioniert sauber am
VW Komfort CAN Bus.
Egal ob als Sniffer, Lenkradinterface oder als TV-Tuner am RN-S2 Navi.
Mehr kann/darf ich hier zur Zeit noch nicht posten bis auf den Code der die IDs auf den Bus
ausgibt:

  /* dieses init nur zum sniffen verwenden */
  can.init(2,0x0000,0x0000);

  /* und dieses im Normalbetrieb */
  // can.init(2,0x07FF,0x0000);

  can_sl.selectBaudRate(2);
  //can_sl.selectBaudRate(3);

  for i=0...63 {
    IDs[i]=0;
  }
  can.expect(1,0x0);
  i=0;
  // Alles IDs bis max. Anzahl 64 merken und ausgeben */
  loop{
    /* Die SCAN Schleife mit getHostkey abrechen */
    if(ports.getHostkey()){
      break;
    }
    wait(can.rxd(1));
       canid=can.getID(1);
       // WICHTIG: get ausführen sonst bleibt der Kanal geblockt!
       can.get(1,canbuf);
       // Schauen ob ID schon geloggt ist
       i=0;
       while(IDs[i]!=0 & i < 64){
         if(canid==IDs[i]){
           break;
         }
         i=i+1;
       }
       // Ansonsten in Vektor eintragen
       if(IDs[i]==0 & i < 64){
         IDs[i]=canid;
         str.putintf(msg,canid,-3);
         hwcom.send(msg,str.length(msg));
         hwcom.send(cr,1);
         hwcom.send(lf,1);
       }
  }

Wenn du dich in dieses Projekt einklinken möchtest, dann melde dich bei mir per mail.
Ã?brigens: Diese Code wurde bisher nur an einem T5 am Komfort CAN getestet.
cd='n'
lf='r'
TIP: Viele IDs vom Audi passen auch zu den VW Typen mit der älteren CAN Ausführung.

Schöne Grü�e
Peter


    Antwort schreiben


Antworten: