PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : CCPro-Loader - C-Control Pro ohne Interpreter nutzbar



messier
10.04.2009, 21:31
Hallo,

das von mir angekündigte (https://www.roboternetz.de/phpBB2/viewtopic.php?p=436318#436318) Loader Programm für die C-Control Pro kann nun hier (http://www.file-upload.net/download-1615345/CCPro-Loader0.2.zip.html) heruntergeladen werden.

Mit dem Programm kann man Hex-Files die man z.B mit AVR-Studio erstellt hat auf die C-Control Pro raufspielen, ohne dass dessen Bootloader gelöscht werden muss. Man könnte somit also immer noch Programme mit der Conrad IDE entwickeln.

Warum der Aufwand?
Ganz einfach, mit der Conrad IDE lässt sich nur Interpretiertes C (Compact-C) schreiben, was unnötig Rechenleistung verschwendet.

Warum nicht gleich einen "normalen" Atmega128 verwenden?
Hier auch ein bisschen Werbung für Conrad: Derzeit bietet Conrad mit dem Probot Einsteigerset mit ca 62€ ein sehr günstiges Komplettset zum Einstieg in die Mikrocontrollertechnik an. Im Vergleich zum Asuro ist der Mikrocontroller (basierend auf dem Atmega 128) deutlich leistungsfähiger und die Sensorenpalette ist auch umfassender aufgestellt.

Um die CC-Pro nun mit dem eigenen Hexfile zu Programmieren kann man immer noch das mitgelieferte Programmierkabel (beim ProBot praktischerweise auch noch USB) verwenden (das Programm verwendet ja auch noch den gleichen BootLoader ^^).

Im Laufe der Zeit werde ich es sicher noch ein paar mal updaten, vorallem um die Bedienung zu verbessern. Ein Linux-Version ist auch in Planung.
Das Projekt ist OpenSource. Der Quelltext ist im Zip enthalten.

Um das Programm starten zu können, muss das Microsoft .net Framework (http://www.microsoft.com/downloads/details.aspx?FamilyID=333325fd-ae52-4e35-b531-508d977d32a6&displaylang=de) installiert sein.

Natürlich kann ich bei eventuellen Schäden an der C-Control Pro keine Haftung übernehmen.

mfg Thomas

messier
12.04.2009, 10:44
Changelog V0.1:

- Hexfile wird nun auf Korrektheit überprüft
- provisorischer Support für Mega32 (derzeit wird da nur auf die Programmgröße geachtet)
- Support von Programmen > 64k beim Mega128 (bis max 124k, 4k benötigt der Bootloader)
- Ladebalken
- Letztgewählte Einstellungen werden gespeichert

Da die Mega32 wahrscheinlich etwas anders initialisiert wird (die Conrad IDE kann sie ja unterscheiden) aber ich selbst keine besitze um dies zu verifizieren, bräuchte ich jemanden der mir die Kommunikation zwischen Conrad IDE und Mega32 aufzeichnet. Ich hab das mit diesem Programm gemacht:
http://www.serial-port-monitor.com/Download/free-serial-port-monitor.exe
Dabei würde ich eine Kopie der Anfrageansicht benötigen.

mfg Thomas

messier
29.04.2009, 23:03
Hallo,

das Programm ist übrigens mit Hilfe von Mono auch unter Linux lauffähig. Sollte jemand Probleme mit dem Einbinden des Voltcraft Programmierkabels haben, kann ich dazu auch noch ein kurzes Tutorial schreiben.

lg thomas

messier
01.05.2009, 16:11
Neue Version ist nun hier (http://www.file-upload.net/download-1615345/CCPro-Loader0.2.zip.html) verfügbar.

Changelog V0.2:

-Support für Robonova (basierend auf den Programm von i-bot)
-Modularer Aufbau: Unterprogramme für unterschiedliche Bootloader können nun als Plugins (einfache dll's) eingebunden werden.
Derzeit werden folgende Bootloader unterstützt:
C-Control Pro Mega 128
C-Control Pro Mega 32 (nicht getestest)
Robonova (nicht getestet)
-Konvertieren von Hex-Dateien zu Binaries (Hex2Bin) nun möglich
-Fehler beim Laden der Config-Datei unter Linux (Mono) beseitigt.

lg Thomas

ePyx
03.05.2009, 14:06
Hallo Thomas,

danke für den Tipp via Blog-Kommentar, werde dein Programm heute Abend/Nacht mal testen. (bin gerade nicht zu Hause) Hab mir mal schnell das Paket gezogen und werde mir wahrscheinlich nachher im Zug noch den Quelltext teilweise rein pfeifen.

*push*

PS: Die Mono-Kompatibilität kann ich bestätigen, habe es gerade mit monodevelop unter Fedora 10 x64 erfolgreich übersetzt.

Thomas : Kann ich deine Bootloader-Routinen weiter benutzen, sprich mittels C in eigene Software integrieren ? Oder spricht da von deiner Seite etwas dagegen ?

Hab sie zwar noch nicht life getestet, aber der Source sieht nicht übel aus.

messier
03.05.2009, 17:05
Thomas : Kann ich deine Bootloader-Routinen weiter benutzen, sprich mittels C in eigene Software integrieren ? Oder spricht da von deiner Seite etwas dagegen ?
Nein hab nichts dagegen. Kannst gerne verwenden.


Hab sie zwar noch nicht life getestet, aber der Source sieht nicht übel aus.
Danke! Doku ist sicherlich nicht die Beste, aber ich hoffe du findest dich halbwegs zurecht.

Noch einen Tipp wenn du Interrupts verwenden solltest:
Der Booloader setzt zu Beginn das IVSEL Bit im MCUCR Register wodurch erstmal sämtliche Interrupts in die Bootloadersektion umgeleitet werden. Manche Interrupts werden dann anscheinend wieder umgeleitet, aber nicht alle.
Ist aber nicht weiter schlimm. Mit den beiden Zeilen zu Beginn deines Programms:

MCUCR = (1<<IVCE);
MCUCR = 0;
wird bei einem Interrupt wieder zur "normalen" ISR-Adresse gesprungen.

Das Problem (https://www.roboternetz.de/phpBB2/viewtopic.php?t=47525) hat mich eine zeitlang beschäftigt ^^

lg Thomas

P.s.: Rein Interesse halber, an welchem größeren Projekt für den Probot arbeitest du denn gerade?

ePyx
03.05.2009, 19:08
Schritt eins ist eine Joystick-Steuerung, die vorerst kabelgebunden ist und dann später per Bluetooth über einen Rechner abgewickelt wird.

Auf der GUI sollen dann auch Sensorwerte usw. ablesbar sein, bzw. Events ausgelöst werden. Etwa spiele Melodie x bei Tastendruck y.

Sollte das Softwaretechnisch fertig sein, will ich die Peripherie des ProBots ein wenig erweitern (kleines Status Display, CMOS-CAM oder dergleichen schweben mir momentan vor. Dem Ganzen eventuell auch einen bestimmten Grad an Autonomie verleihen wäre auch reizvoll.

Problem ist natürlich immer nur die Zeit. Die Joystickansteuerung ist soweit fertig. Zumindestens der PC-Teil ist soweit, dass man einen beliebigen Joystick unter Windows und Linux ansteuern kann.

messier
03.05.2009, 19:26
Toll, da haben zum Teil eh ganz ähnliche Vorhaben.
Den "Joystick" hab ich mittels einer normalen Infrarotfernbedienung schon umgesetzt.
Derzeit bin ich dabei ein zweizeiliges Display am Roboter zu montieren, danach will ich mit einem BT-222 auch ein kleines Bluetoothmodul befestigen und den Roboter per Handy steuern, aber momentan bleibt mir leider auch etwas wenig Zeit dazu.

ePyx
03.05.2009, 23:25
BT-222 hab ich auch noch hier, dass soll dann später die UART ablösen. Mitm Handy ist natürlich auch nicht übel, mal sehen vielleicht kann ich das ja auf meinen PDA ummünzen :)

Momentan hab ich erste Skizzen für die TOP-Platine, da ich es nicht direkt auf das oberste RACK aufbauen will. Lieber die Daten-IOs wie I2C ein höher durch leiten.

Soo bin endlich zu Hause....dumme Bahn.

itstudent
20.05.2013, 03:10
Guten Tag,

ich habe Interesse an diesem Programm, doch leider funktioniert der Download nicht mehr.
Wäre es möglich, wenn jemand ihn neu hochladet?

Mit freundlichen Grüßen itstudent

PS: Ja, ich weiß, dass der Thread über 3 Jahre alt ist.

Dirk
20.05.2013, 10:27
@itstudent:
PN an mich mit Mailadresse!