AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte [µC] Meine kleine Uhr...
Thema durchsuchen
Ansicht
Themen-Optionen

[µC] Meine kleine Uhr...

Ein Thema von Mithrandir · begonnen am 9. Mär 2009 · letzter Beitrag vom 11. Mär 2009
Antwort Antwort
Seite 4 von 4   « Erste     234   
Benutzerbild von Mithrandir
Mithrandir
Registriert seit: 27. Nov 2008
Warum in "Open-Source"? Naja, am Ende gibts den Quelltext und die HEX-Datei zum Brennen, und außerdem wurde die Software in Pascal geschrieben.

Sodele,

ich möchte euch heute mal eins meiner Projekte vorstellen, das schon länger in meinem Kopf herumspukte und in der Zeit entstand, als ich hier nicht so aktiv war. Letzte Woche hab ich es dann erfolgreich zu Ende gebracht. Es handelt sich dabei um eine Uhr, die ihre Zeit im sogenannten Summencode darstellt.

Realisiert wurde der Aufbau auf einer 100*160mm großen Lochrasterplatine für die Logik und einer 100*100mm große Platine für die Anzeige. Die ganze Schaltung wird von einem ATMega8. Wer gerne etwas weiter in die Materie einsteigen möchte, findet hier das Datenblatt dazu:

ATMega8 Datenblatt [PDF, ~300 Seiten]

Die Tutorials auf mikrocontroller.net sind ebenfalls lesenswert, aber das nur am Rande.

Außerdem befindet sich auf dem Board noch ein MAX7219. Dieser steuert die Anzeige der Uhr. Sehr praktischer Baustein, der einem viel Arbeit abnimmt, allerdings auch viel machen kann, wenn man nicht alles sauber abschirmt. Man sollte allerdings bedenken, dass der Baustein mit 6-8€ das Stück nicht grad billig ist.

Die Temperaturmessung übernimmt der DS1620, ebenfalls vom selben Hersteller.

Die Uhr hat folgende Funktionen:
  • Zeitanzeige inkl. Wochentag
  • Datumsanzeige
  • Temperaturanzeige
  • Durchlauf der ersten drei Modi im Intervall von 10 Sekunden
  • "Pattern"

Außerdem soll die Uhr noch einen DCF77-Empfänger verpasst bekommen.

Realisiert habe ich das Projekt mit dem PASCAL-Compiler von E-Lab Computers. Nein, die IDE ist nicht mit Delphi vergleichbar, aber die Sprache ist doch sehr gut an PASCAL angelehnt und war deshalb für mich recht schnell verständlich (ach...).

Nun genug gesabbelt, jetzt gibt es Bilder & Videos:

Entschuldigt die Qualität

Video auf Youtube, Teil I [~6:30 Minuten]
Video auf Youtube, Teil II [~1 Minute]


Und wenn ihr euch das alles angetan habt, dann hoffe ich, dass ihr den Ausflug in die Mikrocontroller-Welt mal genossen habt. Das war bestimmt nicht das letzte Projekt.
Miniaturansicht angehängter Grafiken
3_-_fertige_platine_999.jpg   4_-_ansicht_panel_148.jpg   5_-_klingeldraht_mayhem_204.jpg   6_-_fertig_124.jpg  
"In einer Zeit universellen Betruges wird das Aussprechen der Wahrheit zu einem revolutionären Akt." -- 1984, George Orwell
 
Benutzerbild von himitsu
himitsu

 
Delphi 12 Athens
 
#31
  Alt 10. Mär 2009, 18:55
nja, ich dachte, wenn du eh (eventuell) planst den anzubauen, dann könnte man den auch gleich mit in die Überlegungen einbeziehen
  Mit Zitat antworten Zitat
Alloc

 
Delphi 2006 Professional
 
#32
  Alt 10. Mär 2009, 19:25
