Realisierung des TIMINGs des Kamerafahrers 0V7725 SCCB
September 3, 2021
Realisierung des TIMINGs des Kamerafahrers 0V7725 SCCB
SCCB-Schnittstellen-TIMING
Der Anfang und die Haltesignale des Doppelbusses werden in der Zahl unten gezeigt. Unter ihnen ist SCCB_E Freigabesignalsatz für mehrfache Sklavengeräte. Hier wird nur ein Sensor für Datenkonfiguration benutzt. So kann dieses Signal nicht benutzt werden.
Das oben genannte ist über das Anfangs- und Haltesignal-TIMING-Diagramm.
Die oben genannte Zahl zeigt die relevanten Einstellungen für das Schreiben zum Register. Stellen Sie die Identifikations-Adresse zuerst ein, dann schreiben Sie die Registeradresse, und schreiben Sie schließlich den Wert des Registers.
Die erste Phase: Für OV ist die Einheitenadresse 0X42, ist Schreiben 0X42, und Lesung ist 0X43;
Die zweite Etappe: schreiben Sie Registeradresse, diese Adresse ist der Adreßwert von OV, den Sie einstellen müssen;
Das dritte Stadium: der Wert geschrieben in das Register, das dem Adreßwert des Registersatzes in der zweiten Etappe entspricht;
Für das Ablesen des Registers, hat das Handbuch solch eine Paragraphbeschreibung.
Deshalb für die gelesene Phase in der oben genannten Zahl, bestimmen wir, vier Phasen zu verwenden, um zu erzielen, ist man, die gleichen ersten zwei Phasen als zu verwenden schreiben Register, einschließlich die eingestellt zu werden Identifikations-Adresse und die Registeradresse, und addieren dann zwei Phasen, eine ist es, in der Identifikations-Adresse wieder zu lesen und las dann den Datenwert vor. Wie gezeigt unten:
Für das OV-Register sind etwas Registerwerte für das Ablesen passend, und etwas Registerwerte sind für das Schreiben passend. Deshalb lenken Sie besondere Aufmerksamkeit auf die Formatkonfiguration von verschiedenen Daten, wenn Sie das OV-Register einstellen. Das folgende ist die Durchführung der I2C-Schnittstelle und der Registerkonfiguration des OV7725.
Die oben genannte Zahl ist das Gesamtsantendiagramm der SCCB-Schnittstelle, die nicht die globale Uhr und das globale zurückgestellte Signal zeichnet, und die globale Uhr- und globalezurückgestellte Steuerung werden beim Neu entwerfen angefordert.
Der Durchführungscode ist, wie folgt:
Modul der Konfiguration I2C_OV7725
Die oben genannte Zahl ist eine kurze Liste der Parametereinstellungen. Anmerkung, dass die Linien des Registers 12 und 37 für das Zurückstellen sind und die Linie 64 ist für die Einstellung des Bestimmungsblatts Ausgabeformate.
Es wird im Handbuch, dass schließlich Register zurückgestellt werden, eine Verzögerung von nicht mehr vereinbart, als 1ms angefordert wird, um Stabilität in größtem Maße sicherzustellen.
Die Zahl oben ist die Porterklärung und das 1ms macht-auf der Verzögerung, zum abzuschließen.
Das oben genannte ist, die Generation von SCL abzuschließen und einzustellen Freigabesignal mitten in der Uhr. Das Simulationsdiagramm wird in der Zahl unten gezeigt:
Die verschiedenen Zustände der Zustandsmaschine.
Die Zahl oben ist das erste Teil der Zustandsmaschine. Wie im Handbuch erwähnt, wenn ein Register nicht geändert wird, wird eine maximale Verzögerung von 300ms angefordert. Die minimalen und typischen Werte werden nicht spezifiziert, solange sie weniger als oder Gleichgestelltes zu 300ms ist. Verwenden Sie i2c_transfer_end und i2c_ack, um diese Verzögerung zu erzielen. Unter ihnen ist i2c_ack die Gesamtantwort jedes Stadiums. Es wird weiter unten erwaehnt.
Die Zahl oben ist das erste Teil der Zustandsmaschine. Wie im Handbuch erwähnt, wenn ein Register nicht geändert wird, wird eine maximale Verzögerung von 300ms angefordert. Die minimalen und typischen Werte werden nicht spezifiziert, solange sie weniger als oder Gleichgestelltes zu 300ms ist. Verwenden Sie i2c_transfer_end und i2c_ack, um diese Verzögerung zu erzielen. Unter ihnen ist i2c_ack die Gesamtantwort jedes Stadiums. Es wird weiter unten erwaehnt.
Es sollte in Linie 188 gemerkt werden, dass die ersten zwei Register benutzt werden, um die Verkäufer Identifikation zu erzeugen und schreibgeschützt sind, also wird Urteil angefordert.
In der oben genannten Zahl wird i2c_stream_cnt verwendet, um Datenbits zu zählen, damit wann sendend, es von Hoch zu Tief geschickt wird.
In der oben genannten Zahl wird i2c_sdat_out als das Ausgabedatenregister verwendet, um die Daten zu empfangen, die durch das Konfigurationsregistermodul gesendet werden.
Das oben genannte Bild ist die Antwort zum Signal I2C ack, ist die Antwort von Linien 420 bis 422 hochohmiger Zustand, und das folgende ist das modelsim Simulationsdiagramm der Schnittstelle, die durch das gesamte SCCB eingeführt wird.