Forum: Mikrocontroller und Digitale Elektronik Si5351-Inizialisierung


von Franz (franz64)


Lesenswert?

Hallo,
ich suche eine inizialisierung für einen Si5352 in Assembler-Code.
Danke.

von Harald K. (kirnbichler)


Lesenswert?

Das ist ein Taktgenerator, der per I2C angesprochen wird.

Wie soll da was "in Assembler" initialisiert werden?

Oder willst Du für Deinen nicht genannten µC ein Assemblerprogramm, das 
über I2C mit dem Ding redet?

Warum?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Für welchen Prozessor sollte denn die Initiaslisierung geschrieben sein?

Nicht, dass einer Code für einen SHARC-DSP hat und du nichts damit 
anfangen kannst...

Darf man die I2C-Engine des fraglichen Prozessors verwenden?
Oder soll das Assembler sein, der händisch an den Pins wackelt?

: Bearbeitet durch Moderator
von Wastl (hartundweichware)


Lesenswert?

Franz schrieb:
> ich suche eine inizialisierung für einen Si5352 in Assembler-Code.

Wir brauchen mehr Details!
(Zitat in Anlehnung an Dieter Hallervorden)

von Wastl (hartundweichware)


Lesenswert?

Franz schrieb:
> für einen Si5352

Dabei wird es jedoch schwierig werden die dazugehörige
Hardware in Realität zu finden. Ich schlage vor "man nimmt"
das "alte" Modell Si5351.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Und dann war da noch die Frage, wie der Baustein initialisiert werden 
soll. Immerhin gibt es da bis zu 180 Register zu bespaßen:

https://www.google.com/search?q=si5351a+an619

von Wastl (hartundweichware)


Lesenswert?

Lothar M. schrieb:
> Und dann war da noch die Frage, wie der Baustein initialisiert werden
> soll.

Einfach bei Arduino abkupfern statt selbst zu denken.

von Georg S. (randy)


Lesenswert?

Das Setup des Si5351 wirkt am Anfang recht unübersichtlich. Mir hat 
folgender Beispielcode geholfen die passenden Registerwerte zu finden:
https://qrp-labs.com/images/synth/demo1/si5351a.c
von der Seite:
https://qrp-labs.com/synth/si5351ademo.html

von Franz (franz64)


Lesenswert?

Hallo Leute,
zunächst möchte ich mich entschuldigen für meine unklare Anfrage 
inklusive der falschen IC-Bezeichnung.
Also, ich verwende einen Si5351.  Des weiteren arbeite ich mit 
AVR-Kontrollern, nach Möglichkeit mit dem ATTiny 84.
Da ich ansonsten nichts von den üblichen Programmiersprachen kann und 
weis, ist es mir nicht möglich, z.B. den Arduino-Code zu lesen. Ich 
suche auch kein fertiges Programm, sondern einen reinen Assembler-Code. 
Es würden auch    Aussagen über die einleitenden Befehle genügen. Ich 
benutze ein selbst geschriebenes I2C-Programm mit dem ich schon einiges 
im Si5351 zum Laufen brachte. Nur klappt nicht alles (z.B. gehen nicht 
alle Si5351 bei mir) und ich weiß nicht warum.

von Ko (emko)


Lesenswert?

Du hast also gar keine Erfahrung und Ahnung, verlangst aber einen Code 
in Assembler?

Mit Arduino bist du da am besten beraten für den Einstieg. Oder 
verwechselst du Assembler mit einer kompilierten Binary? Wobei mir da 
der Nutzen nicht klar wäre.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Ich kann auch nur Assembler, hab mit 6502 angefangen, auch mal in Z80 
reingeschnuppert und dann noch AVR Assembler programmiert. Wir sind eine 
aussterbende Spezies.

https://qrp-labs.com/synth/si5351ademo.html
alles in C
"sketch" wieso nicht gleich "app" ? Neumodischer Kram.

Das Datenblatt, 72 Seiten:
https://cdn-shop.adafruit.com/datasheets/Si5351.pdf

https://cdn-learn.adafruit.com/downloads/pdf/adafruit-si5351-clock-generator-breakout.pdf
Iih, in Python. Aber ziemlich ausführlich beschrieben wie mir scheint.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Christoph db1uq K. schrieb:
> Neumodischer Kram.
Der Si5351 eigentlich auch. Nur, damit man grob abschätzen kann, was zu 
was passt. Baut ja auch keiner eine Dampfmaschine in einen 40-Tonner 
rein, und erwartet, dass das rennt wie Schmitz Katze...

Franz schrieb:
> Nur klappt nicht alles (z.B. gehen nicht alle Si5351 bei mir)
Hast du ein Oszilloskop und einen Logic-Analyzer? (**)

> und ich weiß nicht warum.
Dann drehen wir den Spieß doch leichter mal um: was geht, wenns geht? 
Und was sollte gehen, geht aber nicht? Warum erwartest du, dass es geht 
und wie stellst du fest, dass das nicht so ist?


(**) ohne diese Dinge kann man serielle Busse nicht zuverlässig in 
Betrieb nehmen

: Bearbeitet durch Moderator
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.