HEX FIles auf uC laden
HEX FIles auf uC laden
hallo,
ich benutze jetzt eclipse auf linux mit sdcc für die uC Entwicklung.
Nur leider weiß ich nicht, wie ich das HEX File auf den uC per serieller Schnittstelle übertrage.
Kann mir da einer weitehelfen?
mfg
ich benutze jetzt eclipse auf linux mit sdcc für die uC Entwicklung.
Nur leider weiß ich nicht, wie ich das HEX File auf den uC per serieller Schnittstelle übertrage.
Kann mir da einer weitehelfen?
mfg
Re: HEX FIles auf uC laden
hi,
im Prinzip
aber dann müsste ja auf dem uC schon ein Porgramm laufen, das
Hex-Files empfangen und verstehen kann und ggf. das interne
Flash-ROM programmieren kann. Da gibt's ja Zillionen Möglichkeiten.
Was ist denn das für ein uC, was läuft da drauf schon und wo sollen
die Bits aus dem Hex-File letztlich landen?
Allgemein nützliche Tools für serielle Schnittstellen sind z.B.
picocom (viel besser als minicom), stty, statserial und
notfalls setserial.
im Prinzip
Code: Alles auswählen
cat file.hex > /dev/ttyS0
Hex-Files empfangen und verstehen kann und ggf. das interne
Flash-ROM programmieren kann. Da gibt's ja Zillionen Möglichkeiten.
Was ist denn das für ein uC, was läuft da drauf schon und wo sollen
die Bits aus dem Hex-File letztlich landen?
Allgemein nützliche Tools für serielle Schnittstellen sind z.B.
picocom (viel besser als minicom), stty, statserial und
notfalls setserial.
Beware of programmers who carry screwdrivers.
Re: HEX FIles auf uC laden
Dazu beschreibt Janka einen Weg zur Geschwindigkeitskontrolle:cosmac hat geschrieben:im PrinzipCode: Alles auswählen
cat file.hex > /dev/ttyS0
http://www.pro-linux.de/forum/viewtopic.php?t=1033220
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
Re: HEX FIles auf uC laden
also der uC ist ein Atmel AT89C51 (8051)
bis jetzt (windows) habe ich dazu immer flip benutzt.
baudrate 9600
bis jetzt (windows) habe ich dazu immer flip benutzt.
baudrate 9600
Re: HEX FIles auf uC laden
hmm, flip gibt's doch auch für Linux:
http://www.atmel.com/dyn/products/tools ... ol_id=3886
Es gibt aber auch ein paar Debian-Pakete für Atmel.
http://www.atmel.com/dyn/products/tools ... ol_id=3886
Es gibt aber auch ein paar Debian-Pakete für Atmel.
Beware of programmers who carry screwdrivers.
Re: HEX FIles auf uC laden
leider funktioniert flip bei mir nicht (64 bit system und es werden 32 bit libs mitgeliefert....), da hilft auch kein java....
und zu den tools, avrdude funktioniert nur mit avrs (oder irre ich mich?) und avrp ( sollte auch mit AT89C51RD2 funktioniern) kann anscheinend mit meinem usb to rs232 converter (Prolific PL2303) nicht umgehen.
gibt es keine einfache Lösung für 8051 er?
mfg
und zu den tools, avrdude funktioniert nur mit avrs (oder irre ich mich?) und avrp ( sollte auch mit AT89C51RD2 funktioniern) kann anscheinend mit meinem usb to rs232 converter (Prolific PL2303) nicht umgehen.
gibt es keine einfache Lösung für 8051 er?
mfg
Re: HEX FIles auf uC laden
Gegen die 64-Bit könnte evt. eine chroot-Umgebung helfen.
Im Zusammenhang mit Iceweasel und Flash sollte es hier
im Forum einige Beiträge dazu geben.
Der PL2303 funktioniert hier eigentlich wunderbar, gerade
mit 9600 Baud. Werden da vielleicht die Steuerleitungen für
Spezialzwecke mißbraucht? In der Hinsicht können solche
Konverter nicht 100% kompatibel sein (das USB-Protokoll
ist im Weg). Dann fällt mir nur noch eine PCI-Karte mit zwei
echten COM-Ports ein.
Im Zusammenhang mit Iceweasel und Flash sollte es hier
im Forum einige Beiträge dazu geben.
Der PL2303 funktioniert hier eigentlich wunderbar, gerade
mit 9600 Baud. Werden da vielleicht die Steuerleitungen für
Spezialzwecke mißbraucht? In der Hinsicht können solche
Konverter nicht 100% kompatibel sein (das USB-Protokoll
ist im Weg). Dann fällt mir nur noch eine PCI-Karte mit zwei
echten COM-Ports ein.
Beware of programmers who carry screwdrivers.
Re: HEX FIles auf uC laden
Hi hi,
Eine andere Möglichkeit wäre natürlich, wie schon angesprochen, eine Art Loader zu schreiben, der in der MCU, hex-files von der seriellen entgegen nimmt und in den RAM oder Flash lädt.
Das ist überhaupt eine sehr gute Methode, das Programm, sollte es noch in der Entwicklung sein, vom RAM oder externen RAM der Controllers aus zu führen. Das spart Flash Zyklen und gestaltet die Vorgänge etwas flotter.
Ich würde auf jeden Fall auch erst mal eine "echte" rs232 nutzen. Genau für solche Fälle hat man Rechner, mit rs232.d3f3nd3r hat geschrieben:[...] und avrp ( sollte auch mit AT89C51RD2 funktioniern) kann anscheinend mit meinem usb to rs232 converter (Prolific PL2303) nicht umgehen.
Kann man nicht sagen, denn jeder Hersteller entwickelt da seine eigenen Programmier Systeme. Philips anders als Atmel, ST usw.d3f3nd3r hat geschrieben:gibt es keine einfache Lösung für 8051 er?
Eine andere Möglichkeit wäre natürlich, wie schon angesprochen, eine Art Loader zu schreiben, der in der MCU, hex-files von der seriellen entgegen nimmt und in den RAM oder Flash lädt.
Das ist überhaupt eine sehr gute Methode, das Programm, sollte es noch in der Entwicklung sein, vom RAM oder externen RAM der Controllers aus zu führen. Das spart Flash Zyklen und gestaltet die Vorgänge etwas flotter.
Gruß cirrussc
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl
Re: HEX FIles auf uC laden
ja leider hab ich bei meinem Notebook keinen rs232 Anschluss.....
und gibt es keinen solchen Loader?
ich hab leider keine Ahnung wie ich das machen sollte(hab gerade mit uC Programmierung angefangen.....)?
und gibt es keinen solchen Loader?
ich hab leider keine Ahnung wie ich das machen sollte(hab gerade mit uC Programmierung angefangen.....)?
Re: HEX FIles auf uC laden
es gibt auch PCMCIA-Karten mit RS232-Port, aber bei den Preisend3f3nd3r hat geschrieben:ja leider hab ich bei meinem Notebook keinen rs232 Anschluss.....
sollten wir es nochmal mit dem USB-Seriell-Konverter versuchen.
Hat das Programm denn schon mal mit einer echten Schnittstelle
funktioniert oder liegt's evt. an was ganz anderem?
So ein Loader ist nicht sooo schwierig zu programmieren (so alsd3f3nd3r hat geschrieben:und gibt es keinen solchen Loader?
ich hab leider keine Ahnung wie ich das machen sollte(hab gerade mit uC Programmierung angefangen.....)?
2. oder 3. Übungsaufgabe), aber es ist ein Henne-und-Ei-Problem:
wie kommt der Loader ohne Loader in den 8051...
Beware of programmers who carry screwdrivers.
Re: HEX FIles auf uC laden
Moin,
Der AT89C51RD2 ist ein Model mit 64KB Flash sowie extern ausgeführten Adress, Daten und Steuerleitungen, wie es für die Familie eigentlich typisch ist.
Somit wäre es möglich einen externen Speicher (EEPROM, EPROM, FLASH usw) als Programmspeicher zu nutzen.
Aber wie kommt die Software in den Speicher? Auch Problematisch ohne Equipment.
Da der Controller In-System Programming unterstützt, könnte man die Investition in einen solchen Adapter wagen [1].
Der braucht allerdings wieder eine Parallele, ein Teufelskreis
Normalerweise hat man doch noch einen zweiten Rechner, mit all diesen Grundlegenden Schnittstellen parat.
Denn ohne zu mindest die Parallele, kommt man bei solchen Vorhaben, selten weit.
[1] http://www.reichelt.de/?;ACTION=3;LA=2; ... 207c7a3827
In der Tat die nächste Frage...cosmac hat geschrieben:So ein Loader ist nicht sooo schwierig zu programmieren (so als
2. oder 3. Übungsaufgabe), aber es ist ein Henne-und-Ei-Problem:
wie kommt der Loader ohne Loader in den 8051...
Der AT89C51RD2 ist ein Model mit 64KB Flash sowie extern ausgeführten Adress, Daten und Steuerleitungen, wie es für die Familie eigentlich typisch ist.
Somit wäre es möglich einen externen Speicher (EEPROM, EPROM, FLASH usw) als Programmspeicher zu nutzen.
Aber wie kommt die Software in den Speicher? Auch Problematisch ohne Equipment.
Da der Controller In-System Programming unterstützt, könnte man die Investition in einen solchen Adapter wagen [1].
Der braucht allerdings wieder eine Parallele, ein Teufelskreis
Normalerweise hat man doch noch einen zweiten Rechner, mit all diesen Grundlegenden Schnittstellen parat.
Denn ohne zu mindest die Parallele, kommt man bei solchen Vorhaben, selten weit.
[1] http://www.reichelt.de/?;ACTION=3;LA=2; ... 207c7a3827
Gruß cirrussc
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl