Forum: Mikrocontroller und Digitale Elektronik Suche Tutorial - Vom Datenblatt zum Treiber


von Max D. (maxwell86)


Lesenswert?

Hallo zusammen,

habe jetzt schon einige Sachen mit Mikrocontrollern gemacht, eine - 
meiner Meinung nach absolute unabdingbare - Thematik habe ich bisher 
aber noch nicht hinbekommen: Aus den Timing-Diagrammen aus Datenblättern 
von ICs mir meinen Treiber zu schreiben. Ich hab hier bspw. eine Kamera, 
die über I²C angesteuert werden kann, ich habe aber keine Ahnung, wi ich 
die ganzen Register-Bits und Timings in ein lauffähiges Programm 
umsetzen kann.

Deswegen wollte ich mal fragen, ob eventuell jemand ein passendes 
Tutorial (oder Buch) kennt?

Danke euch,
Max

von Lehrmann M. (ubimbo)


Lesenswert?

Max Dhom schrieb:
> eine -
> meiner Meinung nach absolute unabdingbare - Thematik habe ich bisher
> aber noch nicht hinbekommen: Aus den Timing-Diagrammen aus Datenblättern
> von ICs mir meinen Treiber zu schreiben.

Was willst du denn mit einem Treiber?
Was es über I2C etc zu wissen gibt steht alles im Datenblatt bzw. es 
gibt dafür Libraries. Das sind doch trivialste Grundlagen - ein 
Timingdiagramm auszuwerten. Was hast du denn bisher mit Mikrocontrollern 
gemacht. Du wirst doch ein Timingdiagramm lesen können. Liest man von 
links nach rechts und begutachtet den Signalverlauf der einzelnen 
beschrifteten Signale. Ich weiß nich was da schwer dran sein soll ...

Max Dhom schrieb:
> habe jetzt schon einige Sachen mit Mikrocontrollern gemacht

Du mal ehrlich - verarschen können wir uns alleine. Wer je einen µC 
programmiert hat der kommt um Timing-Diagramme nicht herum. Punkt.

Max Dhom schrieb:
> Deswegen wollte ich mal fragen, ob eventuell jemand ein passendes
> Tutorial (oder Buch) kennt?

Das ist dermaßen trivial, dass da niemand ein Buch drüber braucht ... 
ich verstehe noch nicht was es bei diesem Thema (generell) nicht zu 
verstehen gibt. Wenn du einen speziellen IC hast, dann ist das was 
anderes...

von Max D. (maxwell86)


Lesenswert?

sorry dass du dich gleich so angegriffen fühlst... bisher habe ich eben 
z.B. nur ICs angesteuert, für die ich eine library bzw. einen treiber 
hatte. Dort musste ich dann in C nur die entsprechenden Funktionen 
aufrufen.. aber bei so einer reaktion suche ich lieber wo anders 
weiter...

von Ratgeber (Gast)


Lesenswert?

Lehrmann Michael schrieb:
> Max Dhom schrieb:
>> eine -
>> meiner Meinung nach absolute unabdingbare - Thematik habe ich bisher
>> aber noch nicht hinbekommen: Aus den Timing-Diagrammen aus Datenblättern
>> von ICs mir meinen Treiber zu schreiben.
>
> Was willst du denn mit einem Treiber?
> Was es über I2C etc zu wissen gibt steht alles im Datenblatt bzw. es
> gibt dafür Libraries. Das sind doch trivialste Grundlagen - ein
> Timingdiagramm auszuwerten. Was hast du denn bisher mit Mikrocontrollern
> gemacht. Du wirst doch ein Timingdiagramm lesen können. Liest man von
> links nach rechts und begutachtet den Signalverlauf der einzelnen
> beschrifteten Signale. Ich weiß nich was da schwer dran sein soll ...
>
> Max Dhom schrieb:
>> habe jetzt schon einige Sachen mit Mikrocontrollern gemacht
>
> Du mal ehrlich - verarschen können wir uns alleine. Wer je einen µC
> programmiert hat der kommt um Timing-Diagramme nicht herum. Punkt.
>
> Max Dhom schrieb:
>> Deswegen wollte ich mal fragen, ob eventuell jemand ein passendes
>> Tutorial (oder Buch) kennt?
>
> Das ist dermaßen trivial, dass da niemand ein Buch drüber braucht ...
> ich verstehe noch nicht was es bei diesem Thema (generell) nicht zu
> verstehen gibt. Wenn du einen speziellen IC hast, dann ist das was
> anderes...

Erstens kann man sehr viele Projekte erfolgreich durchführen in dem man 
einfach eine fertige SPI/I2C/UART Lib nimmt und ein bisschen die 
Einstellungen durchprobiert. Also ohne Kenntnis des Timming-Diagramms.
Zweitens ist es absolut unnötig den TO so anzufahren. Du hättest 
entweder schweigen oder ihn ein paar Tips zum lesen der Timing-Diagramme 
geben können. Dein Post ist aber so ziemlich nutzlos.

Zum Thema: Häufig muss man bei i2c Geräten als erstes Byte die 
i2c-Adresse + r/w Bit senden, dann das gewünschte Register als zweites 
Byte und kann schließlich die Daten auslesen oder Schreiben. Meistens 
wird das aber unterhalb der Timing Diagramme in Beispielen erklärt.

von Karl H. (kbuchegg)


Lesenswert?

> Aus den Timing-Diagrammen aus Datenblättern von ICs mir meinen
> Treiber zu schreiben. Ich hab hier bspw. eine Kamera,
> die über I²C angesteuert werden kann, ich habe aber keine Ahnung,
>  wi ich die ganzen Register-Bits und Timings in ein lauffähiges
> Programm umsetzen kann.

Du musst zwischen 2 grundsätzlichen Themenkreisen unterscheiden.

Das eine ist die reine Übertragung. Dazu brauchst du die 
Timingdiagramme, sofern du keine I2C Hardware zur Verfügung hast. Die 
reine Übertragung an sich ist vollkommen unabhängig davon, welche Daten 
über die Leitung selbst übertragen werden.

Und das andere sind dann die Daten, die eigentliche Nutzinformation, die 
du über die vorher spezifizierte Übertragungsstrecke verschickst.

Beides findest du in den Datenblättern beschrieben. Um einen Treiber zu 
bauen, muss man sich allerdings sinnvollerweise auf diesen beiden Ebenen 
bewegen und die tunlichst nicht vermischen: Steuerung der 
Übertragungsstrecke und Nutzbytes, die über die Übertragungsstrecke 
übertragen werden.

von spess53 (Gast)


Lesenswert?

Hi

>aber bei so einer reaktion suche ich lieber wo anders weiter...

Mach dir nichts draus. Den Herrn Leermann nimmt niemand, der das Forum 
etwas kennt, niemand so richtig ernst. Eben so ein Westerelle des 
Forums.

MfG Spess

von Mike (Gast)


Lesenswert?

@ spess53

Full ACK!

von spess53 (Gast)


Lesenswert?

Hi

>@ spess53
>Full ACK!

Zumindest hat er es geschafft an eine obere Stelle der Liste von mir 
bedrohter Tierarten zu gelangen.

MfG Spess

von Reiner O. (elux)


Lesenswert?

@ spess53

Full ACK auch von mir!

Gruss aus Berlin
Elux

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.