OV7670 settings

OP #4579808
Hallo,
ich schlage mich seit einiger Zeit mit einer OV7670 (ohne FIFO) herum.

Der Datasheet is leider nicht sehr selbsterklärend. Hier ist die Verion 
1.4 zu finden: http://web.mit.edu/6.111/www/f2015/tools/OV7670_2006.pdf

Es geistert auch noch die 1.01 im Netz herum, die fast nur aus Fehlern 
besteht, weshalb ich auch Version 1.4 nicht sehr vertrauenserweckend 
finde.

Ich hätte gerne RGB565 in den Auflösungen VGA und QVGA bei möglichst 
niedrigen fps and pixel per second. XCLK füttere ich mit etwa 11MHz 
(niedrig aber innerhalb der Spezifikationen (10-24 MHz)).

Ich stoße allerdings auf merkwürdige Probleme:

Erst einmal VGA + RGB565 [write(Register, Wert)]:
write(0x40, 0xD0);//RGB565//00-FF
write(0x12, 0x04);//RGB

Steigende Flanke VSYNC 13.67*s (passt, da 11 statt 24 MHz)
Steigende Flanke HREF etwa 510*VSYNC (passt)
Zwischen zwei steigenden Flanken HREF etwa 784 PCLK (passt)

Bisher alles so wie es soll. Verlangsame ich mal PCLK:
write(0x40, 0xD0);//RGB565//00-FF
write(0x12, 0x04);//RGB
write(0x11, 0x9F);//CLK div 32

Steigende Flanke VSYNC 0.43*s (passt)
Steigende Flanke HREF etwa 510*13.67*s (passt nicht! Erwartet hatte ich 
510*0.43*s)
Zwischen zwei steigenden Flanken HREF etwa 784 PCLK (passt)

Es gibt noch einen PCLK divider:
write(0x3e, 0x14);//Scale enable, Div16
Keine Wirkung. Zusätzlich:
write(0x73, 0x0C);//Div16
Bringt auch nix.

Kann mir jemand auf die Sprünge helfen?
Gast
ich war mit den ov's vor einiger Zeit relativ weit gekommen. Die 
Einstellung des ov7670 war nicht das Problem. Es gibt im Netz dazu 
diversen funktionierenden 
code:http://embeddedprogrammer.blogspot.de/2012/07/hacking-ov7670-camera-module-sccb-cheat.html
Die scbb Einstellung hatte ich aus einem Arduino-Projekt übernommen. Das 
hat gut funktioniert. Auch mit der Veränderung der Taktrate.

Verrate doch ein bischen mehr zu deinem Projekt, mcu?, Speicher?
OP
Hauptziel ist eigentlich nur etwas zu Lernen.

Fernziel ist eine möglichst minimale Zeitrafferkamera mit einem MSP430.

Im Moment benutze ich einen MSP430G2553 (TSSOP28). Das Bild soll an ein 
Display gesendet werden (320x240, SPI, 16 MHz)

Der ist MSP430 natürlich nicht gerade überdimensioniert, aber um ein 
Minimalsetup geht es ja auch. Wenn ich die Taktrate der PCLK auf 1-2 MHz 
senken könnte, müsste das auch funktionieren.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.