Forum: Mikrocontroller und Digitale Elektronik Verstehen von Angaben von Microchips?


von Markus (Gast)


Lesenswert?

Wollte mal fragen ob jemand gute youtube Videos kennt, die sowas 
erklären und warum gewisse Angaben in welchem Zusammenhang wichtig sind.


So ungefähr, als Beispiel eines AT MEGA 328 P.

8-bit AVR Microcontroller with 32K Bytes In-System
Programmable Flash

Ok, was gibt es noch außer 8 bit und warum ist das wichtig?
Warum AVR? Was soll das heißen?
32K Bytes In-System? Kein Plan.
Programmable Flash ... und was ist, wenn er nicht programmable ist?


Nachfolgend etwas humorvoll geschrieben,
was ich mir zu den Angaben denken kann:

Advanced RISC architecture (Super!)
● 131 powerful instructions – most single clock cycle execution (Ok??)
● 32 x 8 general purpose working registers (Aha?)
● Fully static operation (Jo, eh....)
● Up to 16MIPS throughput at 16MHz (MHZ, kenn ich vom PC! MIPS???)
● On-chip 2-cycle multiplier (Gibts auch 1 cycle? Was ist mit 3 cycle?)


High endurance non-volatile memory segments (Gut das sie nicht volatile 
sind, wäre ja gefährlich damit zu arbeiten!)
● 32K bytes of in-system self-programmable flash program memory (Krass!)
● 1Kbytes EEPROM (Es gibt doch schon 32GB RAM bei PCs :D)
● 2Kbytes internal SRAM (Ich will aber 4kbyte, keine Ahnung wozu)
● Write/erase cycles: 10,000 flash/100,000 EEPROM (und danach kaputt?)
● Optional boot code section with independent lock bits (woah!)
● In-system programming by on-chip boot program (omfg!)
● True read-while-write operation (Sogar true, nicht false)
● Programming lock for software security (Klingt gut!)

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Markus schrieb:
> und warum ist das wichtig

Für dich ist nichts davon wichtig - mach weiter deine Tiktok Videos und 
spare dir die Anstrengungen des Dings zwischen den Ohren.

von Yalu X. (yalu) (Moderator)


Lesenswert?

Markus schrieb:
> Nachfolgend etwas humorvoll geschrieben,
> was ich mir zu den Angaben denken kann:
>
> ...

Das ist nur die Zusammenfassung. Wenn du es genauer wissen willst, musst
du auch den Rest des Datenblatts lesen.

Das setzt allerdings voraus, dass du ein paar technisch Grundbegriffe
bereits kennst. Im konkreten Fall wären dies bspw.

- KBytes
- MIPS
- EEPROM
- SRAM

Um dir Videos darüber in Youtube anzusehen, musst du dort den jeweils
gewünschten Begriff in das Suchfeld eingeben.

Alternativ kannst du die Begriffe auch in Wikipedia nachschlagen. Wenn
du nicht gerade eine Leseschwäche hast, ist dies der wesentlich
effizientere Weg.

von EAF (Gast)


Lesenswert?

Markus schrieb:
> 32K Bytes In-System? Kein Plan.

Vergleich:
Wasser gibts z.B. im Einer, oder auch irgendwo verteilt.

von EAF (Gast)


Lesenswert?

EAF schrieb:
> im Einer,

Eimer

von Wühlhase (Gast)


Lesenswert?

Markus schrieb:
> Wollte mal fragen ob jemand gute youtube Videos kennt, die sowas
> erklären und warum gewisse Angaben in welchem Zusammenhang wichtig sind.
>
> So ungefähr, als Beispiel eines AT MEGA 328 P.
>
> 8-bit AVR Microcontroller with 32K Bytes In-System
> Programmable Flash
>
> Ok, was gibt es noch außer 8 bit und warum ist das wichtig?
> Warum AVR? Was soll das heißen?
> 32K Bytes In-System? Kein Plan.
> Programmable Flash ... und was ist, wenn er nicht programmable ist?

