Forum: Mikrocontroller und Digitale Elektronik STM32G0x - Clock für Schreiben der Register notwendig?


von Michael J. (jogibaer)


Lesenswert?

Hallo zusammen,

habe gerade festgestellt, wenn ich z.B. das GPIO Register MODER 
beschreiben möchte, daß vorher der Takt für das entsprechende GPIO 
freigegeben
werden muß.
Hat mich ein wenig überrascht, da ich weder im Datenblatt noch im 
Referenz
Manual darüber was gefunden habe, bzw. es wahrscheinlich überlesen habe.
Die SFRs hätte ich einfach nur als Speicherbereich angenommen, 
unabhängig
vom Takt der jeweiligen Schnittstelle.

Normalerweise würde ich erst alles konfigurieren und zum Schluß den
Takt freigeben.

Weiß jemand wo genau darüber was über das Thema steht?
Am Clock tree oder an der GPIO Struktur ist nicht wirklich was zu 
erfahren.


Jogibär

von John Doe (Gast)


Lesenswert?

Was an
"When the peripheral clock is not active, the peripheral registers read 
or write accesses are not supported."

kapierst Du nicht?

Lern Lesen!

Beitrag #6661751 wurde vom Autor gelöscht.
von Dumpfbacke (Gast)


Lesenswert?

John Doe schrieb:
> kapierst Du nicht?

Ich kann den TO verstehen dass er das nicht auf Anhieb findet.
Das Refernce Manual besteht aus mehr als 2100 Seiten, man weiss
nicht nach was man suchen soll und unter GPIO ist zum Clock
nichts zu finden.

Also bitte Vorsicht bzw. Nachsicht!

Als einziges Argument könnte man gelten lassen dass möglicherweise
alle ARMs aus der STM32 Familie einen Clock brauchen, also auch
der hier diskutierte Controller.

von Michael J. (jogibaer)


Lesenswert?

John Doe schrieb:
> Was an
> "When the peripheral clock is not active, the peripheral registers read
> or write accesses are not supported."
>
> kapierst Du nicht?
>
> Lern Lesen!

Hallo John,

Tausend und einen Dank für Deinen Hinweis.
Auf der Seite 157 Punkt 5.2.16. vom Programming Manual kann man das 
lesen.
Diesen Hinweis habe ich gesucht und nicht gefunden.
Muß wohl wirklich noch lesen lernen.
Und verstehen kommt auch noch hinzu.

Vielen Dank nochmals!

Jogibär

: Bearbeitet durch User
von John Doe (Gast)


Lesenswert?

Dumpfbacke schrieb:
> John Doe schrieb:
>> kapierst Du nicht?
>
> Ich kann den TO verstehen dass er das nicht auf Anhieb findet.
> Das Refernce Manual besteht aus mehr als 2100 Seiten, man weiss
> nicht nach was man suchen soll und unter GPIO ist zum Clock
> nichts zu finden.
>
> Also bitte Vorsicht bzw. Nachsicht!


Bullshit!
Es gibt extra ein Unterkapitel - sogar im Inhaltsverzeichnis -, welches:
"Peripheral clock enable registers"
heisst.

Das sieht man sofort, wenn man - wie der TO - damit ein Problem hat.

Also nix für ungut, ich empfehle Dreiradfahren als Hobby.

von Gerd E. (robberknight)


Lesenswert?

Wenn eine Peripherieeinheit keine Clock bekommt, ist sie auf den 
internen Bussen (AHB, APB,...) nicht erreichbar. Daher kann sie (und 
ihre Register) dann nicht angesprochen werden.

von John Doe (Gast)


Lesenswert?

Michael J. schrieb:
> John Doe schrieb:
>> Was an
>> "When the peripheral clock is not active, the peripheral registers read
>> or write accesses are not supported."
>>
>> kapierst Du nicht?
>>
>> Lern Lesen!
>
> Hallo John,
>
> Tausend und einen Dank für Deinen Hinweis.
> Auf der Seite 157 Punkt 5.2.16. vom Programming Manual kann man das
> lesen.

Nix für ungut, aber Du kannst ja nichtmal Reference Manual und 
Programming Manual auseinanderhalten...

von Dumpfbacke (Gast)


Lesenswert?

John Doe schrieb:
> Also nix für ungut, ich empfehle Dreiradfahren als Hobby.

Deine aggressive Schreibweise lässt tief blicken.

Ich habe für den TO gebeten Nachsicht zu üben. Wofür dann
diese Art zu schreiben? Ich habe dir nichts getan, nur versucht
dir einen erweiterten Einblick zu verschaffen.

Beitrag #6661778 wurde vom Autor gelöscht.
von Michael J. (jogibaer)



Lesenswert?

Hallo,

beruhigt Euch wieder.
habe doch bloß eine blöde Frage gestellt, bin doch nicht er Erste.

@Gerd
Kann ich das so verstehen, daß die GPIO Register über den Bus in die
Memory Map eingeblendet bzw. adressiert werden?
Ohne Takt geht das natürlich nicht.

Und Ja, ich habe die beiden Manuals verwechselt.
Und Dreirad konnte ich noch nie fahren!


Jogibär

von Gerd E. (robberknight)


Lesenswert?

Michael J. schrieb:
> Kann ich das so verstehen, daß die GPIO Register über den Bus in die
> Memory Map eingeblendet bzw. adressiert werden?

Genau. Jegliche Kommunikation zwischen dem CPU-Core, der Deinen Code 
ausführt, und der Peripherie, geht immer über die verschiedenen Busse. 
Im Datenblatt irgendwo am Anfang ist ne Grafik drin in der die 
dargestellt sind und wo Du siehst wie die verbunden sind.

Und wenn Du jetzt ein Register einer Peripherieeinheit setzen willst, 
geht der Speicherzugriff darauf über den Bus. Anhand der Speicheradresse 
wird der passende Bus gefunden.

von 900ss (900ss)


Lesenswert?

John Doe schrieb:
> Also nix für ungut, ich empfehle Dreiradfahren als Hobby.

 Bei deiner sozialen Inkompetenz würde dir das Dreiradfahren auch gut 
stehen. Ernsthaft.

von Stefan F. (Gast)


Lesenswert?

Michael J. schrieb:
> habe gerade festgestellt, wenn ich z.B. das GPIO Register MODER
> beschreiben möchte, daß vorher der Takt für das entsprechende GPIO
> freigegeben werden muß.

Das generell so bei allen STM32.

Der Knackpunkt ist, dass die Wichtigen Infos über viele Seiten verstreut 
zu finden sind und man als Anfänger nicht nicht weiß, wonach man suchen 
muss. Die Querverweise sind nett aber decken nicht alles ab.

Michael J. schrieb:
> beruhigt Euch wieder.
> habe doch bloß eine blöde Frage gestellt, bin doch nicht er Erste.

Als ich diese Frage stellte wurde ich genau so blöd angemacht. Daran 
muss man sich in diesem Diskussionsforum gewöhnen. Hier weht ein rauer 
Wind.

von Michael J. (jogibaer)


Lesenswert?

Hallo,

alles klar.
Danke an alle, die mir geholfen haben, besonders Gerd
und natürlich dem John.
Entscheidende Infos sind wirklich über mehrere Dokumente verteilt.
Da wird man am Anfang regelrecht erschlagen.

Jogibär

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