Hallo, ich hab mir bei Display3000 das D083 mit Atmega 2560 und DS1338 (Echtzeituhr) gekauft. Ich verstehe gerade die Zusammenhänge von Time$ und dem DS1338 nicht. Da fehlt mir das Hintergrundwissen, da ich auch keine Erklärung dazu gefunden habe. Im Programm ist die Routine RTC_DS1338.bas integriert. OK, die Routine ist verständlich Die Variablen (?) _hour _min _sec auch. Am Anfang des Programmes steht. Config Clock = Soft Date$ = "01.01.15" Time$ = "12:59:00" $include Rtc_ds1338.bas Gosub Checkdatetime 'der RTC wird ausgelesen Soweit alles klar. Nun wird die RTC Routine aber nicht mehr angesprungen. UND Date$ sowie Time$ wurden aus dem RTC übernommen, also die aktuelle Zeit. WARUM? das steht nirgens das diese übernommen werden sollen Die Zeitanzeige am Display läuft aber. Sowohl die Anzeige von Date$ und der Variablen _sec .... Oder hängen diese direkt zusammen??? Oder macht Bascom hier was automatisch??? Wo ist der Unterschied, wenn ich statt Clock = Soft , Clock = User einstelle Die Frage wäre also warum _sec trotzdem läuft. Und syncron dürfte es auf Dauer ja nicht laufen. Also müste ich Gosub Checkdatetime Sagen wir alle 24h erneut aufrufen? Ich hoffe ich habe es verständlich erklärt. DANKE!
:
Verschoben durch User
Fred R. schrieb: > Was hat das mit einem FERTIGEN Projekt zu tun? stimmt, falsches Unterforum. Sorry Hmmmm, wohin damit ? Verschieben bitte !
Wo ist der Programmcode? Es ist ein bissel wie Kaffeesatz lesen. Bei "Clock=Soft" muss eigentlich ein 32k Quartz an die Pins des AVR. Bei "Clock = User" hat der ANWENDER die Aufgabe die Sekunden zu befördern.
Rtc_ds1338.bas ist leider geschütz. Ein zusätzlicher Quarz ist nicht angeschlossen. In der RTC Routine wird der RTC ausgelesen und die Zeit an die Variablen _sec, _min usw. übergeben, bzw. können zum stellen geschrieben werden. Dann vermute ich das diese direkt mit Time$ durch Bascom zusammenhängen, ODER? Dann wäre das logisch. In der Routine steht: I2cwbyte &B00010011 'enables output line of 32 khz AND set OSF flag to 0 Werden dann hier die 32 KHz duch das I2C erzeugt ? Ansonsten schreibe ich nur zur Anzeige Time$ und _sec .... aufs Display in einer schleife um zu sehen welche Variablen sich ändern. Das machen sie alle ohne die RTC Sub erneut aufzurufen.
OK, jetzt doch gefunden hier im Forum: Zitat: When you use the CONFIG CLOCK directive the compiler will DIM the following variables automatic : _sec , _min , _hour, _day , _month , _year The variables TIME$ and DATE$ will also be dimensioned. These are special variables since they are treated different. See TIME$ and DATE$. The _sec, _min and other internal variables can be changed by the user too. But of course changing their values will change the DATE$/TIME$ variables. Auf Deutsch: Der Compiler dimensioniert die Variablen _sec, _min usw. von allein. Zitat Ende Gut, dann ist alles klar. Will es ja auch verstehen und nicht nur Codeschnipsel kopieren!!! Bleibt nur noch das 32 KHz signal. Das ist aber erst mal nicht so wichtig. DANKE!!!
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.