Forum: Mikrocontroller und Digitale Elektronik Hilfe! Ping Pong: Code verstehen und umschreiben


von Lorenz (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich versuche mich schon seit geraumer Zeit am "programmieren" von 
Attinys mit Bascom AVR. Mein Wissen ist allerdings eher bescheiden und 
ich beschränke mich auf das Abwandeln existierender Programme.

Mein neuestes Projekt ist das PING-PONG Retro Spiel mit nem Atmega 8, 
dass es von Franzis und Conrad gibt.
http://www.conrad.de/ce/de/product/902766/

Nun möchte ich folgende Änderungen am Basisprogramm (im Anhang) 
vornehmen:

Keine Auswahl von Spieler -> nur Computer vs. Spieler

Keine Auswahl von Level -> es werden hintereinander 3 ansteigende 
schwierigkeitslevel gespielt(sofern vorheriges gewonnen)

Glückwunschtext nach 3tem Level
-> dafür hab ich immerhin schon mal den super-mustergenerator gefunden:
http://www.elo-web.de/elo/mikrocontroller-und-programmierung/ping-pong/super-mustergenerator

Mein Problem:
Das Programm ist so gut wir gar nicht dokumentiert.
Jede kleine Erkenntnis muss ich mir mühselig erarbeiten.
Ich möchte zwar was lernen, aber nachdem ich nun so einige Stunden davor 
sitze und immernoch nicht weiter bin, bitte ich hier um Hilfe:

1. Vielleicht könnte jemand der das Programm kennt, oder dem es ein 
leichtes ist, für mich (und andere) das Programm besser dokumentieren?

2. und/oder jemand gibt mir Tipps wie ich an mein Ziel gelange.

Ich hoffe jemand findet sich, sonst landet das Ding wohl in der Kiste.

Gruß,

Lorenz

von Mirko H. (m1rk0)


Lesenswert?

Hier gibt es eine andere Version des Spiels, die ist zwar in C 
geschrieben, aber nach erster Sichtung sehr umfangreich kommentiert, 
vielleicht ist das ja ein besserer Ausgangspunkt:

http://blogs.zobniow.net/micro/2010/01/09/gpl-free-pong-on-conradde-board/

Was ist denn genau Dein Ziel? Willst Du nur die genannten Funktionen 
hinzufügen oder was dabei lernen? Im letzteren Fall würde ich 
vorschlagen mit Hilfe eines C-Programms wie dem genannten (oder einem 
der vielen anderen, die es inzwischen auf http://elo-web.de gibt) und 
dem gcc-Tutorial auf dieser Seite grundlegender an die Sache 
heranzugehen. Die Pingpong-Platine ist zum ersten Experimentieren 
jedenfalls eine ziemlich nette Sache.

Mirko

von Harald Wilhelms (Gast)


Lesenswert?

Mirko Horstmann schrieb:
> Hier gibt es eine andere Version des Spiels, die ist zwar in C
> geschrieben, aber nach erster Sichtung sehr umfangreich kommentiert,
> vielleicht ist das ja ein besserer Ausgangspunkt:
>
> http://blogs.zobniow.net/micro/2010/01/09/gpl-free...
>
> Was ist denn genau Dein Ziel? Willst Du nur die genannten Funktionen
> hinzufügen oder was dabei lernen? Im letzteren Fall würde ich
> vorschlagen mit Hilfe eines C-Programms wie dem genannten (oder einem
> der vielen anderen, die es inzwischen auf http://elo-web.de gibt) und
> dem gcc-Tutorial auf dieser Seite grundlegender an die Sache
> heranzugehen. Die Pingpong-Platine ist zum ersten Experimentieren
> jedenfalls eine ziemlich nette Sache.

Inzwischen wird sie ja auch als Grundlage eines "Lernpaket
Mikrocontroller-Programmierung in Bascom und C" verwendet.
Gruss
Harald

von Mirko H. (m1rk0)


Lesenswert?

Harald Wilhelms schrieb:
> Inzwischen wird sie ja auch als Grundlage eines "Lernpaket
> Mikrocontroller-Programmierung in Bascom und C" verwendet.

ACHTZIG EURO???!?!

Bei Conrad wird der Originalbausatz immer billiger:
http://www.conrad.de/ce/de/product/902766/CONRAD-RETRO-SPIEL-PING-PONG

Mirko

von Harald Wilhelms (Gast)


Lesenswert?

Mirko Horstmann schrieb:
> Harald Wilhelms schrieb:
>> Inzwischen wird sie ja auch als Grundlage eines "Lernpaket
>> Mikrocontroller-Programmierung in Bascom und C" verwendet.
>
> ACHTZIG EURO???!?!

Naja, für manchen Anfänger ist ja vielleicht die dazugehörige
Dokumentation ganz brauchbar...

> Bei Conrad wird der Originalbausatz immer billiger:
> http://www.conrad.de/ce/de/product/902766/CONRAD-R...

Er ist schon wieder teurer geworden. Zwischendurch
warens nur 5 EUR.
Gruss
Harald

von Lorenz (Gast)


Lesenswert?

Danke für den Tip.
Ich hatte gehofft ich komme mit Bascom aus, da ich mich C gar nicht 
auskenne.
Vielleicht probier ich es mal.

Ich hab diesen "Lernbausatz" und er ist wirklich total überteuert!
Und NEIN die Dokumentation ist für den A****.

Darum muss ich ja hier um Hilfe bitten...

Falls mir trotzdem jemand bei Bascom helfen würde, würde ich mich 
freuen!

Gruß,

Lorenz

von Karl H. (kbuchegg)


Lesenswert?

Lorenz schrieb:
> Danke für den Tip.
> Ich hatte gehofft ich komme mit Bascom aus, da ich mich C gar nicht
> auskenne.
> Vielleicht probier ich es mal.
>
> Ich hab diesen "Lernbausatz" und er ist wirklich total überteuert!
> Und NEIN die Dokumentation ist für den A****.
>
> Darum muss ich ja hier um Hilfe bitten...
>
> Falls mir trotzdem jemand bei Bascom helfen würde, würde ich mich
> freuen!

Am besten suchst du dir ein BASCOM Tutorial.
Deine ersten Programme werden einen Umfang von 10, vielleicht 20 Zeilen 
nicht übersteigen. Das was du da hast, ist viel zu umfangreich für einen 
Neueinsteiger. Da kommen zu viele Dinge auf einmal zusammen.

Das ganze ist wie beim Schachspielen. Erst muss man die Bewegungen der 
Einzelfiguren lernen. Das geht ziemlich fix. Aber dann kommt der harte 
Teil: Das Zusammenspiel der Einzelteile. Das Entwickeln und Umsetzen 
einer Idee basierend auf diesen gelernten Grundkombinationen.

Ein Schachanfänger fängt nicht damit an, dass er Weltmeisterpartien von 
Karpov studiert. Die Ideen und Feinheiten, die da ins Spiel eingeflossen 
sind, versteht er nämlich noch nicht, ohne die Grundlagen und 
Grundkombinationen aus dem FF zu beherrschen.

Und um dir den Schwierigkeitsgrad zu verdeutlichen:
Das Programm, das du da hast, ist komplex genug, dass auch Profis, die 
schon jahrelange Erfahrung mitbringen, da schon mindestens 1 bis 2 Tage 
Analysearbeit reinstecken müssen, um alle Teile zu verstehen und ihr 
Zusammenspiel einschätzen zu können. Nach ein paar Stunden wird man 
versuchsweise die ersten Änderungen anbringen können, aber als Profi 
rechne ich erst mal damit, dass ich an der falschen Stelle den Hebel 
ansetzen werde und meine Versuche ein paar mal rückgängig machen muss. 
Daher die 1 bis 2 Tage.

von Lorenz (Gast)


Lesenswert?

Hm, danke für die Einschätzung.
Etwas ähnliches hatte ich befürchtet.

Leider komme ich bei dem Programm in C auch nicht weiter:
Das ist zwar besser dokumentiert, aber es fehlt leider der 
Computergegner...

Dann ist dieses Projekt wohl gestorben, denn Wochen wollte ich darin 
nicht investieren.

Gruß,

Lorenz

von Lorenz (Gast)


Lesenswert?

ps:
Was mich nur ärgert ist, dass in diesem schweineteuren "Lernbausatz", 
mit der Hardware für 5€, das Hauptprogramm nicht vernünftig dokumentiert 
ist.
Wie soll man da was lernen? GRML

von Karl H. (kbuchegg)


Lesenswert?

Lorenz schrieb:
> ps:
> Was mich nur ärgert ist, dass in diesem schweineteuren "Lernbausatz",
> mit der Hardware für 5€, das Hauptprogramm nicht vernünftig dokumentiert
> ist.


Ich kenne diesen Lernbausatz nicht.
Ich kann mir aber nicht vorstellen, dass der Kursus bei diesem Programm 
einsetzt. Ich denke eher, du versuchst da jetzt die ersten 70 oder so 
Seiten deiner Kursunterlagen zu überspringen. Und das funktioniert nun 
mal nicht.

von Lorenz (Gast)


Lesenswert?

Karl Heinz Buchegger schrieb:
> Ich kann mir aber nicht vorstellen, dass der Kursus bei diesem Programm
> einsetzt. Ich denke eher, du versuchst da jetzt die ersten 70 oder so
> Seiten deiner Kursunterlagen zu überspringen. Und das funktioniert nun
> mal nicht.

Nicht ganz. Sicher ist das nicht das "Einstiegsprogramm", aber vorweg 
werden ein paar einfache Programme geschoben, die ich zwar verstehe, die 
aber mit diesem "Hauptprogramm" nichts zu tun haben. Es ist also leider 
kein "aufbauender" Kurs, sonder wie ich es jetzt sehe, ein Kurs der um 
dieses Pong-Spiel drumherum gebaut wurde. Nach dem Motto:
was kann man mit der vorhanden Hardware noch anstellen

Naja ich werd den Hersteller mal fragen, warum der Code kaum kommentiert 
ist. Mal sehen was der dazu sagt.

von Harald Wilhelms (Gast)


Lesenswert?

Lorenz schrieb:

> Naja ich werd den Hersteller mal fragen, warum der Code kaum kommentiert
> ist. Mal sehen was der dazu sagt.
 Am Besten sprichst Du da den Burkhard Kainka über seine Webseite
oder über die Seite elo-web direkt an. Der ist da m.W. der Autor.
Natürlich ist der Preis nicht gerade niedrig. Aber wenn du das
vergleichst mit anderen Anbietern, die  n i c h t  von irgend-
welchen Halbleiterfirmen gesponsert sind, durchaus angemessen.
Gruss
Harald

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.