mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik MCA Ansteuerung - bitte um Hilfe


Autor: KingKarl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich will eine MCA30 ansteuern. Bei dem Protokoll orientiere ich mich am 
Quellcode von Ulrich Radigs Webcam (mca25.c)
http://www.ulrichradig.de/home/uploads/images/avr_...
da die Ansteuerung gleich der MCA25 sein soll ...

Komme bis in die Funktion
mca25_configure();
Dort wird folgender Funktionsaufruf gemacht
mca25_pgm_send(MCA25_CONFIG_640x480);

Habe die Funktion unten mal abgedruckt, mein Problem ist dass ich kein 
ACK mehr bekomme wenn ich die Daten geschickt habe.

Unten steht als Kommentar, dass man nach jedem MUX Packet kurz warten 
soll.
Hmm .. was ist kurz ??
Habe also mal 1,5,10,100ms nach jedem MUX Paket gewartet ... dann alle 
Daten am Stück geschickt ... bekomme einfach keine Antwort von der 
Kamera.
Außerdem ist das warten unten im Code auch als Kommentar rausgenommen 
worden.

Vielleicht hat ja jemand auch in letzter Zeit mit der Kamera gearbeitet 
und kann mir ein Tipp zum Timing geben ...


void mca25_pgm_send(PGM_P pointer){
  unsigned char valid=0;
  char old[4];

  for(;;){
    old[3] = old[2];
    old[2] = old[1];
    old[1] = old[0];
    old[0] = pgm_read_byte(pointer++);

    //if mux packet is finished wait some time
    //cam does not like rs232 activity while starting image grab
    /*if (old[0] == 0xF9 && old[1] == 0xF9){ //wait after the first n-1 
packets
      for (int z=0; z<30000; z++){
        nop();nop();nop();nop();nop();nop();nop();nop();
      }
      for (int z=0; z<30000; z++){
        nop();nop();nop();nop();nop();nop();nop();nop();
      }
    }*/

    if ( old[3] == '%' &&
         old[2] == 'E' &&
         old[1] == 'N' &&
         old[0] == 'D' ){
      //we have read the whole packet -> exit;
      break;
    }else{
      if (valid>=3)
        uart_putchar(old[3]);
      else
        valid++;
      /*if (in == 0xF9){
        //wait some time
        int a = 0;
        while (a < 1000){a++;}
      }*/
    }
  }
}

Autor: KingKarl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann mir keiner weiterhelfen ??

Die Doku auf dieser Seite
http://avr.auctionant.de/avr-ip-webcam/mca-25-protokoll.html

weicht auch von dem Protokoll aus dem Code ab ... an welches Protokoll 
soll man sich nun halten?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.