Hallo, ich beschäftige mich gerade mit dem Auslesen einer MCA30. Sie ist wohl ein Nachfolgemodell der hier schon oft diskutierten MCA25. Ich will sie später an einem uC betreiben. Um das Protokoll zu verstehen, steuere ich sie z.Z direkt vom PC über ein Delphi Programm an. Das Protokoll besteht aus folgenden Schritten: - Init & umschalten auf 460800 baud: - Mux Init & Initialisierung der Kamera: - Vorschaumodus aktivieren & Vorschaubilder holen: - Vollbild herunterladen: Soweit habe ich alles in meinem Programm untergebracht und bekomme nachdem ich das Vollbild "runtergeladen" habe auch ein sauberes 640x480 Bild auf den Bildschirm. Was ist aber wenn ich nun ein weiteres Bild auslesen möchte? Welche Schritte muss ich oben wiederholen? Ich will es später vermeiden, einen Reset zu machen und alles zu wiederholen, da das ja einen unnötigen Overhead bedeuten würde. ----------------------------------- Noch etwas am Rande ... hat sich mal jemaand mit den Eigenschaften dieser CAM beschäftigt? bei der Konfiguration sendet man ja so Sachen wie - white-balance - color-compensation - color-depth - funlayer color compenation und fun layer habe ich mal verändert, ist soweit ganz lustig aber nicht wirklich brauchbar ... gibt es noch andere sinnvolle Attribute die man einstellen/verändern kann?
Hallo CC, beschäftige mich auch gerade mit der MCA-30. Habe ein Ethercircuit Board von Softland Ltd. (gibts wohl inzwischen nicht mehr). Es ähnelt dem Pollin Net-IO, hat aber einen SD-Kartenslot. Ich nutze die Software von Ulli Radig (avr webserver 1.06). Versuche die MCA-30 hier einzubinden, habe aber noch div. Probleme. Da es keine Unterlagen und nur einige Angaben über die MCA-25 gibt, gehe ich vorerst davon aus, daß das Protokoll der MCA-25 das gleiche ist, wie das der MCA-30. Initialisierung mit AT Kommandos klappt. Aber dann, empfange ich maximal "F9 03 F9" oder "F9 03 3F F9" als MUX Frame, was aber eigentlich viel zu kurz, also ungültig ist. Habe den MUXER schon bis auf 57600 Baud gedrosselt, aber es bleibt das gleiche Ergebnis. Hast Du evtl. eine Erklärung dafür ? Oder eine Beschreibung des Protokolls ? Gruß TH
@TH Das Protkoll ist soweit das gleiche. Kenne die Software von Ulli Radig nicht, da ich meine eigene gemacht habe. Poste doch einfach mal Dein bisheriges Protokoll, also das was Du geschickt hast und das, was Du empfangen hast dann kann ich Dir bestimmt weiterhelfen. MFG
ok, ich werde es mir morgen mal anschauen wenn ich dazu komme. Sobald die Mux Pakete anfangen sehe ich aber nur die Befehle die Du schickst ... Du wartest aber schon auf die ACK der Kamera und prüfst obe die stimmen oder haust Du dem die kompletten Befehle am Stück um die Ohren ?? Die Mux Pakete fangen so an ... SLAVE -> ù ? ù F9 03 3F 01 1C F9 MASTER -> ù s × ù F9 03 73 01 D7 F9 SLAVE -> ù # ? É ù F9 23 3F 01 C9 F9 MASTER -> ù # s ù F9 23 73 01 02 F9
Oh, hatte ich auskommentiert, weil ich offensichtlich durch die vielen Debugausgaben Timingprobleme bekomme. Eigenartig dabei ist, wenn ich "zu schnell" sende, geht ab 460kBaud erstmal nichts mehr. Erst wenn ich bei der Sendung eines einzelnen Zeichens eine kleine Verzögerung durch Debugmeldungen einbaue, gehts ?! Ich warte nicht auf ACK sondern auf das richtige Paket: wenn von CAM: "F9 03 3F 01 1C F9" dann sende: "F9 03 73 01 D7 F9", das stimmt so. Und hier das erste Problem, hab ich gerade entdeckt, hab als zweites von der CAM: "F9 23 F9" dann sende ich: "F9 23 73 01 02 F9" - so geht es, sollte aber "F9 23 3F 01 C9 F9" empfangen. Ist da schon der erste Fehler ? Muß ich "F9 23 F9" irgendwie quittieren, oder ist es ein Fehler ?
Nein. das muss ein Fehler sein. Du musst genau das empfangen und senden was ich oben gepostet habe. Die Kamera sendet auf jeden Mux Frame die passende Antwort, hatte es bisher noch nicht gehabt dass sie zwischendrin mal ein paar Dummy Frames geschickt hat. Also schicke oben der Reihenfolge nach die Mux Pakete hin und werte die Antwort aus, sobald die Antwort nicht so ist wie sie soll läuft irgendwas schief. MFG
Alles klar, dann muß ich an dieser Stelle weitersuchen. Dann ist die Ursache offensichtlich doch meine Sendegeschwindigkeit bei 460kBaud. Sehr eigenartig, aber muß so sein, den ersten MUX Frame von der CAM empfange ich korrekt, sende auch die richtige Antwort, aber dann kommt Müll (F9 23 F9). Vielen Dank erstmal für Deine Mühe. Melde mich, wenn ich nicht weiter komme, bzw. berichte zwischendurch mal. Hast Du evtl. eine ausführliche Beschreibung des MUX Protokolls oder einen guten Link für mich ? Gruß TH
So, habs hinbekommen, mein AVR Webserver speichert mir Bilder auf SD-Card. Das Problem waren wirklich die debug Ausgaben. Dadurch kam die Kommunikation durcheinander. Was ich noch nicht hinbekommen habe, sind die Funlayer, kann da ein "0x30" genau wie "0x40" oder "0x80" senden, es wird irgendwie ignoriert.
Update: Funlayer jetzt auch ok, werde jetzt versuchen, etwas die Geschwindigkeiten zu optimieren. Sonst funktioniert alles schon ganz gut ;o)
Hi, ich habe mir auch gerade eine MCA30 zur Anbindung an meinen AtMega bestellt - vielleicht könnte ja einer von meinen Vorrednern so freundlich sein, den Code für die Kommunikation hier zu posten? Das wäre echt klasse - no need to reinvent the wheel ;) Cheers, Bjoern PS Es geht wirklich um die MCA30, nicht die MCA25, die ist ja ausführlich diskutiert. Oder ist der Kommunikationscode für die MCA25 1:1 für die MCA30 verwendbar? Danke!
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.