Hallo, ich hab die C-ControlPro Mega 128, auf dieser ist ein ATMEGA128 Controller drauf. Ich würde gerne diesen Controller alleine verwenden, aber auf dem Controller von Conrad ist ein Bootloader drauf. Gibt es irgendeine Möglichkeit den Bootloader herunterzuladen und auf einen anderen ATMEGA128 zu flaschen oder einen anderen Bootloader der gleich funktioniert das ich die den Controller mit Basic programmieren kann? mfg Christoph
Christoph wrote:
> Hat keiner von euch eine Antwort für mich??
Nicht mal 2,5h, hast Du überhaupt Expreßzuschlag bezahlt ?
Ich benutze keine Monster Mega128 um dann 90% des Flash ungenutzt zu
lassen.
Kann daher nicht helfen.
Peter
geht das nicht mit dem AVR studio? muss ehrlich sagen, dass ich das noch nie probiert habe, weil ich die selbe Eigenschaft wie Peter habe :)
Ich will ja nicht rummotzen!! Nur ich kenn mich nicht so gut aus!! Nach was soll ich im Datenblatt suchen?? mfg
So viele benutzen den C-ControlPro Mega 128 anscheinend nicht. Da heisst es mehr Geduld haben, bis sich jemand meldet. Nutz die Zeit und die Gelegenheit und arbeite dich in die Doku deines µC ein. Vergleiche dein System mit den 08/15 ATMega-Systemen wie die hier im Wiki beschrieben sind. Jede Gemeinsamkeit und jeder Unterschied bringt dich weiter. OK. Jetzt die Meinung eines C-ControlPro Mega 128 Laien... Such danach, wie die C-ControlPro Mega 128 Toolchain funktioniert und wie das Board beschaltet ist (sic). Überdenke dein Vorhaben. Ist es überhaupt notwendig den jetzigen Bootloader zu killen? Kann (oder will) der keinen Binärcode aus fremden Toolchains laden? Obacht!!! Wenn du den jetzigen Bootloader absägen willst, musst du anschliessend einen anderen Zugang zum µC haben oder du stehst draussen und hast einen kratzigen Schlüsselanhänger! Kann bei diesem Modul über ISP oder JTAG ein in Binärcode übersetztes Programm als HEX-File geladen werden? Das ist IMHO die Grundvoraussetzung, um den Bootloader auf einfache Weise zu ersetzen. Für die ISP Programmierung brauchst du natürlich einen ISP fähigen Programmer. Für JTAG entsprechend ein JTAG-Device. Und wenn der jetzige Bootloader ersetzt werden soll, musst du natürlich zusätzlich einen anderen Bootloader haben. Wenn du ISP oder JTAG Zugang hast, kannst du sehr wahrscheinlich auch den vorhandenen Bootloader auslesen. Ein anderer Weg wäre ein µC Programm zu schreiben und mit dem vorhandenen Bootloader zu installieren, welches dir den Inhalt des µC sendet. Der muss aber nicht auf einem fremden Board funktionieren, ggf. ist er mit der Hardware verdongelt. Und wie erzeugt das begehrte BASIC die Programme für den µC? Arbeitet es mit einem Interpreter mit Bootloader auf dem µC (unwahrscheinlich) oder erzeugt es durch Kompilieren einen Binärcode (Maschinenprogramm)?
@Stefan Hallo, danke für deine Antwort! ISP Zugang hat der Controller so wie er jetzt ist. Am besten währe wenn ich den Bootloader auslesen könnte dann könnte ich ihn auch auf einen anderen Controller wieder installieren, nur wie mach ich das?? Wie gesagt einen ISP Zugang hat er mit dem kann ich die Daten über eine USB Schnittstelle an den Controller senden. Benötige ich da irgendeine Software damit ich den Bootloader auslesen kann?? mfg Christoph
Ich habe mal kurz die Doku überflogen (http://www.c-control-pro.de/documentation/hardware.htm) Wenn der µC applikationsfertig ist sind auf dem µC 1/ der Bootloader (für Programmieren und Debuggen) 2/ der Interpreter 3/ das Anwenderprogramm Der Bootloader ist immer auf dem µC. Er schaufelt Daten über USB vom Host (PC) auf das Target (µC). Die Daten bestehen aus dem Interpreter und dem Anwenderprogramm. In der Doku steht: Version 1.39 vom 09.06.2005 neue Features • BASIC Unterstützung • CompactC und BASIC können in einem Projekt gemischt werden ... Eventuell reicht ein einfaches Update auf diese Version, damit du wie gewünscht mit BASIC programmieren kannst. Wenn du trotzdem den Bootloader ersetzen willst: Du müsstest klären, wie du den ISP Programmer anschliessen willst/kannst, ohne über USB zugehen. Der USB Weg ist nur für den Bootloader! Anhand der Pinzuordung kannst du herausfinden, wo die SPI Pins auf welchem Connector liegen. Zusätzlich brauchst du für ISP noch RESET auf einem Connector. http://www.c-control-pro.de/documentation/pinzuordnung128.htm Und du brauchst noch einen ISP Programmer, der im allgemeinen obige Signale auf einem 10-poligen oder 6-poligen Connector hat. http://www.mikrocontroller.net/articles/AVR_In_System_Programmer Wenn der ISP Programmer von AVR Studio unterstützt wird, kannst du mit dem Programm ungeschütztes Flash, EEPROM und den Zustand der Fuses auslesen. Ob ein Ausleseschutz da ist, wirst du dann sehen. Dass die ausgelesenen HEX-Files vom Bootloader auf einem anderen ATMega128 funktionieren, bezweifele ich. Es fehlt ja die komplette Mimik des C-Control Pro Mega 128 Boards. Da sind ja noch mehr Käfer drauf als der ATMega128 oder sein Kollege. Ob ein anderer Bootloader auf dem C-Control Pro Mega 128 funktioniert, ist davon abhängig, wie er geschrieben ist. Ich sehe schwarz, einen direkt funktionierenden fertig irgendwo zu finden. Er braucht z.B. genau die USB Routinen passend zum C-Control Pro Mega 128 Board... Fazit: Ich würde einfach mit dem jetzigen Bootloader des C-Control Pro Mega 128 weiterarbeiten, wenn nix gravierendes dagegen spricht. Rauswerfen des Bootloaders gibt dir ein nacktes Board für das du dich selbst um die den ISP-Programmer und die Firmware kümmern musst.
Sorry ich hatte irgendwie im Kopf, dass du mit BASIC arbeiten willst. Wie ich darauf komme, weiss ich nicht. Erzähl mal, was dir an dem jetzigen Aufbau nicht gefällt und warum du was ändern willst.
Ah ich seh's BASIC steht im ersten Beitrag. Sollte ja laut Doku und Update gehen.
Ach so ich sehe deine Motivation aus einem anderen Forenbeitrag. Du willst einen nackigen ATMega128 holen, auf eine Platine löten, die Firmware vom C-Control Pro Mega 128 reinstecken und so einen günstigen Klon aufbauen. Das kann rechtlich bedenklich sein. Und wird technisch so nicht funktionieren. Ich würde in diesem Fall die C-Control Pro Mega 128 Firmware in Ruhe lassen und das zweite ATMega128 System von Grund auf selbst aufbauen. Dabei würde ich nicht mit dem 128 Flaggschiff anfangen sondern erstmal mit dem Mega8 Mega16 o.ä. anfangen. Die sind günstiger und leichter zu handhaben (DIP).
Hallo, ich brauche den ATMEGA128 deswegen weil ich min. 24 Digitale Ports und 2 RS232 Schnittstellen brauche(eine zum Software reinladen und die zweite für ein Gerät das angeschlossen wird. Ich glaub wenn ich da von Null anfange wird das sehr schwer werden wenn ich die ganzen Routinen selber schreiben mus (für RS232 usw..). auserdem möcht ich das ja nur für Privatzwecke verwenden und da wird das dann mit dem rechtlichen nicht so schlimm sein denk ich mal! mfg Chrsitoph
So ganz durchdacht ist die Schoose nicht. Du müsstest eh bei fast Null anfangen. Mir stellt sich sogar die Frage, was machst man überhaupt mit so einem C-Control Pro (CCP)-Board. Die CCP-Firmware (Bootloader+Interpreter) wird auf dem ATMega128-Selbstbau nicht laufen. Es fehlt dort z.B. der Käfer für die USB Schnittstelle und das externe SRAM und die Jumper und und und... Und die CCP Host-Software kannst du zur Entwicklung einer kleinen Serie schlecht nutzen, denn die setzt auf dem Target eine CCP Firmware voraus. Somit kannst du auch keine fertig entwickelte Programme vom CCP-Board direkt auf andere ATMega128-Selbstbauten übernehmen. Es sind keine fertigen Maschinenprogramme sondern nur interpretierbare Bytecode-Programme. Und dafür fehlt auf Selbstbauten der Interpreter und natürlich setzt der Interpreter bestimmte Käfer auf dem Board voraus, die ein nicht 1:1-Klon nicht hat. Wenn man mehrere Targetsysteme aufbauen will und nicht in mehrere CCPs investieren will, bleibt eigentlich nur der klassische Weg, insbesondere wenn es mal kommerziell werden könnte: ATMega128-System nach Wunsch aufbauen oder kaufen und mit einer "normalen" Entwicklungsumgebung programmieren. Für Flash-via-RS232 (oder USB) du kannst es schaffen einen Open-Source-Bootloader auf dem ATMega128-Selbstbau einzurichten. Grundvoraussetzung: ISP-Programming um den Bootloader reinzuschaffen. Das ist Standard. Und Programmentwicklung in C oder BASIC auch. Zurück zum CCP... Bleibt eigentlich nur der Einsatz als Einzelsystem... die CCP-Entwicklungsumgebung nimmt dir ja viel Entwicklungsaufwand weg und du kannst schnell zum Ziel kommen. Aber es bleibt die fixe Beschaltung auf dem CCP, die man nur in Grenzen ändern kann. Es wäre nachzusehen, wieviele IO-Pins du tatsächlich zur Verfügung hast. Vielleicht kannst du mit Software-Multiplexing an den Pins und/oder einem externen Switch-IC oder einem Bus (I2C fällt mir spontan ein) was reissen, wenn es jetzt zu wenige Pins sind. Lösungen dafür gibt es im Netz z.B. auch hier in der Artikelsammlung.
Hallo, ich grabe das Thema jetzt nochmal aus und erkläre das ganze Problem nochmal. Ich habe den ATMEGA 128 von C-Control als einzelnen Chip gekauft (ohne Entwicklungsboard usw.) Habe mir selbst eine Platine erstellt auf der der Controller aufgelötet ist, das funktioniert auch alles ohne Probleme. Mein Wunsch ist nun auf einen normalen ATMEGA 128 umzusteigen ohne dem C-Control Bootloader da ich nicht auf Conrad und C-Control angewiesen sein möchte, falls es den Controller einmal nicht mehr zu kaufen gibt. MfG Christoph
Christoph schrieb: > Mein Wunsch ist nun auf einen normalen ATMEGA 128 umzusteigen ohne dem > C-Control Bootloader da ich nicht auf Conrad und C-Control angewiesen > sein möchte, falls es den Controller einmal nicht mehr zu kaufen gibt. Dann mach dir ein Backup des derzeitigen Flash Inhaltes des C-Control Mega, falls du nochmal zurück zur Software vom blauen Klaus willst und programmiere dann den Mega128 per ISP und der IDE, die dir zusagt. Das kann Bascom sein, LunaAVR oder eben Assembler und C. Du kannst aber auch einfach einen frischen Mega128 benutzen. Interessant ist, das du dafür etwa 10 Jahre gebraucht hast :-O
:
Bearbeitet durch User
Hallo. Ich habe mich auch an einem frischen Atmega 128 versucht, nur leider wird keines der aufgespielten Programme ( Bascom) vom controller gestartet. Der Controller wird zwar erkannt, und scheinbar auch programmiert, per usbASP aber ein einfaches Blinken einer Led startet einfach nicht??? Daher bin ich jetzt wieder auf den Atmega 8 tqfp zurück und fehlende Aus oder Eingänge realisiere ich per Schieberegister.
Rene schrieb: > Hallo. Ich habe mich auch an einem frischen Atmega 128 versucht, nur > leider wird keines der aufgespielten Programme ( Bascom) vom controller > gestartet Fuses nicht korrekt gesetzt, insbesondere M103 Fuse.
Hallo, ich selber benutze für meine Schaltung ebenfalls die Conrad C-Control als ATmega32/128. Ich schätze das THT 2.54mm Lochrasteraster, dass auf einfachen Lochplatinen benutzt werden kann. Zudem ist der Oszilator bereits im Gehäuse mit verbaut. Alle Anschlüsse sind 1:1 nach außen gelegt. Programmieren tue ich in C im AtmelStudio mit dem AVRISP mkII. Natürlich muss bevor der Chip mit AtmelStudio geflasht werden kann erstmal ein 'Erase Chip' mit dem Device Programming Tool im AtmelStudio gemacht werden. Gruß karl
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.