PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C3088: RGB auf Y-Bus



p_mork
23.07.2007, 10:59
Hallo,

ich versuche gerade verzweifelt, die Kamera C3088 von roboter-teile.de dazu zu bringen, die RGB-Daten auf dem Y-Bus auszugeben. Aber irgendwie funktioniert das nicht. Ich habe folgende Enstellungen:

CLKRC=3 //Clock prescale
COMA=0x24|(1<<3) //RGB
COMC=(1<<5) //176*144 Pixel
COMH=1|(1<<7) //stimmt das?

Kann mir da bitte jemand helfen?

MfG Mark

CZ
08.05.2008, 17:52
hallo, hab ein etwas anderes problem.
ich will auch 8 bit RGB daten auf dem y-bus lesen.
arbeite auf dem M32 erweiterungs modul für den rp6.
AtMega32 mit 16MHz.
der y-bus ist an den IO-port angeschlossen(ohne pull up).
im default modus bekomme ich helligkeits werte auf dem y-bus ohne grosse probleme.
wenn ich jedoch auf 8 bit umschalte, kommen stark alternierende werte zwischen 0 und ~140. auch bei total abgedunkelter linse.
den CLKRC prescaler habe ich mit verschiedenen werten getestet (zur zeit 0x08).
register 0x12 ist auf 0x2c gesetzt. -> RGB modus
register 0x13 auf 0x21. -> 8bit multiplex
ich lese die daten, wenn PLCK LOW und HREF HIGH ist.
288x352

was mach ich falsch, bzw. muss ich noch was beachten?

p_mork
10.05.2008, 20:11
Mit RGB allein auf dem Y-Bus hab ich es selbst noch nicht hinbekommen, ich habe immer mit RGB auf beiden Bussen gearbeitet. Dem Datenblatt nach sollten Deine Einstellungen stimmen, probier mal COMA.4 auf 1 zu setzen, vllt klappts dann. Die Werte 0 bis 140 sind auf jeden Fall ziemlich komisch, weil 16 eigentlich der kleinstmögliche Wert sein dürfte. Wenn Du die Linse abdunkelst musst Du sofort messen, da sich der interne AGC an die Dunkelheit gewohnt.

CZ
13.05.2008, 14:56
ich bin nun noch verwirrter als vorher ](*,)
das einzige das zu funktionieren scheint ist der default 16 bit YUV modus.
da kann ich recht eindeutig die helligkeits werte lesen(Y-bus).
im RGB 16 oder 8 bit kommen nur werte raus mit denen ich nix anfangen kann.
wenn ich den y-bus auf 16 bit RGB lese, sollten abwechselnd grün und rot werte kommen. wenn ich jedoch etwas grünes(oder rotes) ins bild halte, sind aber alle werte recht gleich. müsste es nicht ein hoher und ein niedriger wert sein? ich kann also nichtmal rot von grün unterscheiden.

CLKRC = 0x08
COMA = 0x28

wie lese ich den bus am besten aus?

p_mork
13.05.2008, 16:47
Also meine Einstellungen sind

COMA = 0x2C
COMH = 0x05

Damit krieg ich auf dem Y-Bus immer grün aud aufm UV-Bus abwechselnd Rot und Blau. Hast Du denn ein Farbdisplay womit sich das Bild zuverlässig anzeigen lässt? Mir hats jedenfalls SEHR geholfen.

CZ
13.05.2008, 17:07
da ich leider nur den y-bus habe hilft mir das nicht weiter.
ich bin auf den 8-bit modus wohl oder übel angewiesen.
ein display habe ich auch nicht.
ich mache bestimmt beim lesen des busses etwas falsch.
da ich keine interrupts abfangen kann, muss ich das lesen via polling realisieren. d.h. warten bis HREF high und PLCK low ist und dann das byte lesen. aus dem grund habe ich auch den CLKRC auf 0x08(oder andere werte) gesetzt.
fragwürdig ist auch, ob ich bei COMA und COMB den 8-bit modus setzen soll.
oder muss man vor dem lesen eines frames(bild) das der cam irgendwie ankündigen?