Die Leute, die damit was anfangen können, studieren jahrelang. (Meist an 
einer Hochschule, gelegentlich möglicherweise auch autodidaktisch, das 
kann man in diesem Zusammenhang in einen Topf werfen.)

Wie viele Youtubevideos willst du denn sehen, bevor du auf einem 
vergleichbaren Stand bist?
Und warum ausgerechnet Videos? Es gibt genug bessere und effizientere 
Wege, sich dieses Wissen anzueignen. Wikipedia, Internetseiten, 
Tutorials (da bekommt man sogar gleich etwas Praxisübung).

Setz dich hin und hau rein, und eigne dir dieses Wissen vernünftig an. 
Fragen kannst du immer hier stellen wenn du etwas nicht verstehst, aber 
niemand braucht irgendjemanden mit nutzlosem Halbwissen.

Und wenn du gar nichts bauen, sondern einfach nur mitreden willst, auch 
da braucht niemand noch einen weiteren Schwätzperten der überall laut 
mittrompetet, aber genausowenig Ahnung hat die meisten anderen 
Mitmenschen.

von EAF (Gast)


Lesenswert?

Beitrag "Verstehen von Angaben von Microchips?"
Beitrag "Widerstandswert"

Ich möchte dafür wetten, dass beides der gleiche Moby Terrorvogel ist.

von c-hater (Gast)


Lesenswert?

EAF schrieb:

> Ich möchte dafür wetten, dass beides der gleiche Moby Terrorvogel ist.

Ich würde sagen: nein. Das ist ja immerhin einigermaßen intelligent 
getrollt. Zu intelligent, als das ich es Moby zutrauen würde.

von (prx) A. K. (prx)


Lesenswert?

Markus schrieb:
> Wollte mal fragen ob jemand gute youtube Videos kennt, die sowas
> erklären und warum gewisse Angaben in welchem Zusammenhang wichtig sind.

Zwar kein Video, aber das sehe ich eher als Vorteil:
https://www.mikrocontroller.net/articles/AVR-Tutorial

von EAF (Gast)


Lesenswert?

c-hater schrieb:
> Zu intelligent

Nicht den Moby unterschätzen.
Es ist schon eine gehörige Portion Schlauheit von Nöten um sich so 
dermaßen ins Abseits zu schießen, selbst dermaßen zu verarschen, und es 
gleichzeitig vor sich selber zu verheimlichen.

Das müsstest du doch auch eigentlich von dir selber kennen.
;-)

von (prx) A. K. (prx)


Lesenswert?

EAF schrieb:
> Ich möchte dafür wetten, dass beides der gleiche Moby Terrorvogel ist.

Moby mag ja einen Knacks weg haben, aber ihn unter jedem Stein und 
hinter jeder Hecke zu vermuten ist auch nicht gesünder.

EAF schrieb:
> Das müsstest du doch auch eigentlich von dir selber kennen.

Mit der Selbsteinschätzung ist das so eine Sache... ;-)

: Bearbeitet durch User
von Dyson (Gast)


Lesenswert?

EAF schrieb:
> Nicht den Moby unterschätzen.

Ich glaube, du bist der Troll, der Moby, der hier eine falsche Spur 
legen will.

EAF schrieb:
> Das müsstest du doch auch eigentlich von dir selber kennen.

Und lass c-hater in Ruhe. Der leidet schon genug darunter, daß ihn 
keiner mag.

von Patrick L. (Firma: S-C-I DATA GbR) (pali64)


Lesenswert?

Obwohl der Beitrag einige "Trollcharakteristiken" aufweist, denke ich 
das doch der eine oder andere "Wissen-suchende" darüber stolpert und 
sich Antworten erhofft.

Aus diesem Grund versuche ich mal Kurz und bündig zu Antworten.

Markus schrieb:
> Advanced RISC architecture (Super!)
RISC ist nicht zwingend "Super" es bedeutet eigentlich nichts anderes 
als eine Reduzierte Anzahl von Instruktionen. dia aber dafür in der 
Regel sehr schnell sind, bzw wenige Taktziklen benötigen um Abgearbeitet 
zu werden.

> ● 131 powerful instructions – most single clock cycle execution (Ok??)
Beschreibt eigentlich genau das, was RISC ausmacht. Schnelle Abarbeitung 
der Instruktionen, wie Powerful die sind zeigt sich nur wenn man die 
Instruktion und deren Wirkug versteht.

> ● 32 x 8 general purpose working registers (Aha?)
Ist nicht RISC üblich, aber kann sehr zur schnellen Abarbeitung gerade 
bei vielen Unterprogrammen dienen, denn man muss nicht zuerst die 
Register auf einen Stack retten (in eine Schublade legen bis man sie 
wieder braucht) und danach wieder "Abhohlen" was normalerweise einiges 
an Zeit und Taktzyklen braucht.

> ● Fully static operation (Jo, eh....)
Das heisst es sind keine Dynamischen Komponenten (Register ALU usw.) 
sondern der Cklock kan ohne Datenverlust einfach angehalten werden.

> ● Up to 16MIPS throughput at 16MHz (MHZ, kenn ich vom PC! MIPS???)
das wiederspiegelt nichts anderes als das durch die große Anzahl von "1 
Cycle Befehlen" der Prozessor pro Takt eine Instruktion macht also 16MHz 
gleich rund 16'000'000 Instruktionen in der Sekunde abarbeitet.

> ● On-chip 2-cycle multiplier (Gibts auch 1 cycle? Was ist mit 3 cycle?)
Ja grad die x86 Serie ist mit Microcode basierender Multiplier 
verwirklicht, das heißt für eine einfache Multiplikation braucht er 
mehrere Cyclen im beispiel aufgeführten  Microchips µC ist der 
Multiplier
ein echte Hardware Decodierte Einheit.
So im ersten Cycle kommt die Rechnung rein und beim nächsten Cycle das 
resultat wieder raus.
Ja es gibt 3 Cycle Multiplier so z.B. die 32/64 Bit MPY in den MSP430 µC
aber 1 Cycle ist eher nicht möglich, da ja die Antwort auf die 
Rechenanfrage mit dem gleichen Taktcycle zurückgeschrieben werden 
müsste,
was nur bei Direktregister Manipulation möglich ist.

> High endurance non-volatile memory segments (Gut das sie nicht volatile
> sind, wäre ja gefährlich damit zu arbeiten!)
Heißt nur dass sie bei "Stromunterbrechung" ihr wert nicht verlieren.

> ● 32K bytes of in-system self-programmable flash program memory (Krass!)
Heißt dass man den µC in der Schaltung direkt programmieren kann ohne 
ihn in ein separates Programmiergerät stecken zu müssen.
Ist aber heute fast bei allen µC so und nichts weltbewegendes mehr.
Also auch nicht wirklich (Krass!)

> ● 1Kbytes EEPROM (Es gibt doch schon 32GB RAM bei PCs :D)
RAM und EEPROM sind 2 föllig verschiedene Dinge. das eine Vergisst alles 
wenn der Strom weg ist(RAM) das andere ist ein Reprogrammierbarer 
Festspeicher(EEPROM) der seine Daten auch ohne Stromversorgung behält.

> ● 2Kbytes internal SRAM (Ich will aber 4kbyte, keine Ahnung wozu)
Das ist der Flüchtige Speicher wo man temporäre Daten und Parameter 
ablegt,
und ist eigentlich der Teil der gerne etwas grösser ausfallen dürfte.

> ● Write/erase cycles: 10,000 flash/100,000 EEPROM (und danach kaputt?)
Definitiv JA läst sich nicht mehr löschen oder auch nicht mehr neu 
beschreiben. also nicht mehr brauchbar.

> ● Optional boot code section with independent lock bits (woah!)
Das heißt man kann den Teil im Programmspeicher gegen das Auslesen und 
gegebenenfalls auch gegen versehentliches überschreiben schützen.
Ist aber eigentlich heute auch normal bei µC

> ● In-system programming by on-chip boot program (omfg!)
Heisst das im µC ein Programm implementiert ist die es möglich macht den 
Chip auch ohne Programmier-Adapter zu Programmieren, meist irgend eine 
Serielle Kommunikation wie, I2C,SPI,RS232, usw. reicht aus.

> ● True read-while-write operation (Sogar true, nicht false)
Heist kurz gesagt, es erschwert das versehentliches überschreiben im 
Speicher und schützt so ein wenig vor Abstürzen.
Heißt also es muss ein Lesecyklus vorausgehen bevor ein anderer Wert 
geschrieben werden kann. Ganz grob erklärt.

> ● Programming lock for software security (Klingt gut!)
Der Programmspeicher lässt sich gegen das Auslesen/Raubkopieren 
schützen, hat aber nichts mit Verschlüsselung zu tun.

Hoffe für welche die wirklich darauf Antworten suchen, ist das mal kurz 
verständlich erklärt.

73 55

: Bearbeitet durch User
von c-hater (Gast)


Lesenswert?

Dyson schrieb:

> Und lass c-hater in Ruhe. Der leidet schon genug darunter, daß ihn
> keiner mag.

Wer sagt, dass ich darunter leiden würde? Mein Ziel ist derzeit nicht 
(und war auch nie), dass mich jeder mag. Ist doch logisch: ich hasse 
erklärtermaßen Dumme und Faule wie die Pest, da kann es doch wohl nicht 
mein Ziel sein, das mich jeder mag. Denn das würde DIE ja 
einschließen...

von EAF (Gast)


Lesenswert?

c-hater schrieb:
> Wer sagt, dass ich darunter leiden würde?

Das hätte ich auch nicht von dir erwartet.
Ist es doch eher das Umfeld, welches gequält wird.

von Percy N. (vox_bovi)


Lesenswert?

Kaum zu glauben, dass jemand diesen Unsinn ernst nimmt ...

von Patrick L. (Firma: S-C-I DATA GbR) (pali64)


Lesenswert?

Percy N. schrieb:
> Kaum zu glauben, dass jemand diesen Unsinn ernst nimmt ...

Nein nicht Den Unsinn aber ich denke an die, die sich zum Beispiel 
Antworten für die Schule suchen, (wird ja immer mehr schon in der 
Grundschule zum Thema) und dann mit denn eher dofen Antworten des TO 
nichts anzufangen weis. Deshalb kurz und Bündig für genau die 
(Grundschüler) erklärt im Post:
Beitrag "Re: Verstehen von Angaben von Microchips?"

von c-hater (Gast)


Lesenswert?

Patrick L. schrieb:

>> ● True read-while-write operation (Sogar true, nicht false)
> Heist kurz gesagt, es erschwert das versehentliches überschreiben im
> Speicher und schützt so ein wenig vor Abstürzen.
> Heißt also es muss ein Lesecyklus vorausgehen bevor ein anderer Wert
> geschrieben werden kann. Ganz grob erklärt.

Nein, das Feature ist völlig falsch erklärt. RWW bedeutet vielmehr: 
Während ein Block Daten in den Flash geschrieben wird (in den 
RWW-Bereich!), bleibt der Code im Bootloader "operative". D.h.: er kann 
in dieser Zeit noch was tun, z.B. bei Bootloadern jenseits primitiver 
UART-Bootloader das Protokoll des Hosts weiterhin bedienen, wenn nötig.

Ohne das RWW-Feature wird der Code im Bootloader einfach angehalten bis 
der Flashblock fertig geschrieben ist. Nicht mal mehr Interrupts sind 
möglich.

Das passiert immer, wenn der Bootloader selber überschrieben werden 
muss, denn der ist definitiv immer im NRWW-Bereich.

Je nachdem, wie groß der Bootloader-Bereich gewählt wurde, kann es aber 
auch Teile des App-Bereichs betreffen. Die Grenze RWW/NRWW und die 
Grenze Bootloader/App haben nämlich rein garnix miteinander zu schaffen. 
Nur bei der Wahl des größten Bootloader-Bereichs sind die jeweiligen 
Grenzen (mehr oder weniger zufällig) identisch.

von Patrick L. (Firma: S-C-I DATA GbR) (pali64)


Lesenswert?

c-hater schrieb:
> Nein, das Feature ist völlig falsch erklärt. RWW bedeutet vielmehr:
> Während ein Block Daten in den Flash geschrieben wird (in den
> RWW-Bereich!), bleibt der Code im Bootloader "operative". D.h.: er kann
> in dieser Zeit noch was tun, z.B. bei Bootloadern jenseits primitiver
> UART-Bootloader das Protokoll des Hosts weiterhin bedienen, wenn nötig....

Danke für deine Ausführliche und eindeutig besser erklärten 
Beschreibung.

Grundlegend ist es ja ein Bootloaderschutz oder eben verhindert ein 
Absturz, beim Botloaderupdate.

+1 für deine Beschreibung. ;-)

von xaver (Gast)


Lesenswert?

Vielleicht bringe ich mal ETWAS _anderes_licht ins dunkel.

Ohne ein Studium ist es natürlich schwer diese ganzen angaben zu 
verstehen, ich habe auch kein informatikstudium und verstehe auch den 
größen teil der erklärungen nicht.
In diesem zuge stellt sich dann auch die frage welche angaben zum 
micorkontroller dann überhaupt relevant sind?
Da ein neuling weder zeitkritische anwendungen programmiert, noch 
speichereffizient sein muss, sehe ich für den anfang folgendes als 
wichtig:
-anzahl der pins für die ansteuerungen von sensoren, motoren und co, in 
diesem zuge auch
- analog und oder digital ein/-ausgänge, sowie
- größe des speichers für das programm das man hochladen will

Viele der Angaben ene microkontrollers sind für einen anfänger nur 
verwirrend, weil es auf der programmierseite am anfang kaum 
anforderungen gibt, die es umzusetzen gilt.
Außerdem ist es so, das ein microkontroller heutzutage so wenig kostet, 
das es verschmerzbar ist im selbststudium zu erkennen das die 
hardwareanforderungen nicht ausreichen. Mit dieser erkenntnis ist man 
dann auch einen schritt weiter bzw hardwareanforderungen.

von Jester (Gast)


Lesenswert?

Patrick L. schrieb:
> Obwohl der Beitrag einige "Trollcharakteristiken" aufweist, denke
> ich
> das doch der eine oder andere "Wissen-suchende" darüber stolpert und
> sich Antworten erhofft.
>
> Aus diesem Grund versuche ich mal Kurz und bündig zu Antworten.

Danke Patrick - echt geil! Jetzt hast du uns dröge 10 Semester 
Informatik-Studium erspart ...

von A. S. (Gast)


Lesenswert?

xaver schrieb:
> Viele der Angaben ene microkontrollers sind für einen anfänger nur
> verwirrend, weil es auf der programmierseite am anfang kaum
> anforderungen gibt, die es umzusetzen gilt.

Das ist nur der Fall, wenn Du ein Framework nutzt, dass Dir das abnimmt.

Wenn Du auf dem µC selber programmierst, musst Du Dir 5 verschiedene 
Kapitel durchlesen, um zu erkennen, dass ein Bit im ADC-Register an Pin 
A4 dafür sorgt, dass Deine LED nicht blinkt.

Daran führt am Ende kein Weg vorbei. Also hast Du 5 Möglichkeiten:

1) einfachen µC (wo man das Datenblatt lesen kann)
2) Framework (Aduirno oder sowas)
3) reinknien
4) Community ("hast Du die OSCR-Register-Fuse gelöscht?")
5) Angeln gehen

von STK500-Besitzer (Gast)


Lesenswert?

Jester schrieb:
> Danke Patrick - echt geil! Jetzt hast du uns dröge 10 Semester
> Informatik-Studium erspart ...

Das hat rein gar nichts mit einem Informatikstudium zu tun.
Das ist E-Technik.

von Thomas (kosmos)


Lesenswert?

das was Patrick L. meinte, nennt sich read modify write Operation um ein 
versehentliches Ändern zu verhindern.

Ich kenne das von einigen Registern der CAN-Einheit und glaube beim 
EEPROM beschreiben gabs da auch etwas.
1
This operation needs a read-modify-write software routine.

von Nudelhaus (Gast)


Lesenswert?

Percy N. schrieb:
> Kaum zu glauben, dass jemand diesen Unsinn ernst nimmt ...

Dieser Satz sollte in Form einer Makrofunktion per Button abrufbar sein. 
Dann könnte man zeitsparend all deine Beiträge passend kommentieren ...

von Percy N. (vox_bovi)


Lesenswert?

Nudelhaus schrieb:
> Percy N. schrieb:
>
>> Kaum zu glauben, dass jemand diesen Unsinn ernst nimmt ...
>
> Dieser Satz sollte in Form einer Makrofunktion per Button abrufbar sein.
> Dann könnte man zeitsparend all deine Beiträge passend kommentieren ...

Das ist eine gute Idee. Mit der Anwendung sollte man aber in jedem 
Einzelfall darauf warten, dass tatsächlich jemand auf den jeweiligen 
Unsinn hereingefallen ist, so wie Du jetzt.

Kaum zu glauben, dass jemand diesen Unsinn ernst nimmt ...

von Nudelhaus (Gast)


Lesenswert?

Percy N. schrieb:
> Das ist eine gute Idee. Mit der Anwendung sollte man aber in jedem
> Einzelfall darauf warten, dass tatsächlich jemand auf den jeweiligen
> Unsinn hereingefallen ist, so wie Du jetzt.

Kaum zu glauben, dass jemand diesen Unsinn ernst nimmt ...

von Percy N. (vox_bovi)


Lesenswert?

Na bitte, wenigstens einer hat es kapiert!


... oder zumindest ernst genommen  ...

: Bearbeitet durch User
von martin (Gast)


Lesenswert?

Patrick L. schrieb:
> Obwohl der Beitrag einige "Trollcharakteristiken" aufweist, denke
> ich das doch der eine oder andere "Wissen-suchende" darüber stolpert und
> sich Antworten erhofft.
> Aus diesem Grund versuche ich mal Kurz und bündig zu Antworten.
> Markus schrieb:
>
>> Advanced RISC architecture (Super!)
>
> RISC ist nicht zwingend "Super" es bedeutet eigentlich nichts anderes
> als eine Reduzierte Anzahl von Instruktionen. dia aber dafür in der
> Regel sehr schnell sind, bzw wenige Taktziklen benötigen um Abgearbeitet
> zu werden.
>> ● 131 powerful instructions – most single clock cycle execution (Ok??)
>
> Beschreibt eigentlich genau das, was RISC ausmacht. Schnelle Abarbeitung
> der Instruktionen, wie Powerful die sind zeigt sich nur wenn man die
> Instruktion und deren Wirkug versteht.
>> ● 32 x 8 general purpose working registers (Aha?)
>
> Ist nicht RISC üblich, aber kann sehr zur schnellen Abarbeitung gerade
> bei vielen Unterprogrammen dienen, denn man muss nicht zuerst die
> Register auf einen Stack retten (in eine Schublade legen bis man sie
> wieder braucht) und danach wieder "Abhohlen" was normalerweise einiges
> an Zeit und Taktzyklen braucht.
>> ● Fully static operation (Jo, eh....)
>
> Das heisst es sind keine Dynamischen Komponenten (Register ALU usw.)
> sondern der Cklock kan ohne Datenverlust einfach angehalten werden.
>> ● Up to 16MIPS throughput at 16MHz (MHZ, kenn ich vom PC! MIPS???)
>
> das wiederspiegelt nichts anderes als das durch die große Anzahl von "1
> Cycle Befehlen" der Prozessor pro Takt eine Instruktion macht also 16MHz
> gleich rund 16'000'000 Instruktionen in der Sekunde abarbeitet.



Wow, danke, das gibt einen tollen Überblick worum es eigentlich geht bei 
diesen Mikrochips!

(Ich kann leider nicht alles quoten)

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.