- fchao-Sinus-Wechselrichter AliExpress         
Ergebnis 1 bis 10 von 11

Thema: Asuro - Wie werden pages geflasht?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.08.2008
    Ort
    DE
    Beiträge
    523

    Asuro - Wie werden pages geflasht?

    Hallo,
    hab mal ne etwas ungewöhnliche Frage. Mich würde interessieren, wie die pages die über das Flash-Tool gesendet werden, in den Flash geschrieben werden.

    Aufgebaut werden sie so:
    Code:
    unsigned char m_RAM[MAX_PAGE][PAGE_SIZE - 3]; //-1PageNo -2CRC16 
    
    // Zeile aus Datei einlesen
    // ...
    
    sscanf(&line[1],"%02X",&recordLength);
    sscanf(&line[3],"%04X",&address);
    sscanf(&line[7],"%02X",&type);
    
    // Hex überprüfen ob checksum etc richtig ...
    
    // Daten in temp buffer
    for ( i = 0; i < recordLength; i++) {
        sscanf(&line[9 + i*2],"%02X",&data);
        cksum += data;
        tmp[i] = data;
    }
    
    // Daten in RAM buffer kopieren
    memcpy(&m_RAM[0][0]+address,&tmp[0],recordLength);
    
    
    ....
    
    // Daten in Sendbuffer kopieren
    sendData[0] = i; // PageNo.
    crc = 0;
    memcpy(&sendData[1],&m_RAM[i][0],PAGE_SIZE - 3);
    //Build CRC16
    for (j = 0; j < PAGE_SIZE - 2; j++) // -2 CRC16
        crc = CRC16(crc,sendData[j]);
    memcpy(&sendData[j],&crc,2);
    
    // Daten senden....
    Der Sendbuffer, der an den Asuro übertragen wird, sieht nun so aus:
    buffer[0] = Seitennummer

    buffer[1-64] = Daten aus hexfile

    buffer[65-66] = checksum, ob daten korrekt übertragen wurden


    Um in den flash zu schreiben, hab ich die Funktion void boot_program_page (uint32_t page,uint8_t*buf) dbenutzt.
    Bei der page, habe ich immer +64 dazugerechnet, da das ja die Größe einer Seite ist. Leider funktioniert es nicht.

    Kann mir das mal einer erklären???

    mfg

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    20.08.2008
    Ort
    Karlsruhe
    Alter
    37
    Beiträge
    1.225
    Zitat Zitat von Wsk8 Beitrag anzeigen
    Bei der page, habe ich immer +64 dazugerechnet, da das ja die Größe einer Seite ist. Leider funktioniert es nicht.
    Hast du Mal versucht die Page einfach nur um +1 zu ändern? Ohne mir die Funktion angesehen zu haben gehe ich davon aus, dass hier die Page adressiert wird. Zumindest wird nur die Pagenummer selbst - und nicht die Adresse des ersten Bytes der Page - an den ASURO übertragen.

    Grüße,
    Markus
    Tiny ASURO Library: Thread und sf.net Seite

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.08.2008
    Ort
    DE
    Beiträge
    523
    +1, +32 und +64. Kein Erfolg.

    mfg

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    01.03.2008
    Ort
    Niederlanden
    Beiträge
    1.170
    Hier gibt es ein Bootloader auf den Seite von Arexx-Henk:


    http://home.kpn.nl/h.van.winkoop/Asu...uBtlPagFrm.htm


    Leider ist es meistens Assembler-sprache. Aber vielleicht kannst du immer noch daraus holen was Wichtig ist.

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    20.08.2008
    Ort
    Karlsruhe
    Alter
    37
    Beiträge
    1.225
    Wsk8: Rufst du vorher andere Funktionen auf? Zwischen Bootloader und Flashtool läuft noch etwas mehr Kommunikation, zuerst musst du die Verbindung zum ASURO herstellen/diesen in den Flash-Modus bringen.

    Grüße,
    Markus
    Tiny ASURO Library: Thread und sf.net Seite

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.08.2008
    Ort
    DE
    Beiträge
    523
    @Valen
    So viel ich gesehen habe, akzeptiert der Bootloader nur eine reine Hex. Hier wüsste ich auch wie ich sie schreibe, aber mir gehts ja um das Format des Asuros.

    Rufst du vorher andere Funktionen auf? Zwischen Bootloader und Flashtool läuft noch etwas mehr Kommunikation, zuerst musst du die Verbindung zum ASURO herstellen/diesen in den Flash-Modus bringen.
    Weiß ich, die Verbindung funktioniert. Daten wurden auch korrekt gesendet laut CRC-Überprüfung.

    mfg

Ähnliche Themen

  1. Wie heiß werden Nixieröhren
    Von hunni im Forum Elektronik
    Antworten: 25
    Letzter Beitrag: 05.10.2010, 18:29
  2. Zuviele Pages beim Flashen !?
    Von Zehplusplus im Forum Asuro
    Antworten: 1
    Letzter Beitrag: 03.06.2010, 15:19
  3. Habe geflasht aber nichts passiert
    Von Matthias15 im Forum Asuro
    Antworten: 7
    Letzter Beitrag: 14.07.2008, 00:56
  4. Antworten: 12
    Letzter Beitrag: 12.12.2007, 15:08
  5. Antworten: 1
    Letzter Beitrag: 12.04.2007, 09:24

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress