Info schrieb:> Nehm' ich A oder P
Besser nähmest du ohnehin mal einen aktuellen Compiler, A hin, P her.
Der 5 Jahre alte optimiert nicht nur (teils drastisch) schlechter als
ein aktueller, du verlierst auch eine Reihe anderer netter Dinge wie
beispielsweise __flash als separaten Adressraum.
OK. Die Downloadlinks bekommt man per E-Mail.
Ich habe die Daten einfach in die WinAVR-Installation kopiert (die
Header ins entsprechende Unterverz.). Scheint zu funktionieren.
Also ist WinAVR "tot".
Danke für die Auskunft!
Jörg W. schrieb:> Der 5 Jahre alte optimiert nicht nur (teils drastisch) schlechter als> ein aktueller, du verlierst auch eine Reihe anderer netter Dinge wie> beispielsweise __flash als separaten Adressraum.
da ich immer noch gerne mit AVR Studio 4.18 SR3 arbeite war der 2010er
doch die letzte Version WinAVR-20100110 die mit eingebunden wurde.
AVR Studio 4.18.692
Service Pack 3
Plugins:
AvrPluginavrgccplugin 1, 0, 0, 11
Joachim B. schrieb:> da ich immer noch gerne mit AVR Studio 4.18 SR3 arbeite war der 2010er> doch die letzte Version WinAVR-20100110 die mit eingebunden wurde.
Und, wer hindert dich, da manuell eine andere Toolchain drunter zu
setzen?
Jörg W. schrieb:> Und, wer hindert dich, da manuell eine andere Toolchain drunter zu> setzen?
meine Kenntnisse?
jetzt weiss ich das es läuft, ich bin immer vorsichtig mit derlei
Experimente, sie sind auch sehr zeitaufwändig aber heute evtl. nicht
unmöglich.
Ich hätte ja die Hoffnung ein echtes Plattenbackup zu fahren die neue
Toolchain zu installieren und zu probieren, aber 2 Risiken, erstens wenn
mir die Zeit fehlt vollständig zu testen, bis ich Fehler bemerke oder
was nicht oder schlechter läuft ist der Backupzeitpunkt in die
Vergangenheit gerutscht, doof bei Restore und wer sagt mir denn das
Restore wirklich funktioniert, aus meiner Industriezeit weiss ich das
ein fehlerfreies Backup nicht unbedingt ein fehlerfreises Restore
bedeutet. Da haben wir früher schon mal Pech gehabt.
Joachim B. schrieb:> Ich hätte ja die Hoffnung ein echtes Plattenbackup zu fahren die neue> Toolchain zu installieren und zu probieren, aber 2 Risiken, erstens wenn> mir die Zeit fehlt vollständig zu testen, bis ich Fehler bemerke oder> was nicht oder schlechter läuft ist der Backupzeitpunkt in die> Vergangenheit gerutscht, doof bei Restore und wer sagt mir denn das> Restore wirklich funktioniert, aus meiner Industriezeit weiss ich das> ein fehlerfreies Backup nicht unbedingt ein fehlerfreises Restore> bedeutet. Da haben wir früher schon mal Pech gehabt.
Darum installiere ich mir die Toolchains in unterschiedliche
Verzeichnisse und arbeite mit einen Makefile. Ich lege für jedes Projekt
fest, welchen Toolchain ich verwende und kann jederzeit wird zurück wenn
etwas merkwürdig ist.
Joachim B. schrieb:> jetzt weiss ich das es läuft, ich bin immer vorsichtig mit derlei> Experimente, sie sind auch sehr zeitaufwändig aber heute evtl. nicht> unmöglich.
Die Toolchain ist einigermaßen isoliert in nur wenigen Verzeichnissen
(oder gar nur in einem) untergebracht. Es genügt also völlig, dieses
erstmal „zur Seite umzubenennen“, danach dann eine neue Toolchain an
die gleiche Stelle zu schaufeln. Dann ausprobieren, wenn's geht, ist
alles gut, wenn nicht, ist mit ein paar Handstrichen der vorherige
Zustand wieder hergestellt – ganz ohne (aufwändiges) Komplett-Backup.
Jörg W. schrieb:> Es genügt also völlig, dieses> erstmal „zur Seite umzubenennen“, danach dann eine neue Toolchain an> die gleiche Stelle zu schaufeln.
hört sich gut an, nur hatte ich mir damals einen abgebrochen weil es bei
der Installation auf die richtige Reihenfolge ankam und es nicht auf
Anhieb auf 5 Rechner gleich laufen wollte.
Vielleicht passten die Versionsnummern auch nicht zueinander oder ich
bin zu unerfahren, halte mich ja nur für einen Hobbyprogrammierer der
nur so viel progammiert wie er für seine Anwendungen unbedingt braucht.
Man kann in AVR-Studio 4.18 auch eine neuere Toolchain einbinden, die in
einem abweichenden Pfad installiert ist.
Der Trick ist ganz einfach:
AVR-Studio sucht die Toolchain immer in dem Pfad, welcher in dem
Registry-Key
Ausschlaggebend ist der Pfad, also C:\WinAVR\avr-gcc-4.7.2. Die
EXE-Datei WinAVR-20100110-uninstall.exe muss überhaupt nicht in diesem
Verzeichnis liegen, ist hier also nur technisches Beiwerk.
Möchte man wieder zurückschalten auf die avr-gcc.4.3.3-Version aus dem
Jahre 2010, kann diese reg-Datei verwendet werden:
(Der Pfad muss eventuell angepasst werden)
Ich sehe aber keinen Grund, wieder zurück auf den alten Compiler zu
gehen. Der 4.7.2 tuts prima und erzeugt auch schmaleren Code.
Ich habe hier auch noch reg-Dateien für avr-gcc-4.8.1. Dieser hat aber
die Macke, dass er bei ISRs eine überflüssige (weil falsche) Warnung
rausgibt und mich daher nervt, und auch eine avr-gcc-4.9.2, die noch
Beta ist.
Das Hin- und Herschalten mittels reg-Datei funktioniert in AVR-Studio
4.18 tadellos. Einmal Doppelklick und fertig.
Kaj schrieb:> Es gab hier mal ein "How to": Gcc 4.8 in Winavr> Beitrag "Update von Winavr2010 auf gcc 4.8 Howto"
Da wird aber auch die destruktive Methode gewählt, indem die Dateien im
2010-Verzeichnis überschrieben werden. Ohne Backup kein Weg zurück.
(Auch wenn ich dies persönlich für nicht erforderlich halte).
Frank M. schrieb:> Der Trick ist ganz einfach:>> AVR-Studio sucht die Toolchain immer in dem Pfad, welcher in dem> Registry-Key
vielen Dank das hilft mir sehr bei meinem Projekt Antennenmessgerät
unter verschiedenen Rechnern.
Kennst du dich etwas mit dem reg Editor aus?
Meine Tools für Messgerät und die Reg laufen zwar, aber ich habe noch
Probleme die Com im Schlüssel zu verändern.
Ein REG Key im Texteditor wird normal gezeigt, aber im HEX Editor sehe
ich statt ASCII immer 16-bit Werte, ein ASCII Zeichen und 00 aber nicht
für die ersten beiden Zeichen.
Das macht es nicht leichter die REG Datei zu parsen um die Com, Baud,
Stoppbits anzupassen.
warum zur Hölle exportiert Regedit 16-bittig und will es genauso wieder
importieren?
Frank M. schrieb:> Sorry, leider nicht, kann Dir hier nicht helfen.
glaub ich dir nicht, aber egal.
Es ist ja nun nicht so schwer die gesicherte REG Datei zu öffnen und ab
dem 2-ten Zeichen alle 00 rauszuwerfen und nur den ASCI Text in ein char
Array zu speichern, dort zu parsen nach Schlüsselwörter die benötigten
Inhalte zu ändern und dann wieder 16-bittig mit 00 zurückzuschreiben,
oder jede 00 zu ignorieren.
Es gibt wie immer x Wege nach RAM äh Rom.
Ich dachte nur weil du eben vom REG Editor schriebst du kennst das
Verhalten und warum.
Joachim B. schrieb:> Frank M. schrieb:>> Sorry, leider nicht, kann Dir hier nicht helfen.>> glaub ich dir nicht, aber egal.
Wie bitte?
Ich weiß gerade mal, wie man so einen Key in einer REG-Datei speichert.
Da ich das 16-Bit-Problem noch nicht hatte, habe ich mich bisher auch
nicht näher damit beschäftigt.
> Ich dachte nur weil du eben vom REG Editor schriebst du kennst das> Verhalten und warum.
Sorry, nein.
Frank M. schrieb:> Wie bitte?>> Ich weiß gerade mal, wie man so einen Key in einer REG-Datei speichert.> Da ich das 16-Bit-Problem noch nicht hatte, habe ich mich bisher auch> nicht näher damit beschäftigt.
na das ist doch eine völlig andere Aussage als
Frank M. schrieb:> Sorry, leider nicht, kann Dir hier nicht helfen.
ich weiss ja wie es geht, exportiere den gewünschten KEY mit cmd, bzw.
"system command regedit /e" oder /s blablub in Datei
Öffne diese, editiere und sichere
Danach gehts mit syscommand regedit import wieder rein.
Joachim B. schrieb:> Es ist ja nun nicht so schwer die gesicherte REG Datei zu öffnen und ab> dem 2-ten Zeichen alle 00 rauszuwerfen und nur den ASCI Text in ein char> Array zu speichern, dort zu parsen nach Schlüsselwörter die benötigten> Inhalte zu ändern und dann wieder 16-bittig mit 00 zurückzuschreiben,> oder jede 00 zu ignorieren.
Ich bin sicher so wie du programmieren kannst könntest du das auch und
eleganter als ich.
Joachim B. schrieb:> Ich bin sicher so wie du programmieren kannst könntest du das auch und> eleganter als ich.
Hm, dafür würde ich ein C-Programm schreiben:
1
#include<stdio.h>
2
3
intmain()
4
{
5
intch;
6
7
while((ch=getchar())!=EOF)
8
{
9
if(ch)
10
{
11
putchar(ch);
12
}
13
}
14
return0;
15
}
Übersetzen und dann: programmname <original.reg >neu.reg
Aber das heisst trotzdem nicht, dass ich ein Experte des
Registry-Editors wäre ;-)
Frank M. schrieb:> Hm, dafür würde ich ein C-Programm schreiben:
so ähnlich habe ich es ja schon, bzw bin gerade dabei das drum rum zu
schreiben,
schauen ob der KEY AMA_KWS in der REG ist, exportieren wenn nicht KEY
erzeugen.
Com feststellen, alle durchtackern die open gehen, die OPEN mit
Teststring beschicken, Antwort einlesen, wenn OK KWS_AMA = TRUE, Com
angepasst in die REG eintragen.
Erst danach startet mein TV Kanal Messprogramm über alle belegten Kanäle
analog und digital zur Schieflageermittlung.
Doof halt nur das ich alle Änderungen in der Kanalbelegung händisch in
eine Tabelle eintragen muss aus der ich lese, gerne hätte ich den Import
der Tabelle aus der KD Helpdeskwebseite.