Zitat von Daniel G:
Das mit dem Uhrenquarz hatte ich mir auch schon gedacht. Allerdings weiß ich nicht, wie die Implementation der RTC damit umgehen würde, und zum Selberimplementieren war ich... zu faul.
Naja, das selberimplementieren ist grad mit Uhrenquarz ne Sache von wenigen Zeilen. Timer2 richtig einstellen, nen Timer-Interrupt schreiben der nen Flag setzt, in der Hauptschleife abfragen, Zeitberechnung durchführen, fertig
(AFAIR konnte man doch den AVRco-RTC auf Timergesteuert einstellen? Lang lang ists her, dass ich mit AVRco gearbeitet hab )
Christian Illy
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
 
#33
  Alt 10. Mär 2009, 21:54
Hmm, hab ich auch. Mal sehen, erstmal gucken, wie sich die kleine Ticktack im Feldtest schlägt.

@himi: Joar, stümmt.
米斯蘭迪爾
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

 
Delphi 12 Athens
 
#34
  Alt 10. Mär 2009, 22:19
im Notfall gibt's ja auch noch derartige µP mit integrierter Uhr

also sollten die schon recht genau arbeiten können?

Aber...

ich kenn mich mit dieser Sprahe nicht so aus, aber mir kommt es ast so vor, wenn du da (z.B. beim Senden an den MAX...) die Interputs kurz abschaltest?
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
 
#35
  Alt 10. Mär 2009, 22:24
Zitat von himitsu:
im Notfall gibt's ja auch noch derartige µP mit integrierter Uhr
Ich hab hier noch 2 DS1337 (jaja, Scriptkiddies freuen sich.. )

Zitat:
Aber...

ich kenn mich mit dieser Sprahe nicht so aus, aber mir kommt es ast so vor, wenn du da (z.B. beim Senden an den MAX...) die Interputs kurz abschaltest?
Interputs? Süß..

Ja, die Interrupts muss ich teilweise kurz abschalten. Der Interrupt wird von der RTC benutzt. Eigentlich dachte ich aber, ich würde nur beim Setzen der Zeit den Interrupt deaktivieren. Das ist vorgegeben vom Hersteller. Mal sehen...
米斯蘭迪爾
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

 
Delphi 12 Athens
 
#36
  Alt 10. Mär 2009, 22:46
Da doch dort das Clock-Signal dabei ist, sollte eine ganz kurze unterbrechung doch nicht viel ausmachen?

Aber wenn du die Uhr über einen Interrupt weiterschaltest, dann könnte da doch eventuell mal einiges ausfallen
Zitat von Daniel G:
Interputs? Süß..
ich sollt vieleicht nebenbei weniger chatten und Urlaubsplanungen machen *überleg*
hoffentlich vermißt mich hier keiner, aber bin samstags in Leipzig und dann fahr ich über Berlin heim

[add]
hey, den kleinen Timer-Chip kenn ich doch ... jahre ist's her, aber dennoch wiedererkannt
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
 
#37
  Alt 10. Mär 2009, 23:21
Zitat von himitsu:
Da doch dort das Clock-Signal dabei ist, sollte eine ganz kurze unterbrechung doch nicht viel ausmachen?

Aber wenn du die Uhr über einen Interrupt weiterschaltest, dann könnte da doch eventuell mal einiges ausfallen
Äh... hä?

Also, die RTC löst einen Interrupt aus, wenn eine Sekunde vergangen ist, um eine Variable zu setzen, die eben genau das signalisiert. Ohne Interrupt könnte ja theoretisch eine Sekunde verloren gehen, was bei mir aber eigentlich nie passiert. Es ist ja nur ein kleines Programm.

Oder hab ich dich falsch verstanden?
米斯蘭迪爾
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

 
Delphi 12 Athens
 
#38
  Alt 11. Mär 2009, 09:34
neee, du schaltrest doch die Interrupts ab, wenn du was zu diesem MAXirgendwas sendest (glaub ich ... hab jetzt nicht nochmal reingeguckt).

dieserem dürfte es doch aber nichts ausmachen, wenn da mal ein Impuls etwas länger dauert, weil der Interrupt dazwischenkam.

Aber die interne Programm-Uhr könnte immer mal wieder etwas Zeit übersehn, wenn wärend der Interrupt aus ist ein Impuls reinkam.
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
 
#39
  Alt 11. Mär 2009, 12:02
Hast recht,

Das fließt beim nächsten Update mit ein. Danke
米斯蘭迪爾
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 4 von 4   « Erste     234   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz