Forum: Mikrocontroller und Digitale Elektronik Bascom, DS1338, Clock , Time$, Zusammenhang


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Mario G. (rodenberger)


Bewertung
0 lesenswert
nicht lesenswert
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 Moderator
von Fred R. (Firma: www.ramser-elektro.at/shop) (fred_ram)


Bewertung
-1 lesenswert
nicht lesenswert
Was hat das mit einem FERTIGEN Projekt zu tun?

von Mario G. (rodenberger)


Bewertung
0 lesenswert
nicht lesenswert
Fred R. schrieb:
> Was hat das mit einem FERTIGEN Projekt zu tun?
stimmt, falsches Unterforum. Sorry

Hmmmm, wohin damit ?
Verschieben bitte !

von Uwe D. (monkye)


Bewertung
0 lesenswert
nicht lesenswert
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.

von Mario G. (rodenberger)


Bewertung
0 lesenswert
nicht lesenswert
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.

von Mario G. (rodenberger)


Bewertung
0 lesenswert
nicht lesenswert
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!!!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.