-
        

Ergebnis 1 bis 5 von 5

Thema: CAN-Software frage

  1. #1

    CAN-Software frage

    Anzeige

    hi all,
    ich habe eine leichte frage für CAN-Experten.
    in meiner software handelt es um nachrichten zu empfangen,3 hintereinander Messages werde ich empfangen,die speichere ich in einem Buffer mit 3 arrays,je 32 bit, meiner Daten werden aufgeteilt in 32 bit Array, diese Daten will ich einen anderen Daten format geben,kann mir jemand helfen wie kann ich meine Daten weiterverarbeiten, ich habe was einiges überlegt,dass ich jede einzelne Byte in einem Array speichere und mit einer converttoint() funktion konvertire ich jedes mal 2 bytes.
    aber ob ich recht habe in einer funktion auf einen globalen Variable zugreifen???
    ich danke euch für Ihre Mühe die zur eine Lösung bringt.!!!

  2. #2
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    28.05.2007
    Ort
    Mannheim
    Alter
    30
    Beiträge
    270
    Hm, geht es nur mir so oder habt ihr auch schwierigkeiten die Sätze zu verstehen?

    Also soweit wie ich es "entschlüsselt" habe:
    Du bekommst drei 32Bit-Werte die in einem Array gespeichert werden.
    Nun willst du die Daten in ein anderes Format bringen und weißt nicht wie das geht?
    Dafür wäre es zunächt gut zu wissen um welche Programmiersprache es sich handelt und in welches Format du die Daten bringen möchtest.

    Gruß Robodriver
    Wer aufhört besser zu werden, hat aufgehört gut zu sein

    Jeder I/O Port kennt drei Zustände: Input, Output, Kaputt

  3. #3
    hi Robodriver,
    ich bekomme 3 messages,jeweils 8 byte Daten.
    ich teile ein Message in 4 Bytes Daten auf, wegen 32 bit µC ARM7.
    8 Bytes= 4 Bytes data + 4 Bytes data.
    diese 4 Bytes data enthält 2 Integer Werte, die ich in einem Integerformat umwandeln will,das gilt für alle Messages.
    die Programmiersprache ist C

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    26.03.2006
    Ort
    WOB
    Beiträge
    630
    @robodriver: ja, muss man wach sein für!

    also es geht darum ein 4 Byte INT wert umzuwandeln? oder binär to int?

    und was genau suchst du? ein codebeispiel?
    Gruß Thomas \/

    Alles über AVR, PIC und CAN
    blog.cc-robotics.de

  5. #5
    Edit: ok langsam komm ich dahinter was du meinen könntest =)
    @robodriver
    einfach den array wert in deine int veriable reinschreiben.

    unsigned int intwert = 0;
    intwert = (DeinArray[0] & (DeinArray[1] << 8 ));

    Das schreibt die beiden ersten (0 und 1) werte deines array in EINE integer Variable, wobei position 1 die vorderen 8 Bit sind und position 0 die hinteren.


    ich glaub aber ich versteh deinen Post nicht =)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •