Hallo, Bevor man mich hier zerfleischt, erst mal was zu meiner Person. ich habe 1980 Fernmeldehandwerker gelernt. Ich habe nie ein Programm für ein µC geschrieben. Das heisst ich kann nicht programmieren !!!!. Ich gehe geradewohl auf die 60 zu und möchte es auch nicht mehr erlernen. Soweit so gut. Ich habe auf der Seite von Zabex eine Wortuhr mit DCF77 gesehen. Herr "Zabex"(Dr.-Ing. Dietmar Schröder) benutzt leider den bei uns in Mittelhessen unüblichen Ausdruck "Drei Virtel". Abhilfe schafft wohl: Suche in main.c die Zeile (Z.253) else if(g.uhrMM < 50){TEXT_DREI1; TEXT_VIERTEL; } und ersetze sie durch: else if(g.uhrMM < 20){TEXT_VIERTEL; TEXT_VOR; } O.k. wie gesagt kann ich nicht Programmieren, denke aber mal das ich die < 50 von oben beibehalten sollte und gegen die < 20 ersetzen sollte.... Bitte mal meinen Gedankengang bestätigen (oder eben auch nicht). Und nun das Wichtigste, wie wandele ich die main.c in eine Flashbare Hex-Datei? geht das evtl mit Geany (ich nutze Linux )?
:
Verschoben durch Moderator
Ralf W. schrieb: > Ich gehe geradewohl auf die 60 zu und möchte es auch nicht mehr > erlernen. Wow... - sorry, wenn ich das so sage, aber das halte ich für eine sehr... unglückliche Einstellung. Ich weiß ja nun selbst, dass das Erlernen neuer Dinge mit zunehmendem Alter immer schwerer fällt - andererseits ist ja 60 heutzutage ja noch "kein Alter" (bzw. sollte es nicht sein - immer dran denken, dass du noch rund ein Viertel des Lebens vor dir hast - und, sollte es nach dem Staat gehen, noch sieben oder zukünftig gar neun weitere Jahre arbeiten "darfst". Zum Thema: Ralf W. schrieb: > Suche in main.c die Zeile (Z.253) > else if(g.uhrMM < 50){TEXT_DREI1; TEXT_VIERTEL; > } > und ersetze sie durch: > else if(g.uhrMM < 20){TEXT_VIERTEL; TEXT_VOR; > } Du planst also offenbar, Version 1 der Uhr zu bauen, da Version 2 einen Arduino einsetzt, ergo gar keine main.c mitbringt. Nach kurzem Überfliegen des Quellcodes sollte deine Ersetzung so functionieren; lediglich verstehe ich nicht, warum du
1 | g.uhrMM < 20 |
schreiben willst statt der ursprünglichen "< 50". Was Zabex in dieser Zeile macht, ist, dem µC zu sagen, "wenn der Minuten-Zähler kleiner als 50 ist, schalte die korrekten LEDs ein" (in Verbindung mit den vorhergehenden Anweisungen wird diese Zeile allerdings nur ausgeführt, wenn der Minutenzähler ebenfalls mindestens 45 beträgt - deshalb würde eine einfache Ersetzung von 50 mit 20 an dieser Stelle auch nicht funktionieren). Grundlagen zum Programmieren in C findest du z. B. im AVR-GCC-Tutorial. Ralf W. schrieb: > wie wandele ich die main.c in eine Flashbare Hex-Datei? Dur brauchst einen sog. Compiler, der dir den Quellcode in der Programmiersprache C in den notwendigen Maschinencode übersetzt. Das einfachste ist wohl die Installation des Atmel Studio Atmel Studio. Für Version 2 der Wortuhr entsprechend die Arduino IDE. Diese sogenannten IDEs behinhalten neben einem Texteditor auch den Compiler (und Linker; ein weiteres notwendiges Programm, welches vereinfacht gesagt die compilierten Codes aus mehreren Dateien zu einer einzigen Datei zusammenbaut), alle benötigten Programmbibliotheken (für Funktionen, die du einfach einbinden musst, ohne diese erst selbst schreiben zu müssen), und ein Tool zum Flashen deines Programms auf den µC.
Schreib doch dem zabex, er schreibt auf seiner Homepage, dass er gerne hilft: “Man kann mir aber schreiben, wenn man mal Hilfe beim selber bauen braucht (einfach auf Kommentieren klicken).“ Ganz unten auf der Seite.
Sorry, hatte ich vergessen, ja Version1, die mit der Ping-Pong Platine von Franzis. Das von dir Farbig hervorgehobene war die Antwort Mail von Zabex auf die Frage wie ich Drei virtel gegen Virtel vor tausche. Mich hat bei dieser Antwort stutzig gemacht, daß ich die vorher Fünfzig in jetzt Zwanzig tauschen soll..... Ich vermute einen "Kopier-Fehler" von Zabex. Jetzt muss ich nur noch jemanden finden der mir erklärt wie ich das ganze mit dem Programm Geany (Linux) durchführen kann.
:
Bearbeitet durch User
Also das einfachste wäre, du lässt es dir von jemanden umwandeln. Der Aufwand dazu ist nicht sehr groß, wenn man die passenden Programme schon installiert hat. Bin leider gerade nur am Handy, sonst würde ich es für dich versuchen. Prinzipiell müsste es mit ungefähr den folgenden Befehl ausgeführt in einer Shell im Ordner Software/default gehen: "make all" Das sollte das beiliegende makefile aufrufen und danach sollte es ein neues Hex File geben. Gut möglich, das wichtigste Programm dazu wäre wohl der aber gcc, der unter Debian z.B. mit "sudo apt-get install binutils gcc-avr avr-libc" installieren lassen müsste. Viel Erfolg, ich versuche morgen nochmals hier rein zu schauen, ob's erfolgreich war.
Hab versucht den AVR8 Burn-O-Mat nach AVRdude zu installieren, ich bekomm das teil irgendwie nicht zum laufen, da soll noch java installiert werden, daran scheitert es wohl.
Horst G. schrieb: > Für Version 2 der Wortuhr entsprechend die Arduino IDE. Auch die Version 1 geht durch die Arduino IDE. Zusätzlich nötig: Eine ATMega8 Borddefinition beschaffen/basteln und den exotischen Takt und die Fuses dort eintragen. Ein fast beliebiger ISP Programmer.
sodele, Uhr läuft, jedoch halt mit "Dreivirtel" statt virtel vor.... hab das dcf77 modul mit 3V am laufen, Pon mit GND gebrückt, somit brauch ich nur 3 Drähte. K2 ist also nicht mit + verbunden. Ist das relevant? bräuchte jetzt nur das neue Hex. Ich hoffe ja dass sich noch jemand meiner erbarmt. Danke an alle helfenden.
Ralf W. schrieb: > bräuchte jetzt nur das neue Hex. Ich hoffe ja dass sich noch jemand > meiner erbarmt. Ich habe dir eine Nachricht hinterlassen (weiss jedoch nicht, ob diese angekommen ist) und könnte das kurz für dich erledigen.
Horst G. schrieb: > Ralf W. schrieb: >> Ich gehe geradewohl auf die 60 zu und möchte es auch nicht mehr >> erlernen. > > Wow... - sorry, wenn ich das so sage, aber das halte ich für eine > sehr... unglückliche Einstellung. +1 Ralf W. schrieb: > Hab versucht den AVR8 Burn-O-Mat nach AVRdude zu installieren, ich > bekomm das teil irgendwie nicht zum laufen, da soll noch java > installiert werden, daran scheitert es wohl. Laß die ganze GUI und rufe avrdude von der Kommandozeile auf. Das ersppart viele Probleme. Gerade gesehen, daß Zabex das mit Arduino gemacht hat. Warum installierst Du Dir also nicht einfach Arduino und gut ist? Aber wenn ich so etwas schon lese (O-Zitat website): "Einen Schaltplan habe ich nicht. Den muss man sich halt aus den Kommentaren im Quellcode und den beigelegten Infos zum Max7219 zusammenreimen." Das ist schon ziemlich abschreckend.
:
Bearbeitet durch User
Hier mal folgendes geändert: Zeile 253:
1 | else if(g.uhrMM < 50){TEXT_DREI1; TEXT_VIERTEL; } |
auf
1 | else if(g.uhrMM < 50){TEXT_VIERTEL; TEXT_VOR; } |
Ralf W. schrieb: > Hab versucht den AVR8 Burn-O-Mat nach AVRdude zu installieren, ich > bekomm das teil irgendwie nicht zum laufen, da soll noch java > installiert werden, daran scheitert es wohl. Ich hatte mit AVR8 Burn-O-Mat und einer relativ aktuellen Java Version auch Probleme. Man muss es a) entweder mit Java 7 (oder 8?) laufen lassen oder b) neu compilieren und eine Bibliothek austauschen Der Download von http://stefanfrings.de/avr_tools/AVR8-Burn-O-Mat.zip läuft auch mit Java 11 und einigen neueren Versionen (welche genau habe ich nie ausprobiert). Aber eigentlich brauchst du AVR8 Burn-O-Mat nicht. Denn dieses ruft letztendlich nur AVRdude auf, das kannst du auch selbst tun.
Hallo Andreas, erstmal vielen Dank für das erstellen der Hex Datei. Ja, Zabex macht die größere 2te variante mit Arduino. Die erste also der Pong uhr Bausatz von Franzis aber nicht.
Oh, ich hatte ja auch versprochen gestern nochmal rein zu schauen, nun ist es aber doch erst heute geworden. Wie ich sehe hat Andreas dir schon dass Hex File gebaut. Viel Erfolg damit.
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.