Pages: 1 ... 5 6 [7] 8   Go Down
Author Topic: Led Uhr  (Read 7939 times)
0 Members and 1 Guest are viewing this topic.
Heilbronn
Offline Offline
Full Member
***
Karma: 4
Posts: 151
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

War nicht böse gemeint!!!   smiley
Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 269
Posts: 21836
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo,

es funktioniert jetzt einband frei ich hatte eine verbindung zwischen Quarz pin und Vbat. (Auf dem Bild relativ schwer zu sehen.)
Die RTC wird nicht heißt und garnichts. smiley

Liebe grüße,
Valli
 

Du kannst auch den 12 Stunden Modus im DS1307 setzen. (Bit 6 des Registers 02). Dann wirrd Bit 5 des Registers nicht mehr die 2. Binärstelle der Zehner der Stunden sondern das AM/PM bit).

Jetzt weiß ich nicht welche RTC Bibliothek Du benutzt. Hab aber keine gefunden, die das unterstüzt. Wenn Du neugierig bist hier http://forum.arduino.cc/index.php/topic,17706.0.html ist erklärt, wie man es ohne Bibliothek macht indem man den RTC direkt ansteuert.

Grüße Uwe



Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 269
Posts: 21836
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

War nicht böse gemeint!!!   smiley
Weiß ich doch!

Darf ich nicht mal für 5 Minuten das Opfer spielen?  smiley-wink smiley-wink smiley-wink
Grüße Uwe 
Logged

Germany
Offline Offline
Faraday Member
**
Karma: 59
Posts: 3071
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Du kannst auch den 12 Stunden Modus im DS1307 setzen. (Bit 6 des Registers 02). Dann wirrd Bit 5 des Registers nicht mehr die 2. Binärstelle der Zehner der Stunden sondern das AM/PM bit).
Achtung:
12 Stunden Uhren laufen von 01:00 bis 12:59
Ausserdem kommt nach 11:59 AM erstmal 12:00 PM, nach 12:59 PM kommt 1:00 PM   


( Zumindest echt amerikanische text-basierte Zeitzählung ist nicht einfach modulo 12 )

Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 269
Posts: 21836
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Achtung:
12 Stunden Uhren laufen von 01:00 bis 12:59
Wußte ich nicht.  smiley-roll smiley-roll-blue smiley-roll-blue
Ist dann also falscher Ansatz, da Valli eigentlich nur 12 LED ansteuern muß und nicht 24.
Die Lösung ist dann Modulo 12 oder bei Zahlen über 12 einfach 12 subtrahieren.
Grüße Uwe
Logged

Germany
Offline Offline
Faraday Member
**
Karma: 59
Posts: 3071
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Oder seine Ansteuerung kann auch 13 Einträge haben, und sowohl 0 als auch 12 könnten die gleiche LED ansteuern.

gilt für Tabelle und die "tausend if" Variante ...
Logged

Wien
Offline Offline
Edison Member
*
Karma: 28
Posts: 1913
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hi,

Quote
Zumindest echt amerikanische text-basierte Zeitzählung ist nicht einfach modulo 12
da komm' ich jetzt nicht mit.
0 % 12 und 12 % 12 ergeben beide 0.

gruß stefan
Logged

Germany
Offline Offline
Faraday Member
**
Karma: 59
Posts: 3071
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Klar kann man 1 .. 12   auf 0 .. 11 mappen.

Nur statt der Modulo-Lösung die Uhr auf 12 Stunden-Format stellen, reicht nicht, um ein Ergebnis im Bereich 0 .. 11 zu erhalten.
Logged

Wien
Offline Offline
Edison Member
*
Karma: 28
Posts: 1913
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hi,

achso, ich hab das "ist nicht einfach modulo 12" falsch verstanden, so als würde modulo 12 in dem fall nicht funktionieren.
man muß also immer ein modulo 12 machen, damit erübrigt sich auch ein umstellen auf 12-stunden-modus. wahrscheinlich hab' ich's deswegen instinktiv so gelöst... smiley-red smiley-red smiley-red

gruß stefan
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 70
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo,

ich habe so lange nicht geschrieben weil ich im Urlaub war.

Die Platine ist ganz fertig und der code auch so gut wie fertig.
Hat jemand von euch tipps für das gehäuse? Ich wollte auf jeden fall vor alle led´s eine Plexiglasscheibe machen, die scheibe soll geschliffen sein so das das licht gestreut wird. Der rest soll nicht zu schwer sein und auch nicht zu teuer.

Liebe grüße,
Valli
Logged

Wien
Offline Offline
Edison Member
*
Karma: 28
Posts: 1913
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hi,

beim plexiglas fange mit 1200er nasschleifpapier an. kriegst Du im autohandel, baumarkt weiß ich nicht.
besser wäre, gleich mattes plexiglas zu nehmen. der beste und preiwerteste händler dafür ist:
http://www.plexiglas-shop.com/DE/de/index.htm
das ist ein riesenchemiekonzern mit einem rührigen kleinen plexi-versandjandel. seltsame sache, aber sehr positiv...

gruß stefan
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 70
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo,

das mit den Plexiglas handel ist eine gute idee ich werde es auch machen den rahmen lasse ich von einem schreiner anfertigen.
Da das mit dem Rahmen noch ziemlich lange dauert habe ich mir überlegt noch einen Fotowiderstand einzubauen.
Meine frage ist kann mann die ausgänge des schiebe registers dimmen? Wenn ja wie?

Liebe grüße,
Valli
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 70
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo,

die Uhr ist so gut wie fertig so bald sie ganz fertig ist werde ich auch Bilder hochladen.

Da ich mich am ende noch dazu entschieden habe einen Fotowiderstand einzubauen ist meine Frage ob an eine Variable umdrehen kann also anstatt 1023 --> 0 und anstatt 0 --> 1023 ??

Ich bedanke mich an alle die mich bei diesem Projekt so unterstützt haben.

Liebe Grüße,

Valli
Logged

Offline Offline
Faraday Member
**
Karma: 126
Posts: 4092
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Das geht mit der map Methode:

http://arduino.cc/en/Reference/Map

"Note that the "lower bounds" of either range may be larger or smaller than the "upper bounds" so the map() function may be used to reverse a range of numbers, for example y = map(x, 1, 50, 50, 1); "
Logged

Offline Offline
Full Member
***
Karma: 6
Posts: 161
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Die map-Methode ist für eine so einfache Anwendung schon fast overkill und außerdem sehr langsam. Einfach x = 1023-x; und du hast das Ganze ohne großen Aufwand.
Logged

Pages: 1 ... 5 6 [7] 8   Go Up
Jump to: