www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Einige Fragen zu µElektronik


Autor: Maverick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich habe jetzt ein bischen mit meinem ATMega32 rumgespielt und mir sind
einige sachen noch nicht so klar.

1. Warum werden in fast allen Tutorial die Schaltungen so aufgebaut,
dass wenn der Pin auf VCC (also im µC logisch "1") die LED oder der
Taster aus ist und bei "0" dieses an ist?

2. Ist es eignetlich möglich MMC Karten und solche Sachen die dem
anschein nach immer an das SPI angeschlossen werden auch an "normale
" Pins anzuschliessen um z.B. mehrere zu unterstützen?

3. Gibt es irgentwo ein Projekt wie myCPU, das auch das alles erklärt?
Bzw wo kann man diese grundlagen am besten lernen welche Bücher sind
gut dafür? Und wie schwer ist es z.B. Eine art Game Boy mit einem 368sx
aufzubauen? Gibt es Tutorials für so etwas?

Mfg Maverick

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zu 1: Liegt ursprünglich in der Arbeitsweise von TTL und
NMOS-Schaltungen begründet. Die lassen sich weit leichter runter- als
hochziehen. Zwar sind heute beide Techniken nicht mehr in Gebrauch,
aber erstens halten Traditionen lang, zweitens haben 8051-er mit ihrer

archaischen Portstruktur das bis in die heitige Zeit konserviert.

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zu 1:
Bei LEDs macht man das meist deshalb, weil die Treiberstufen in den
Controllern in der Richtung mehr Leistung schaffen.
Bei den Tastern, weil man einen Widerstand braucht, der den Pin auf das
"andere" Potential zieht, und dazu den eingebauten pull-up verwenden
kann, wenn man den Taster gegen Masse schalten läßt. Wenn man ihn gegen
VCC schaltet, muß man noch einen zusätzlichen externen pull-down
einbauen.

Zu 2:
Du müßtest sie eigentlich auch alle parallel an SPI anschließen können
und brauchst dann halt nur eine weitere Leitung pro Karte für die
Auswahl.
Es ginge auch, sie ans die "normalen" Pins anzuschließen, aber dann
mußt du das SPI selber in Software implementieren.

Zu 3 kann ich nichts sagen.

Autor: Jens D. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zu 2:
erweiterung: Du kannst nicht nur MMS Karten anschliessen, sondern auch
noch andere Komponenten zB, DA / AD Wandler ....

Gruss

Autor: Mario Richter (mario001) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

zu 2: Ja, du kannst prinzipiell Peripherie an jeden beliebigen Portpin
anschließen. Dann musst du aber die nötigen Ansteuerungsroutinen meist
von Hand programmieren !

Besser ist es oft, die internen Hardware-Module (z.B. SPI, TWI, UART
... je nachdem was der Controller halt alles hat) zu benutzen, was die
Sache extrem vereinfacht, da sich dann größtenteils der Controller um
die Abarbeitung kümmert. Diese Hardware-Module sind aber eben auf
bestimmte Pins herausgeführt, die dann auch benutzt werden müssen.

zu 3: Ich empfehle dir hier a) dieses Forum, b) Google, c) die
Datenblätter und Application Notes der Controller und d) try-and-error,
also einfach ausprobieren. Das Geld für spezielle Bücher würd ich sparen
und in Hardware investieren :-)

Grüße, Mario

Autor: Mario Richter (mario001) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hups, sorry, war ich zu langsam :-)

Autor: Maverick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi danke das hat mir schon sehr geholfen.

Irgentwann wollte ich mal einen Schachcomputer bauen. (In C++ habe ich
mal einen geschrieben)
Anfangs wollte ich da mit einem µC machen nur habe ich jetzt gemerkt,
das man ja viel zu wenig Speicher hat sollte man da den Mega128 nehmen
oder echt versuchen das ganze mit einem 386sx zu machen? Ich habe noch
2 rumfliege.

Was bräucht eman alles dafür? Spannungsversorgung, 386, Taktgenerator
SRAM, I/O für Taster und LED´s (2x16) und ein LCD Display. Ist so etwas
machbar und wonach muss ich dafür genau bei google suche? Ich habe noch
keine genauen Datenblätter (wie z.B. Von den Megas) für den 386sx
gefunden. Wo kann ich solche Daten oder auch Beispielbeschatungen mit
erklärung finden?

Autor: Ppp Mmm (sanic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Maverick:
Wenn dir die ATMegas zu wenig Platz bieten schau dir doch mal ARM
Mikrocontroller an:
http://www.mikrocontroller.net/articles/LPC2000_Ph...

Grüße

Autor: Daniel Braun (khani)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

also mit PC-Prozessoren zu arbeiten ist sehr schwer (ich sage
wohlweißlich nicht unmöglich). Ein Mikrocontroller hat fast alles, was
er zum Betrieb braucht "an Bord". Ein PC-Prozessor ist eben "bloß"
ein Prozessor.

Das ist so als würdest Du fragen, ob Du lieber mit dem Moped oder einem
Turbodiesel-Aggregat fahren sollst. Das eine ist komplettes Fahrzeug,
das andere nur ein Antrieb.

Es gibt viele (auch rechenstarke Mikrocontroller) - da findest Du
bestimmt einen für ein Schachprogramm (sollte dann einer sein, der
größere Mengen Speicher verwalten kann - ich glaube das ist gut für
SChachprogramme).

MfG, Daniel.

Autor: Winfried (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auch noch ein Grund: Pull-Down ist störanfälliger als Pull-Up. Oft ist
Low maximal bis 0.7..0.8V definiert. Von 0V .. 0.8V sind es nur 0.8V
Hub, von 5V..2.5V sind es ganze 2.5V Sicherheit.

Autor: Maverick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi danke für die Antworten.

Ok ist es denn möglich an einen µC einen schnellen, grossen externen
SRam anzuschiessen? Also bis jetzt habe ich gelesen, dass das alles
leider sehr langsam gehen soll.

Bei meinem C++ Programm war meistens das Problem, dass in kurzer Zeit
massenweisse Stellungenn Berehcnet und bewertet wurden und ich bin da
realativ schnell auf so ca 128MB gekommen und nach möglichkeit wollte
ich 256MB nutzen ....

Auserdem braucht ich wegen der Stellungsbewertung und den
Stellungsvergleichen einen relativ schnellen spiecher da auch diese
Tabellen relativ schnell über ein 64kb gross werden und dann auch nicht
mehr auf den µC passt.

Leider kann ich nicht erkenne was für ein Controller mein gekaufter
Schachcomputer nutzt sonst würde ich den mal versuchen...

Kennt jemand so ein oder ein vergleichbares Projekt im Internet?
Oder wie kann ich am besten da rangehen? Die Software sollte kein
Problem sein eher die Hardware.

Mfg Maverick

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Äh? Mega32 mit 256MB RAM????

Da bist Du mit einem auf PC-Technik basierenden System besser dran.
FlexATX, die VIA Dinger und derartiges.

Autor: popel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schachcomputer auf µC :
http://www.elektor.de/Default.aspx?tabid=27&art=72517

( 256 MB RAM sind natürlich zu wenig ;-)

Autor: popel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Maverick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi vielen dank!

Autor: Peter Dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zu DDR-Zeiten gabs mal einen Schachcomputer mit Z80 und der war gar
nicht mal schlecht.

Ich glaube, das waren 16kB RAM und 48kB ROM, man braucht also nicht
Unmengen an Speicher.


Peter

Autor: Jim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Zu DDR-Zeiten gabs mal einen Schachcomputer mit Z80 und der war gar
nicht mal schlecht.

Ich glaube, das waren 16kB RAM und 48kB ROM, man braucht also nicht
Unmengen an Speicher."


Die ersten Schachcomputer hatten alle wenig RAM und ROM.
Die ersten Mephistos hatten den 1802 drin und brachten 1250 ELO.
Die mit 6502 brachten schon über 1900 ELO.


Wenn man also mit 256MB RAM nicht auskommt, dann sollte man vielleicht
erstmal am Algorithmus basteln. Ansonsten ist man wohl mit
Brute-Force-Ansatz bei einem dicken AMD64 besser aufgehoben.

Autor: Bassti (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zu1:
Die CMOS-Technik hat N-Kanal zum runterziehen und P-Kanal zum
hochziehen.
die Elektronenbeweglichkeit ist in Silizium fast 3mal so hoch wie die
der "Löcher".
Das heisst ein P-Kanal muss ungefär 3x so gross sein wie ein n-Kanal,
um gleich "stark" zu sein. Das hat man eben nicht unbedingt so
gemacht, deshalb ist die bevorzugte Richtung nach unten ziehen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.