Forum: Mikrocontroller und Digitale Elektronik MCA-25 + Radig AVR-Webmodul


von Andi S. (laserandi)


Lesenswert?

Hallo Forum,
hat schon mal jemand eine MCA-25 Kamera mit dem aktuellen AVR-Webmodul 
von U. Radig ans laufen bekommen? Der Quellcode von Wil Version 1.0.6 
sieht ja nur die Phillips Kamera vor.

Gruß
Andi

von Andi S. (laserandi)


Lesenswert?

Ich Versuche gerade die Dateien von Simon Schulz ein zu binden. Hier 
wird manchmal printf und manchmal printf_p verwendet. Kennt jemand den 
Unterschied?

von Andi S. (laserandi)


Angehängte Dateien:

Lesenswert?

Um es möglichst einfach zu machen, habe ich ein neues Programm erstellt. 
Es beinhaltet nur noch die Routinen für die Speicherkarte und die 
Kamera. Was funktioniert:
-Ich kann Daten auf die sd-Karte schreiben, wenn ich die Routinen für 
die Kamera auskommentiere.
-Die Kamera kann ich auslesen wenn ich die Daten nicht speichere.
Was nicht geht:
Sobald die
1
mca25_init();
 Funktion mit in der main steht, bleibt der Mega644 bei
1
File *picfile = f16_open("camera.jpg","a");
 hängen.
Zur Info:
-Ich benutze ein LCD zum debuggen, da die Kamera den UART des µC 
verwendet.
-Die sd-Karte hängt an einem anderen PORT als die Kamera.
-Die Konfiguration steht in der Datei config.h

Natürlich werdet Ihr nicht die ganze Hardware so testen können, aber 
vielleicht findet schon jemand einen Fehler in der main.c oder in der 
mca25.c (speziell mca25_init).
Bin für jede Hilfe dankbar.
Gruß
Andi

von Andi S. (laserandi)


Lesenswert?

Das oben genannte Problem entsteht immer wenn in der mca25_init
1
    switch (state){
2
      case 0:
3
        //we have to wait for AT&F:
4
        if (memcmp(buf,"AT&F",4) == 0){
5
          mca25_send_ok();
6
          state = 1;
7
        }
8
        break;
steht. Wenn man das so schreibt
1
    switch (state){
2
      case 0:
3
        //we have to wait for AT&F:
4
        if (memcmp(buf,"AT&F",4) == 0){
5
          mca25_send_ok();
6
        }
7
        state = 1;
8
        break;
läuft der Rest vernünftig. Leider ist das von der Logik her nicht das 
gleiche. Aber warum ist das so ein großer Unterschied? Wird der Speicher 
anders belegt oder was?

von Andi S. (laserandi)


Lesenswert?

An der mca25_init liegt es nicht. Der µC hängt sich irgendwann auf. 
Vielleicht ein Speicherproblem mit dem Stack. Ich weiß aber nicht, wie 
ich das einfach debuggen kann. Vielleicht kann mir dazu jemand einen 
Tipp geben.

(Das ist ja ein ganz schöner Monolog hier. Ließt das überhaupt noch 
jemand?)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.