eine Uhr programmiert-LEDs blinken lassen

OP #1825105
Ich habe folgendes Problemm. Vieleicht hat jemand ein Tipp für mich wie 
ich das realisieren kann, was ich mir ausgedacht habe.
Also folgendes, ich habe ein Uhr mit Hilfe Atmega 32 programmiert. Die 
Zeitzählung wurde mit einem Timmer realisiert. Die Sekunden-, Minuten-, 
und Stundenwerte werden in Integern gespeichert. Jetzt möchte ich das 
mein 3 LEDs die Sekunden blinkend anzeigen, die 2. Led Minuten blinkend 
anzeigt und die 3. LED die Stunde blinkend anzeigt. Und das muss so 
aussehen LED-Sekunde blinkt jede Sekunde, LED-Minute blinkt jede Minute 
u-s.w.

Hat jemand Tipp wie das im Programm realisieren kann?
Danke!!!!
#1825151
ich kapier nicht, was er will.

die sekunden-LED soll im Sekundentakt blinken.
2Hz, oder 1Hz?

die Minute-LED soll wie blinken?
die Stunden-Led soll wie blinken?

Sebastian Enz schrieb:
> Teste die 3 Werte auf gerade und ungerade und schalte die LED's
> etsprechend ein oder aus.

das würde ja heißen, man kann die Stunden nur alle 2 Stunden ablesen, da 
bei geraden Stunden die LEDs ja aus sind.
OP #1825166
Vlad Tepesch schrieb:
> ich kapier nicht, was er will.
>
> die sekunden-LED soll im Sekundentakt blinken.
> 2Hz, oder 1Hz?
>
> die Minute-LED soll wie blinken?
> die Stunden-Led soll wie blinken?
>
> Sebastian Enz schrieb:
>> Teste die 3 Werte auf gerade und ungerade und schalte die LED's
>> etsprechend ein oder aus.
>
> das würde ja heißen, man kann die Stunden nur alle 2 Stunden ablesen, da
> bei geraden Stunden die LEDs ja aus sind.

Also die Minuten-LED und Stunden LED sollen auchn Sekundentakt blinken
#1825184
@  Waldemar T. (bender007)

>Also die Minuten-LED und Stunden LED sollen auchn Sekundentakt blinken

Du meinst sie sollen für jeweils 1s leutchten. Das ist was anderes ;-)

Ist aber einfach. Wenn in deinem Programm die Minuten um eins erhöht 
werden, schaltest du die LED für die Minuten an. Im nächsten Durchlauf 
werden sie wieder ausgeschaltet. Das Gleiche für die Stunden. Die 
Sekunden werden ähnlich bearbeitet, nur dass dort entweder die LED nur 
1/2 Sekunde leuchtet oder im 1s Takt blinkt. Etwa so.

1
meine_Timer_ISR_10ms{
2

3
static uint8_t tick;
4

5
tick++;
6
LED_1min = 0;
7
LED_1h=0;
8

9
if (tick==50) {
10
  LED_1s =0;
11
}
12

13
if (tick==100) {
14
  tick=0;
15
  sekunde++;
16
  LED_1s=1;
17
  if (sekunde==60) {
18
    sekunde=0;
19
    minute++;
20
    LED_1min=1;
21
    if (minute==60) {
22
      minute=0;
23
      stunde++;
24
      LED_1h=1;
25
      if (stunde==24) {
26
        stunde=0;
27
      }
28
    }
29
  }
30
}
31
    
32
}

MFG
Falk
OP #1825195
Icke ®. schrieb:
> Du hast die Uhr gar nicht selbst programmiert, sondern irgendwo
> abgeschrieben, gelle? Sonst würdest du wohl nicht an ein paar simplen
> Blinklichtern scheitern. Auf dieser Webseite gibt es ein hervorragendes
> Tutorial zum Thema µC

Natürlich, um eine LED blinken zu lassen, muss man nicht Informatik 
studieren. Aber es geschieht über ein Timmer und alles muss 
synchronisiert sein. Deswegen möchte ich das so programmieren das es 
genau ist, deswegen habe ich das über Timmer gemacht.

Ich habe jetzt die Lösung: ich habe das über Modulo realisiert. Es 
vergleicht ob die Sekunden gerade Zahlen oder ungeraden Zahlen sind. 
Somit kann man das blinken lassen!
#1826823
Waldemar T. schrieb:
> Natürlich, um eine LED blinken zu lassen, muss man nicht Informatik
> studieren. Aber es geschieht über ein Timmer und alles muss
> synchronisiert sein. Deswegen möchte ich das so programmieren das es
> genau ist, deswegen habe ich das über Timmer gemacht.

Zum Thema Uhr: Wie sieht's denn mit deiner Taktversorgung aus ? Hoffe du 
verwendest einen Uhrenquarz ansonsten geht deine Uhr nach nem Tag zu 
viele !Minuten! nach...
#1826849
Waldemar T. schrieb:
> Ich habe jetzt die Lösung: ich habe das über Modulo realisiert. Es
> vergleicht ob die Sekunden gerade Zahlen oder ungeraden Zahlen sind.

Die Zählvariable mit 0x01 ver-&-en reicht auch schon zur Überprüfung aus 
und ist sicher als hexcode schlanker.
Wenn das niederwertigste Bit gesetzt ist, muss die Zahl wohl ungerade 
sein.

mfg mf

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.