Der grosse LED-Wecker mit dem Notaus, wo war der eben noch?

Gast #1737767
Lesenswert?

Meinst du zufällig meinen Wecker?

http://e.svgweb.de/index.php/projects/clock/index.c

Quelltexte gibts gerne per EMail -- nein, kostenlos als OpenSource, nur 
möcht ich den noch ungerne hochladen, sonst hagelts alle paar Wochen 
wieder Kritik von wegen Nachbau funktioniert nicht. Die Schaltung hat 
Schwächen, die Firmware auch, und die möchte ich gerne vorab mit 
Nachbauern abklären, damits nachher keine Enttäsuchung gibt :-)
#1739134
Lesenswert?

Sven P. schrieb:
> Meinst du zufällig meinen Wecker?
>
> http://e.svgweb.de/index.php/projects/clock/index.c

> Verbesserungen fürs nächste Mal...
>    * Teile Software in Assembler schreiben, vorallem den
> Anzeigemultiplexer in Kombination mit dem Einlesen der Bedienelemente.
> Momentan gehen hin und wieder Takte des Drehgebers verloren.

Das ist Quatsch.
Das kann man alles prima in C schreiben ohne Assembler und die CPU 
langweilt sich immer noch.

Für Taster, Drehgeber, Multiplexen gibts Beispiele in der Codesammlung.
Und man kombiniert die Aufgaben nicht, sondern trennt sie voneinander. 
Dann hat die CPU weniger zu tun und man selber behält den Überblick.
Und Erweiterungen gehen auch leichter.

>    * Abstimmbaren Quarzballast einbauen.

Nö.
Den Quarz kann man prima in Software abgleichen. Am besten automatisch 
mit dem DCF-Signal.


Peter
Gast #1743594
Lesenswert?

Peter Dannegger schrieb:
> Das ist Quatsch.
> Das kann man alles prima in C schreiben ohne Assembler und die CPU
> langweilt sich immer noch.
Aber nicht, wenn der Multiplexer die Anzeige und die Eingabe über 
dieselben Pins erfolgt. Im Dimm-Modus wird die Anzeige für genau 
einen(!) Takt hellgetastet, und selbst das ist nachts mit bloßem Auge 
noch sehr gut sichtbar.

Da war leider bisher nicht viel herauszuholen, ich habs immerhin mal 
versucht. Sonderlich viel mit Auftrennen ist da auch nicht mehr zu 
machen. War halt von Anfang an nicht grad so günstig gewählt, die 
Methode.

>>    * Abstimmbaren Quarzballast einbauen.
> Nö.
> Den Quarz kann man prima in Software abgleichen. Am besten automatisch
> mit dem DCF-Signal.
DCF hats ja sowieso. Jetzt könnte ich natürlich noch an den 
Vergleichswerten für den Timer arbeiten, jo.
Gast #1743606
Lesenswert?

Michael G. schrieb:
> Hi Sven, joa das is der Wecker, den ich gemeint hab. Hab nur nimmer
> gewusst dass Du die Quellen verheimlichst oO

Tu ich doch garnich O_o

Ne, ehrlich. Auch wenn einiges nicht so ganz optimal ist, stecken da 
viele Tage Arbeit drin. Meine Leistungen mache ich gerne jedem 
zugänglich, der sie gebrauchen kann, aber ziellos verschleudern werde 
ich die nicht.

Opensource und Freeware und Trallalla, aber eine Email ist wohl kaum zu 
viel verlangt. Immerhin -- du hasts ja auch geschafft ;-)
#1744260
Lesenswert?

Sven P. schrieb:
> Im Dimm-Modus wird die Anzeige für genau
> einen(!) Takt hellgetastet, und selbst das ist nachts mit bloßem Auge
> noch sehr gut sichtbar.

Dann schalte eben vor der Tastenabfrage die Segmente aus und schon ists 
stockdunkel.

Das sollte man eh machen, also alle Segmente aus, Digit wechseln, neues 
Segmenmtmuster an.
Sonst gibt es Geister-Ziffern.

Auch hat die Emitterschaltung den Nachteil, daß sie schnell einschaltet 
aber langsam ausschaltet. D.h. das Leuchten dauert länger als einen 
Takt.
Ältere DT-Logik brauchte deshalb ne extra -3V Saugspannung, um die Basis 
schnell auszuräumen.


Peter
Gast #1744598
Lesenswert?

Peter Dannegger schrieb:
> Sven P. schrieb:
>> Im Dimm-Modus wird die Anzeige für genau
>> einen(!) Takt hellgetastet, und selbst das ist nachts mit bloßem Auge
>> noch sehr gut sichtbar.
>
> Dann schalte eben vor der Tastenabfrage die Segmente aus und schon ists
> stockdunkel.
>
> Das sollte man eh machen, also alle Segmente aus, Digit wechseln, neues
> Segmenmtmuster an.
> Sonst gibt es Geister-Ziffern.
Jub, hab ich auch erfahren. Daher mache ich es genau so, wie du es 
beschreibst.
Es wird immer eine Stelle angetastet, dann ausgetastet und während 
dieser Pause werden alle Taster eingelesen. Viel langsamer sollte das 
nicht werden, sonst kommt der Drehgeber ins Stolpern (der macht leider 
vier Takte pro Rastung).
#1745597
Lesenswert?

Sven P. schrieb:
> Es wird immer eine Stelle angetastet, dann ausgetastet und während
> dieser Pause werden alle Taster eingelesen. Viel langsamer sollte das
> nicht werden, sonst kommt der Drehgeber ins Stolpern (der macht leider
> vier Takte pro Rastung).

Wie schnell machst Du es denn?

Der Interruptroutine ist es egal, ob der Encoder 1-, 2- oder 4-schrittig 
ist, das interessiert erst die Mainroutine und da ist es nicht 
zeitkritisch.

Ich habe gute Erfahrungen mit 1ms (1kHz) Interruptrate gemacht, das 
reicht für manuelle Betätigung.
Das ist auch o.k. fürs Multiplexen, ergibt dann 167Hz für 6 Digits, ist 
also flimmerfrei.

Der AVR würde aber auch 5kHz bequem schaffen.


Peter
Gast #1745664
Lesenswert?

Peter Dannegger schrieb:
> Sven P. schrieb:
>> Es wird immer eine Stelle angetastet, dann ausgetastet und während
>> dieser Pause werden alle Taster eingelesen. Viel langsamer sollte das
>> nicht werden, sonst kommt der Drehgeber ins Stolpern (der macht leider
>> vier Takte pro Rastung).
>
> Wie schnell machst Du es denn?
Die Sache wird im Timer0 erledigt, der zählt bis 256 mit Prescaler 1/8, 
wobei nur bei jedem zweiten Interrupt abgetastet wird. Macht also 4MHz 
/8/256/2 = 976 Hz.


> Der Interruptroutine ist es egal, ob der Encoder 1-, 2- oder 4-schrittig
> ist, das interessiert erst die Mainroutine und da ist es nicht
> zeitkritisch.
Jein, die Impulse vom Drehgeber kommen beim Überschreiten einer Rastung 
ja qasi 'blitzschnell'. In meinem Fall bekommt die Hauptroutine dann 
einige Takte garnicht mehr mit.

> Ich habe gute Erfahrungen mit 1ms (1kHz) Interruptrate gemacht, das
> reicht für manuelle Betätigung.
> Das ist auch o.k. fürs Multiplexen, ergibt dann 167Hz für 6 Digits, ist
> also flimmerfrei.
Hier dasselbe; in jedem zweiten Interrupt wird eine Stelle eingetastet, 
macht bei 6 Stellen also 976/6 = 163 Hz. Du siehst, ich lese deine 
Gedanken ;-)

> Der AVR würde aber auch 5kHz bequem schaffen.
Müsste ich mal ausprobieren.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren