Hallo,
dieses Thema wird es schon hundert mal hier gegeben haben, trotzdem
stehe ich vor einem für mich unlösbaren Problem. Mein Sohn hat sich an
einer Schulaufgabe festgebissen und kommt nicht so richtig weiter.
Zu den Gegebenheiten:
2 Mikrocontroller ATMega644, kommuniziert wird über einen PIN (wird
bestimmt anders bezeichnet)
Ausgabe soll über ein LED-Board mit 16x16 LED's erfolgen. Die Hälfte der
Reihe wird von Controller1 angesprochen die zweite Hälfte von
Controller2.
Gesteuert wird über Tastschalter 8 an der Zahl. Sieler1, Spieler2 und
Spielauswahl.
Die Ansteuerung über den ersten Controller scheint kein Problem
darzustellen,
erst wenn der zweite ins Spiel kommt wirds Problematisch.
Ein Impuls vom Taster wird ausgeführt, beim zweiten Versuch sind die
Spieler LED's aus und nur der "Ball" ist noch im Spiel.
Ich programmiere zwar selbst, habe mich aber noch nie mit
Mikroprozessoren
auseinandergesetzt, da Elektronik nicht meine Welt sind.
Hat jemand schonmal sowas gemacht?
Bin für jede Hilfe dankbar.
swirfel schrieb:> Ich programmiere zwar selbst,
Hm. Was denn?
Denn eigentlich sollte jemand, der "selber programiert", zumindest eine
verständliche Aufgabenbeschreibung erstellen können.
Das, was du da beschreibst, ist völlig unvollständig und unverständlich.
Und ganz ehrlich, wenn dein Sohn solche Aufgabenstellungen als
Hausaufgabe bekommt, dann kann der das vermutlich besser lösen als du.
Das klingt nicht nach Anfängerkurs.
Die Vorgehensweise ist bei so etwas immer die gleiche: Aufgabe
vollständig beschreiben, und in Teilprobleme zerlegen. Tasten auslesen,
LED's ansteuern, Spiellogik (die man wohl noch weiter runterbrechen
muß), Kommunikation zwischen den Prozessoren, usw.
Oliver
Oliver schrieb:> Das, was du da beschreibst, ist völlig unvollständig und unverständlich.
Nana, jetzt lass mal die Kirche im Dorf. Ich habe den Beitrag auch
gelesen und prinzipiell verstanden worum es geht.
Die Aufgabe selbst finde ich furchtbar. Zwei ATMega644 für ein 16x16
Pong? Das ist weltfremd hoch drei.
@swirfel
Schick deinen Sohn persönlich her, dann kann er erklären wo er nicht
weiterkommt. Sollte es daran schon hapern, wird es eh nichts.
Meister Eder schrieb:> Ich habe den Beitrag auch> gelesen und prinzipiell verstanden worum es geht.>> Die Aufgabe selbst finde ich furchtbar.
Eben. So gings mir auch, und daher fehlt mir etwas der Glaube, daß das
auch so ist...
Oliver
Hallo Oliver,
der Junge ist 16 und hat sich die Aufgabe selbst gestellt. Warum er auf
2 Controller kommt, kann ich nicht sagen, Fakt ist, er hat Beide
aufgelötet und sollte es jetzt auch so zu Ende bringen.
swirfel
Es war eine Schnapsidee.
Und jetzt weiß er auch warum.
Man nimmt niemals mehrere µC, wenn einer alleine das Baby aber sowas von
mit links schaukeln kann.
Wer zwei Controller beherrschen will, muss erstmal EINEN COntroller sehr
gut beherrschen. Einen Quadcore I7 kann jeder Depp kaufen, aber
PROGRAMMIEREN sicher nicht.
Und warum genau kann der Sohn nicht direkt im Forum fragen, sondern das
muss Papa machen? Sind das die viel beschworenen "Helikoptereltern"? Ich
würde mich als Sohn in Grund und Boden schämen.
Und du solltest dir auch mal sagen lassen, dass die Idee quatsch ist.
Das zeigt wie viel Sinn es macht, wenn sich jemand mit sehr mäßigen
Wissen, selbst eine Aufgabe stellen soll. Die Aufgabe muss von jemandem
mit deutlich mehr Wissen kommen, sonst besteht, wie hier, die Gefahr
dass die Aufgabe unnötig komplex oder gar mit dem vorhandenen Wissen des
Bearbeiters gar nicht lösbar ist.
gruß cyblord
@cyblord
hört sich an wie ein original Forentroll. Ich habe 4 Kinder und Du?
Ich bin schon zu blöd um Mikrocontroller zu programmieren und jetzt soll
ich auch noch Heli fliegen?
Ich klink mich dann aus, Schade
swirfel schrieb:> Ich habe 4 Kinder und Du?
Ist das ist jetzt heute schon ne Leistung? Möchstest Beifall? Oder was
soll uns das sagen?
Und wen interessierts? Das kannst du im Brigitte-Forum diskutieren.
Nur WARUM jetzt der Aufgabensteller- und Bearbeiter in Personalunion,
sich nicht selbst hier erkundigen kann, diese Antwort bleibst du
schuldig.
Dann könnte man nämlich erfahren, WARUM er unbedingt 2 Controller
vorgesehen hat. Das ist DIE Frage hier. Weil das 1 Controller super
einfach alleine kann. Und es die Aufgabe stark vereinfachen würde. Auch
wenn 2 Controller aufgelötet sind, kann er trotzdem nur einen nehmen.
Ist jetzt aber "Multiprozessor" sozusagen ausdrücklich die angestrebte
Aufgabe, sieht es anders aus. Nur das könnte man mit dem Sohn direkt
viel besser erörtern.
> Ich klink mich dann aus, Schade
Sehr schade, ja...
cyblord ---- schrieb:> Und warum genau kann der Sohn nicht direkt im Forum fragen, sondern das> muss Papa machen? Sind das die viel beschworenen "Helikoptereltern"? Ich> würde mich als Sohn in Grund und Boden schämen.
Manmanman, du hörst auch nicht auf zu trollen bis du den letzten User
aus diesem Forum vertrieben hast, oder?
Boris P. schrieb:> Manmanman, du hörst auch nicht auf zu trollen bis du den letzten User> aus diesem Forum vertrieben hast, oder?
Nix trollen. Die Wahrheit tut halt weh. Wahrscheinlich bist du auch so
drauf. Schlimm. Wie sollen solche Kinder mal selbständig werden?
Wenn die dann mal auf der Uni ne Aufgabe nicht raffen, dann rennt der
Papa wahrscheinlich auch zum Prof und fragt nach.
cyblord ---- schrieb:> Nur WARUM jetzt der Aufgabensteller- und Bearbeiter in Personalunion,> sich nicht selbst hier erkundigen kann, diese Antwort bleibst du> schuldig.
Ich hoffe mal, dass der Problemhaber zur Zeit in der Schule ist.
So gesehen erst mal kein Grund zur Aufregung.
> Dann könnte man nämlich erfahren, WARUM er unbedingt 2 Controller> vorgesehen hat.
Das würde mich auch interessieren.
Ich kann mir schon was vorstellen. 16*16 LED sind schon nicht wenig und
mit einem µC wären ihm die Pins ausgegangen.
@swirfel
Nur: da macht man dann nicht einen 2-ten Prozessor drann, es sei denn
man programmiert damit etwas das man eine Porterweiterung nennt. D.h.
man schafft sich für den einen Prozessor mehr Pins. Das geht zb mit
Schieberegister, das geht mit dezidierten Portexpandern und ja man kann
sich natürlich auch einen µC dafür programmieren.
Aber: Der springende Punkt ist - man lässt die Programmlogik auf einem
Prozessor. Hat man tatsächlich einen 2-ten Prozessor im Spiel, dann ist
der Hilfskraft und hat nichts zu sagen.
> Ist jetzt aber "Multiprozessor" sozusagen ausdrücklich die angestrebte> Aufgabe,
sicher nicht.
Wie weiter oben schon jemand sagte: Multiprozessor ist schon die hohe
Kunst. Kommunikation, Synchronisation, ... alles wird komplexer. Und das
im speziellen Fall aus keinem guten Grund.
Kann ich mir bei einem 16-jährigen nicht vorstellen, dass er sowas im
Griff hat. Und wenn, dann müsste er nicht hier fragen, sondern würde uns
erklären worauf man aufpassen muss, sollten wir je in die Situation
kommen.
Aber warten wir mal ab.
Noch weiß keiner die exakte Systemarchitektur und was sich Sohnemann als
Arbeitsteilung der beiden µC hat einfallen lassen. Und dann wirds
schwer. Denn solche Dinge ohne reale Hardware nachzuvollziehen, kann
ausarten. Aber vielleicht ist es ja auch ein banaler XOR-Fehler da oder
dort. Die Hoffnung stirbt zuletzt.