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!!!!
Brücke C3 und verbinde GND mit Pin 17 eines gerade nicht lieferbaren Controllers.
Sebastian Enz schrieb: > Teste die 3 Werte auf gerade und ungerade und schalte die LED's > etsprechend ein oder aus. Wie kann man das realisieren?
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.
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
Wenn man schon eine Uhr programmiert hat, dann sind so Blinkerchen doch ein Klacks...
Icke ®. schrieb: > Wenn man schon eine Uhr programmiert hat, dann sind so Blinkerchen doch > ein Klacks... Aber ich komme nicht dazu, ich irgendwelchen Ansatz
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
@ 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
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!
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...
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
Joachim K. schrieb: > Die Zählvariable mit 0x01 ver-&-en reicht auch schon zur Überprüfung aus > und ist sicher als hexcode schlanker. Teste mal beide Varianten (&1 / %2) im AVRGCC. Der Compiler erzeugt in beiden Fällen ein "andi REGISTER_LOW_BYTE, 0x01", sodass es egal ist, was man man benutzt. Gruß skriptkiddy
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.