Seite 1 von 2

Einstieg in die Entwicklung

Verfasst: Di 30. Jun 2009, 20:32
von volkerp
Gibt es irgendwo ein Video oder einen Crash-Kurs, das bzw. der zeigt, wie ich mit den Propeller-Tools loslegen und die ersten Schritte in Richtung HIVE machen kann? Also:
- Wie kommt die vorbereitete Software in den HIVE?
- Wie entwickle und compiliere ich selbst Programme? (Was wäre hier das Standad-Einstiegs-Programm? Hello World? Oder Pong?)

Re: Einstieg in die Entwicklung

Verfasst: Di 30. Jun 2009, 22:15
von drohne235
Der erste Entwurf vom Tutorial "Build your Hive" findest du hier: http://hive-project.de/projekt-info/build-your-hive Das hast du aber bestimmt schon gefunden. Richtige fertige Tutorials wie man einen Propellerchip programmiert gibt es so nicht. Einige einleitende Kapitel über die Grundlagen sind im Propeller-Handbuch. Ansonsten habe ich persönlich einfach nur mit den vielen Demos die beim Propellertool beiliegen experimentiert, sie an die Gegebenheiten des Hive angepasst und damit gespielt. Viele Testprogramme habe ich ja in dem Testpaket im Downloadbereich zusammengefasst - Link ist in obigem Tutorial. Wenn man mit Spin anfängt ist es einfach wie mit Basic - da braucht man echt nur das Handbuch als Befehlsreferenz und ein wenig Zeit, der Rest kommt von selbst wenn man den Hive aufbaut und die ersten Experimente können ja beginnen wenn der erste Propeller (in der Regel Bellatrix) bestückt ist.

Ansonsten ist das Forum hier das Tutorial, einfach hemmungslos fragen. :)

Re: Einstieg in die Entwicklung

Verfasst: So 26. Jul 2009, 13:47
von volkerp
Ich antworte jetzt mal für andere Einsteiger:

- Wie kommt die vorbereitete Software in den HIVE?

Das geht mit dem "Propeller Tool" von Parallax. Die Quelltexte (Spin-Dateien) werden einfach geladen und mit F10 in den Propeller-Chip übertragen. Einzige Vorraussetzung ist eine serielle Verbindung zum HIVE und die Auswahl des richtigen Propeller-Chips mittels der DIP-Schalter.

- Wie entwickle und compiliere ich selbst Programme?

Auch das geht mit dem "Propeller Tool" von Parallax. In der Onlinehilfe zum Programm werden die ersten Schritte in der Programmierung mit Spin und der Umgang mit dem Tool selbst ausführlich beschrieben. Zum Nachlesen kann man sich auch die PDF-Dateien ausdrucken. Speziell das "Propeller Education Kit Labs. Fundamentials"-Handbuch ist ein sehr guter Einstieg in die Arbeit mit dem Propeller.

Re: Einstieg in die Entwicklung

Verfasst: So 26. Jul 2009, 14:05
von Rainer
volkerp hat geschrieben:Ich antworte jetzt mal für andere Einsteiger:

- Wie kommt die vorbereitete Software in den HIVE?

Das geht mit dem "Propeller Tool" von Parallax. Die Quelltexte (Spin-Dateien) werden einfach geladen und mit F10 in den Propeller-Chip übertragen. Einzige Vorraussetzung ist eine serielle Verbindung zum HIVE und die Auswahl des richtigen Propeller-Chips mittels der DIP-Schalter.

- Wie entwickle und compiliere ich selbst Programme?

Auch das geht mit dem "Propeller Tool" von Parallax. In der Onlinehilfe zum Programm werden die ersten Schritte in der Programmierung mit Spin und der Umgang mit dem Tool selbst ausführlich beschrieben. Zum Nachlesen kann man sich auch die PDF-Dateien ausdrucken. Speziell das "Propeller Education Kit Labs. Fundamentials"-Handbuch ist ein sehr guter Einstieg in die Arbeit mit dem Propeller.
Gute Idee. Ich schreibe gleich mal ein "How to" speziell für den HIVE. Da beim HIVE ja spezielle Dinge zu beachten sind, kann man nicht "einfach mal" ein Programm schreiben und in einen der 3 Propeller nageln. Da die voneinander abhängig sind, wird das wahrscheinlich schief gehen.

Gruß.
Rainer

Re: Einstieg in die Entwicklung

Verfasst: So 26. Jul 2009, 15:01
von Rainer
Während wir unseren HIVE aufbauen sollten wir in den jeweiligen Baustufen die jeweiligen Funktionen testen.
Nur wie bekommen wir die Programme in die jeweiligen Propeller ?

Als erstes benötigen wir das Propeller-Tool von Parallax:

http://www.parallax.com/Portals/0/Downl ... v1.2.6.exe

Nachdem wir das Tool installiert haben schließen wir unseren HIVE wie in der Aufbauanleitung von drohne235
beschrieben an unseren PC an.

Jetzt das Propeller-Tool starten und mit "F7" überprüfen, ob das Tool unsere Propeller findet. Dabei müssen die
Jumper auf dem HIVE folgendermaßen stehen:

1 + 4 auf ON für Regnatix
2 + 5 auf ON für Administra
3 + 6 auf ON für Bellatrix

Wenn wir eine Fehlermeldung sehen, dann erst die Jumper, dann die Verbindungen überprüfen.
Bild

Wenn alles klappt, sehen wir
Bild

Soweit so gut, jetzt sollten wir die jeweiligen Testprogramme in die Propeller "flashen"
Dazu die Testdateien von drohne235 herunterladen. "Testprogramme" unter http://hive-project.de/downloads herunterladen und entpacken.

Im Propellertool jetzt in dieses Verzeichnis navigieren und das jeweilige Testprogramm (je nach Baustufe) in das
Tool laden

Bild

In diesem Beispiel muß der Jumper auf 3+6 stehen, da wir Bellatrix flashen wollen.
Wenn wir nur in das RAM des Propeller flashen wollen, dann jetzt "F10" drücken.
Das Tool überträgt das Programm, verifiziert das RAM und der Propeller legt sofort los.

Wir können auch mit "F11" in RAM UND Eeprom flashen. Das hat den Vorteil, das der Propeller nach einem Neustart
immer noch weiß was er tun soll, da er sich sein Programm dann aus dem Eeprom holt.

Wenn das jetzt bei allen Baustufen einwandfrei geklappt hat, steht uns nichts mehr im Weg, dem HIVE seine komplette Grundkonfiguration zu flashen.
Dazu holen wir uns jetzt im Downloadbereich die "Quellen" und die "Arbeitsdisk-Mini"

Wieder im Tool navigieren wir zu den Quellen und öffnen folgende SPIN-Dateien:

Bild

Mit "F11" wird das SPIN-Programm im Fokus (der Tabulator ist heller und das Programm steht in dem Editierfeld) in den jeweiligen Propeller geladen ( Jumper immer jeweils richtig setzen nicht vergessen ! )
Jetzt noch die Dateien der "Arbeitsdisk-Mini" auf eine SD-Karte kopieren ( max 2GB, keine verzeichnisse auf der SD-Karte erstellen).

HIVE ausschalten, SD-Karte einlegen und HIVE einschalten. Nach kurzer Wartezeit sollte sich auf dem VGA-Monitor "Regime" melden.
Herzlichen Glückwunsch, der HIVE ist betriebsbereit !

Im nächsten Post werde ich erklären, wie man eigene Programme auf den HIVE kriegt.

Gruß.
Rainer

Re: Einstieg in die Entwicklung

Verfasst: So 26. Jul 2009, 15:43
von Mandalargon

Re: Einstieg in die Entwicklung

Verfasst: So 26. Jul 2009, 16:08
von Rainer
Nachdem unser HIVE jetzt läuft stellt sich die Frage, wie bringe ich meine eigenen Programme darauf zum laufen.
In dieser Anleitung geht es nicht um das Programmieren von Spin oder PASM, sondern nur um die Besonderheiten beim HIVE, was die "Übertragung" angeht.

Als Beispiel nehmen wir mal das "Hallo Welt"-Programm (was auch sonst ;) ).
Nur werden wir das Programm ändern ("Hallo Welt" gibts ja schon).

Wir navigieren im Propeller-Tool nach "os1-05-06-2009-kr" und laden "hallo.spin" in das Tool

Bild

Den Text "Hallo Welt"" ändern wir in “We are the Borg. You will be assimilated. Resistance is futile.” und benennen das Programm in "borg.spin" um (Save as ...) .

Jetzt drücken wir aber NICHT "F10" oder "F11", sondern "F8".
Damit wird das Programm nur kompiliert und ein Dialog lässt uns wählen, wie wir abspeichern wollen:

Bild

Dort wählen wir jetzt "Save Binary File", ändern den Namen aber gleich von "borg.binary" auf "borg.bin".
Das File ist jetzt geschrieben worden (man kriegt da keine Meldung) und kann den Dialog schließen.

Jetzt "borg.bin" auf die SD-Karte kopieren und auf dem HIVE testen.

Bild

Ich hoffe das reicht soweit um eigenen Entwicklungen auf die Beine zu helfen.

Gruß.
Rainer

Re: Einstieg in die Entwicklung

Verfasst: So 26. Jul 2009, 16:43
von scotty
Rainer hat geschrieben: ...
Jetzt das Propeller-Tool starten und mit "F7" überprüfen, ob das Tool unsere Propeller findet. Dabei müssen die
Jumper auf dem HIVE folgendermaßen stehen:

1 + 4 auf ON für Regnatix
2 + 5 auf ON für Administra
3 + 6 auf ON für Bellatrix
...
Um gleich einem kleinen Stolperstein vorzubeugen: Wer den DIP-Switch nicht wie auf den Fotos, sondern wie im Schaltplan bestückt hat (also um 180° gedreht), muß natürlich die Schalterstellungen für Bellatrix und Regnatix tauschen.

Dank an Rainer für dieses kleine Tutorial, das wird dem einen oder anderen Einsteiger den Start ins HIVE-Leben sicher erleichtern :-)

Re: Einstieg in die Entwicklung

Verfasst: So 26. Jul 2009, 19:30
von drohne235
Das Rätsel um ios.startram...

Wer jetzt mit dem Programm "hallo.spin" oder anderen Quellen experimentiert, wird sich früher oder später zwei Fragen stellen:

"Was zum Teufel hat es mit der auskommentierten Zeile "ios.startram" auf sich?"

oder

"Warum zum Teufel bleibt der Monitor schwarz wenn ich das Programm per F10 direkt in den Speicher von Regnatix schiebe?"

Genau das ist der Punkt. Der grundlegende Code ist ja in Regnatix angesiedelt. Nun ist es bei der Entwicklung natürlich praktisch, wenn man den Code nicht erst compiliert, als BIN-datei abspeichert, auf SD-Karte kopiert und auf dem Hive startet. Schneller ginge es ja mit einem schnellen Upload direkt in den RAM per F10.

Aber was genau passiert bei einem Upload? Als erstes löst das Propeller Tool ein Reset aus und überträgt den compilieren Code in den Ram von Regnatix. Nach einem Reset aber startet der Bellatrix-Chip den Loader aus seinem EEProm, welcher auf einen Treibercode für die Grafik wartet.

Bei einem normalen Systemstart/Reset wird die Kommandozeile Regime geladen, welche wiederum als erstes jenen Treiber "vga.bin" zu Bellatrix sendet. Startet man eine BIN-Datei vom Laufwerk läuft in Bellatrix ja schon der entsprechende Treiber, aber bei einem direkten Upload wird dieser Treiber ja wieder gelöscht und der Bellatrix-Loader wartet auf eine neue Übertragung und genau aus diesem Grund bleibt der Bildschirm schwarz.

Und genau dieses Problem löst die ios-Routine "startram" indem sie einen Treiber vom Laufwerk nach Bellatrix überträgt.

Fazit: Für die Entwicklung kann man die Zeile mit der Funktion ios.startram aktivieren um einen direkten Upload per F10 durchzuführen. So ist eine schnelle Entwicklung möglich. Läuft das Programm kommentiert man diese Zeile aus und speichert den compilierten Code als BIN-Datei ab u ihn auf die SD-Karte zu kopieren.

Re: Einstieg in die Entwicklung

Verfasst: So 26. Jul 2009, 20:00
von Bushmills
kann die linux version von http://www.fnarfbargle.com/bst.html zum initiellen laden benutzt werden?