Forum: Mikrocontroller und Digitale Elektronik DCF77-Modul - Timing stimmt nicht


von Andreas K. (andreasmc)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe noch etwas Probleme ein DCF77-Modul (müsste von Pollin sein, 
lag aber schon eine Weile in der Bastelkiste... Aufschrift unten: 
WHP0027V03) zum Laufen zu bekommen.

Um es mit 3.3V und 5V einsetzen zu können und belastbare Logikpegel 
herauszubekommen habe ich mir eine kleine Adapterplatine gebaut:
1
         Modul                                                          Controller
2
                 3.3v
3
    /-[=]-VCC-------+---------+---------------------\
4
    | 47k           |         |                    /-|
5
    |               =10uF     =1nF       1702-3302|  |-+---+-----+---------VCC 3-5V 
6
    |               |         |                    \-| |   |     |1k PWR
7
    |               |         |                     |  |   =1nf  \[=]->|-\          
8
    |               |         |                     |  |   |             |
9
    |     PON--+--+-+---------+---------------------+--(---+-------------+-GND
10
    |          |  |                                    |
11
    |     GND--/  |                                    |
12
    |            |-\                                   |
13
    \-----TCO----| | 2n4124                            |
14
                 |-/             470  DAT              |
15
                  |            /-[=]--|<---------------/
16
                  |            |
17
                  \--------------------------------------------------------DATA

Für die ersten Schritte verwende ich einen triviale Arduino-Funktion auf 
einem Ardunio Mega:
1
#define DCF77_DATA 49
2
#define DCF77_GND 47
3
#define DCF77_VCC 45
4
5
6
void DCF77()
7
{
8
  uint16_t x=0,y=0,thigh, tlow, tsum;
9
  
10
  pinMode(DCF77_DATA,INPUT);digitalWrite(DCF77_DATA,LOW);
11
  pinMode(DCF77_GND,OUTPUT);digitalWrite(DCF77_GND,LOW);
12
  pinMode(DCF77_VCC,OUTPUT);digitalWrite(DCF77_VCC,HIGH);
13
14
  
15
  while (true)
16
  {
17
  thigh=0;
18
  tlow=0;
19
    while (!digitalRead(DCF77_DATA)) // Absenkung
20
      {
21
        tlow++;
22
        delay(1);      
23
      }
24
    while (digitalRead(DCF77_DATA)) // Pause
25
      {
26
        thigh++;
27
        delay(1);      
28
      }     
29
   if (thigh>950)
30
     Serial.println();  
31
   tsum=tlow+thigh;     
32
   Serial.print("[");
33
   Serial.print(thigh);
34
   Serial.print("+");
35
   Serial.print(tlow);
36
   Serial.print("=");
37
   Serial.print(tsum);
38
   Serial.print("]");
39
/*
40
  if (tlow<270) 
41
    Serial.print("0");
42
  else
43
    Serial.print("1");  
44
*/
45
}
46
47
Grundsätzlich läuft das ganze... ich bekomme sauber 59 Pulse pro Minute, und High+Low eines Pulses ist zuverlässig 979..981 Zähler lang (~1000ms-Debugausgabe-Quarzgenauigkeit)
48
49
Dummerweise dauern die Absenkungen nicht 100ms für 0 und 200ms für 1 sondern relativ chaotisch zwischen 190ms und 335ms (Auswertung siehe Attachment). Das ändert sich auch nach Stunden nicht.
50
51
Wenn ich mir in dem Graph das tiefste "Tal" bei 270 als Unterscheidungspunkt zwischen 0 und 1 nehme, bekomme ich keine sinnvollen Werte - einige Bits scheinen zwar durchgehend 1 zu bleiben, aber die Datumsangaben im hinteren Teil ändern sich von Minute zu Minute.
52
53
[code]
54
10011000011100110010011001011110000100110101110010000100100
55
10011110111111100010011000111110001111110011110111101010100
56
10111100101111000111011010111001000100110001110110100000101
57
10101111001110010110111100110111011110110001010011011010100
58
11100110010000110010111100111111000100110111000011000100100
59
10111011111010110110011101110011000100111011010010001000100
60
10010111001110110010010110110110100110111101100011111001110
61
10101101011100110010011110110111110111111011100010010010110
62
10111111100011000111011111110010110100110011010011000111101
63
10010001111111011011011110110110000100111111000010000001100
64
10111011101111110010010001100111000100111101100010001100100

Hat jemand eine Idee was da schief laufen könnte?

P.S. wohne nur wenige KM vom Mainflingen entfernt, ist das Signal 
vielleicht zu stark?

danke,
  Andreas

von c-hater (Gast)


Lesenswert?

Andreas K. schrieb:

> ich habe noch etwas Probleme ein DCF77-Modul (müsste von Pollin sein,

Wenn es das (oder eins von denen) ist, ergibt die Schaltung definitiv 
keinen Sinn. Was zum Teufel hast du dir dabei eigentlich gedacht?

von Stefan F. (Gast)


Lesenswert?

Deine Schaltung passt nicht zu dem Pollin Modul. Wenn es nicht weit vom 
Mikrocontroller entfernt ist und dieser mit 3,3 bis 4V versorgt wird, 
kannst du seinen Ausgang direkt an den Mikrocontroller anschließen.

Ansonsten würde mit einem CMOS Level-Shifter arbeiten.

von Michael M. (michaelm)


Lesenswert?

Andreas K. schrieb:
> Um es mit 3.3V und 5V einsetzen zu können und belastbare Logikpegel
> herauszubekommen habe ich mir eine kleine Adapterplatine gebaut:

Hast du mal einfach nur eine Spannungsversorgung genommen und das Modul 
damit betrieben (den Arduino dazu mal ganz weit weggestellt, braucht man 
dafür nicht)?

Wie sieht das Oszillogramm am Sekunden-Ausgang (o.ä.) aus?



> Grundsätzlich läuft das ganze... ich bekomme sauber 59 Pulse pro Minute,

Das ("sauber" 59 Pulse) erkennt man in deinem "oszillographierten 
Bildchen" nicht wirklich...
:-((

EDIT: Bei dem Schaltbild bekommt man Augenkrebs.
Hast du vielleicht auch ein Stück Papier und einen Schreiber zur Hand? 
Dann würde das Jeder entziffern können. ;-)

EDIT2:Kannst du "Minusbewerter" dich auch schriftlich äußern und damit 
einen konstruktiven Beitrag leisten?

: Bearbeitet durch User
von Jens M. (schuchkleisser)


Lesenswert?

Andreas K. schrieb:
> pinMode(DCF77_GND,OUTPUT);digitalWrite(DCF77_GND,LOW);
>   pinMode(DCF77_VCC,OUTPUT);digitalWrite(DCF77_VCC,HIGH);

Warum das?

Andreas K. schrieb:
> pinMode(DCF77_DATA,INPUT);digitalWrite(DCF77_DATA,LOW);

Wo kommt der Highpegel her? ;)

von Andreas K. (andreasmc)


Angehängte Dateien:

Lesenswert?

c-hater schrieb:
>> ich habe noch etwas Probleme ein DCF77-Modul (müsste von Pollin sein,
> Wenn es das (oder eins von denen) ist, ergibt die Schaltung definitiv
> keinen Sinn. Was zum Teufel hast du dir dabei eigentlich gedacht?

Warum nicht?
Gedanke: 5V Versorgungsspannung mit Spannungsregler auf 3.3V bringen 
(Modul verträgt keine 5V), und den schwachen Ausgangsimpuls über 
Transistor schalten um damit eine blinkende LED+einen belastbaren 
Ausgang zu haben.


>Deine Schaltung passt nicht zu dem Pollin Modul.
Inwiefern? Ich habe im Schaltbild die Position der Modulanschlüsse aus 
Gründen der Lesbarkeit verschoben, physikalische Reihenfolge ist GND, 
TCO,PON, VCC.


>Wenn es nicht weit vom
>Mikrocontroller entfernt ist und dieser mit 3,3 bis 4V versorgt wird,
>kannst du seinen Ausgang direkt an den Mikrocontroller anschließen.
Soll Ardunio-Kompatibel sein, also 5V.

>Ansonsten würde mit einem CMOS Level-Shifter arbeiten.
Für ein Bit in einer Richtung reicht ein Transistor nicht?

>Hast du mal einfach nur eine Spannungsversorgung genommen und das Modul
>damit betrieben (den Arduino dazu mal ganz weit weggestellt, braucht man
>dafür nicht)?
>Wie sieht das Oszillogramm am Sekunden-Ausgang (o.ä.) aus?
Habe kein gescheites Oszilloskop. Ich probiere es demnächst mal mit 
meinem DSO138.

>Das ("sauber" 59 Pulse) erkennt man in deinem "oszillographierten
>Bildchen" nicht wirklich...
Sorry, habe ich vielleicht zu unklar ausgedrückt. Das ist kein 
Oszillogramm. Das ist eine statistische Kurve der Pulsdauern. Die Pulse 
werden wie gesagt vom Arduino sauber erkannt, es ist genau 1 Puls pro 
Sekunde, kein Bouncen oder ähnliches.

Eine Minuten von den Zeiten sieht z.B. so aus: 
[HighZeit+LowZeit=SummeZeit]

[1664+296=1960][731+249=980][732+247=979][736+243=979][681+299=980][719+ 
261=980][715+263=978][715+265=980][715+265=980][669+310=979][671+309=980 
][744+235=979][767+212=979][692+287=979][752+228=980][769+210=979][772+2 
08=980][755+224=979][688+293=981][756+222=978][758+222=980][683+296=979] 
[676+303=979][666+315=981][677+303=980][735+243=978][753+227=980][681+29 
8=979][708+271=979][750+230=980][713+267=980][752+227=979][753+227=980][ 
681+298=979][669+310=979][721+259=980][773+205=978][735+245=980][751+229 
=980][686+293=979][763+216=979][733+247=980][726+254=980][757+223=980][6 
89+290=979][683+296=979][723+257=980][762+217=979][683+296=979][737+242= 
979][757+223=980][767+212=979][740+240=980][750+229=979][722+257=979][75 
6+224=980][670+310=980][756+223=979][756+223=979]

>EDIT: Bei dem Schaltbild bekommt man Augenkrebs.
>Hast du vielleicht auch ein Stück Papier und einen Schreiber zur Hand?
>Dann würde das Jeder entziffern können. ;-)

Tuts auch Paint?

von Andreas K. (andreasmc)


Lesenswert?

Jens M. schrieb:
> Andreas K. schrieb:
>> pinMode(DCF77_GND,OUTPUT);digitalWrite(DCF77_GND,LOW);
>>   pinMode(DCF77_VCC,OUTPUT);digitalWrite(DCF77_VCC,HIGH);
>
> Warum das?

Das Modul steckt in der IO-Leiste vom Arduino, GND und VCC werden über 
IO-Pins bereitgestellt.

> Andreas K. schrieb:
>> pinMode(DCF77_DATA,INPUT);digitalWrite(DCF77_DATA,LOW);
>
> Wo kommt der Highpegel her? ;)

Der Pin steht auf INPUT. Der Ausgang wird auf LOW geschrieben um den 
internen Pullup auszuschalten.

von MiWi (Gast)


Lesenswert?

Andreas K. schrieb:

>
>>EDIT: Bei dem Schaltbild bekommt man Augenkrebs.
>>Hast du vielleicht auch ein Stück Papier und einen Schreiber zur Hand?
>>Dann würde das Jeder entziffern können. ;-)
>
> Tuts auch Paint?

genauso schlimm, aber was solls.

schalte zu der LED die auf die Dataleitung geht einen 2k2 Widerstand 
parallel damit damit der Highpegel zuverlässig erreicht wird, so wird 
das nix. Dann sollte das mit dem Timing auch passen.

von Michael M. (michaelm)


Angehängte Dateien:

Lesenswert?

MiWi schrieb:
>> Tuts auch Paint?
>
> genauso schlimm, aber was solls.

..immerhin ein klein wenig besser... ;-)
___


In deiner Schaltung schwirrt die Data-Leitung irgendwo herum, bloß einen 
definierten Puls kriegst du da nicht raus.

Sieh dir mal diese Schaltung an: http://www.grother.de/dcf-modul-01.html
Ob LD-Regler oder Zenerdiode ist prinzipiell egal. Ich würde die 
Diodenlösung wählen. Wer weiß (je nach Aufbau), ob der Regler nicht auch 
Schweinereien - z.B. Schwingen- macht. ^^

Die diversen Module brauchen überwiegend (lt. Gurgel) KEINEN 
Pullup-Widerstand; unter Umständen evtl. sogar kontraproduktiv.

: Bearbeitet durch User
von Ozvald K. (Gast)


Lesenswert?

Ich habe vor einem guten Jahr auch mit einem Pollin-Modul herumgespielt. 
Das Modul ist am Ausgang nur mit 1-2µA (habe nicht genau im Kopf) 
belastbar. Welche Verstärkung hat der Transistor den du verwendest? Es 
müsste aber auch ohne Transistor funktionieren, Ausgang vom Modul direkt 
an Eingang, ohne Pullup. 3V werden als High von µC zuverlässig erkannt. 
Übrigens, bei mir läuft so mit Direktkopplung auch über einem ~1.5m 
langem PC-Mauskabel.

von Jens M. (schuchkleisser)


Lesenswert?

Andreas K. schrieb:
> Der Pin steht auf INPUT. Der Ausgang wird auf LOW geschrieben um den
> internen Pullup auszuschalten.

Ja genau.
Wo kommt der Highpegel her? ;)

Und der Basiswiderstand für den Verstärkertransistor fehlt. Die Endstufe 
des Moduls kurzzuschließen könnte sich auf den AGC oder Komparator 
auswirken.

von Peter D. (peda)


Lesenswert?

Kein Wunder, daß viele Deine Schaltpläne bäh finden.

Für Schaltpläne haben sich allgemein folgende Regeln durchgesetzt:
- VCC oben
- Signalfluß von links nach rechts (in Leserichtung).
- GND unten


Den Transistor kannst Du weglassen und über den Komparatoreingang mit 
1,1V vergleichen.
Den Kondensator auch und in Software entprellen (Mehrfachabtastung).

von Michael M. (michaelm)


Lesenswert?

Ozvald K. schrieb:
> Welche Verstärkung hat der Transistor den du verwendest?

Bmin = 120

von Michael M. (michaelm)


Lesenswert?

Michael M. schrieb:
> Sieh dir mal diese Schaltung an:....

Noch mal ein wenig deutlicher: Bau' die Schaltung genau SO auf.
Deine (nach deinem Malplan) kann nie und nimmer funktionieren: Der 
Collector liegt auf GND, der Emitter hat irgendein positives Potential 
(Invers-Betrieb??)
Wir sprechen von einem NPN-Transistor. ^^ Da sollte doch der C der 
positivste Punkt sein...



Ozvald K. schrieb:
> Das Modul ist am Ausgang nur mit 1-2µA (habe nicht genau im Kopf)
> belastbar.
Na, ein paar mehr dürften es schon sein, sonst wären da nicht 
Pullup-Emfehlungen in der Größenordnung ca. 30k.



Peter D. schrieb:
> Den Kondensator auch und in Software entprellen (Mehrfachabtastung).

Sind die Eingänge eines Arduino und Consorten soo zappelig, so dass man 
sie mit "Baldrian" füttern muss?
Ich habe zwar noch nie solche Module in der Hand gehabt und weiß daher 
nicht, welche Qualität der Ausgang liefert. Dass er prellt, kann ich mir 
nicht wirklich vorstellen...

von Peter D. (peda)


Lesenswert?

Michael M. schrieb:
> Ich habe zwar noch nie solche Module in der Hand gehabt und weiß daher
> nicht, welche Qualität der Ausgang liefert. Dass er prellt, kann ich mir
> nicht wirklich vorstellen...

Langwelle läßt sich sehr einfach stören (Gewitter, Staubsauger, Monitor 
usw.).

von Ozvald K. (Gast)


Lesenswert?

Michael M. schrieb:
> Ozvald K. schrieb:
>> Das Modul ist am Ausgang nur mit 1-2µA (habe nicht genau im Kopf)
>> belastbar.
> Na, ein paar mehr dürften es schon sein, sonst wären da nicht
> Pullup-Emfehlungen in der Größenordnung ca. 30k.

Ich weiß nur, dass das Pollin Modul DCF1 mit internem Pullup des AVR 
µC-s nicht mehr funktioniert hat.

Peter D. schrieb:
> Langwelle läßt sich sehr einfach stören (Gewitter, Staubsauger, Monitor
> usw.).

Meine Erfahrung ist, dass wenn das Signal derartig gestört ist, hilft 
auch kein Entprellen mehr. Das Modul prellt nicht wie ein Taster.

von Stefan F. (Gast)


Lesenswert?

Ich würde auch davon absehen, die GND Leitung über einen I/O Pin zu 
schalten. GND muss immer GND sein, sonst schießt du dir früher oder 
später ins eigene Knie.

von Karl B. (gustav)


Angehängte Dateien:

Lesenswert?

Hi,
Zitat:
Folgende Infos sind unbedingt nötig, um es zum laufen zu bekommen:
- Man benötigt noch einen 10uF Elko.(nicht sicher, aber jetzt 
funktioniert es endlich, weshalb ich ihn nicht wieder abmache)
- Man benötigt einen Comparator, zumindest softwareseitig, bei mir wurde 
Umin=2,58V, Umax=2,80V ausgegeben. Mein Adruino konnte das nicht als 
"digitalRead" verarbeiten, mit der Bib "analogComp" gings.
-Der Signal-Pin (TCO) ist mit dem Signalabnehmer und einem 
10K-Widerstand zu verbinden, dessen anderes Ende mit GND verbunden wird. 
Als ein PULL-DOWN(!!!!) Widerstand und nicht wie im Datenblatt direkt an 
den MCU. Bei mir hat ein Pullup nicht funktioniert.
-Für besseren Empfang die Antenne "tangential" zu Frankfurt ausrichten.
/Zitat
Quelle:
https://www.pollin.de/p/dcf-77-empfangsmodul-dcf1-810054

Und am PON-Pin mal herumspielen.
Einige sagen, dauern auf Low. Andere das Gegenteil. Wieder andere sagen, 
nach Einschalten wieder abklemmen. Ist sozusagen ein Starter.
Deswegen "herumspielen".

ciao
gustav

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Karl B. schrieb:
> Man benötigt einen Comparator, zumindest softwareseitig

Nicht ganz richtig, diese Module liefern saubere digitale Signale.

Was du brauchst, ist irgendwie eine Pegelanpassung auf die 5V des 
Mikrocontrollers. Das kann man auf vielfältige Weise machen, z.B. mit 
dem Komparator, aber auch mit einem Transistor oder einem Logikgatter.

> Signalabnehmer

Was ist ein "Signalabnehmer"?

> Als ein PULL-DOWN(!!!!) Widerstand und nicht wie im
> Datenblatt direkt an den MCU

Ein Schaltplan wäre sicher verständlicher.

von Karl B. (gustav)


Lesenswert?

Stefan ⛄ F. schrieb:
> Ein Schaltplan wäre sicher verständlicher.

Hi,
ist das, was man im Netz als Kundenrezension und Info findet, ist nicht 
von mir.
Karl B. schrieb:
> Zitat:
....
/Zitat
War auch deutlich als Zitat gekennzeichnet.
Disclaimer: Zu Risiken und Nebenwirkungen fragen Sie...
Hätte eventuell weiterhelfen können.


ciao
gustav

: Bearbeitet durch User
von Michael M. (michaelm)


Lesenswert?

@ Andreas

War die Lösung für dein Problem nun zu kompliziert oder zu einfach?
Hast du deine Schaltung auf den notwendigen Stand der Dinge gebracht?
Har sich der gewünschte Erfolg eingestellt?

von Andreas K. (andreasmc)


Angehängte Dateien:

Lesenswert?

Michael M. schrieb:
> @ Andreas
>
> War die Lösung für dein Problem nun zu kompliziert oder zu einfach?
> Hast du deine Schaltung auf den notwendigen Stand der Dinge gebracht?
> Har sich der gewünschte Erfolg eingestellt?

Ich habe die DATA-LED mal gebrückt (statt 2k2 parallel), so dass der 
Datenausgang direkt über 470 Ohm auf Plus gezogen wird.

Unterschied im Timing: Keiner. Ich würde eigentlich auch erwarten dass 
eine (rote) LED gegen Plus die nicht geschaltete Leitung schnell genug 
auf logisch high zieht bei 5V Betriebsspannung.

Dann habe ich das Modul mal an einen Analog-Eingang des Arduinos gehängt 
um mir einen Eindruck vom Signalverlauf machen zu können (siehe Bilder). 
Sieht für mich von den Flanken eigentlich relativ gut aus, nur die 
Absenkungen haben halt nicht die richtige Länge (In der Detailansicht: 
430 Pixel Gesamtsekunde vs 96 Pixel Absenkung = 223ms).

Die restlichen Vorschläge probiere ich über Ostern mal aus...

von Stefan F. (Gast)


Lesenswert?

Andreas K. schrieb:
> Ich würde eigentlich auch erwarten dass
> eine (rote) LED gegen Plus die nicht geschaltete Leitung schnell genug
> auf logisch high zieht bei 5V Betriebsspannung.

5V - 2V = 3V, und 3V ist nicht für jeden Mikrocontroller "high" genu, 
wenn er mit 5V versorgt wird.

Was mir an deinen Bilder gar nicht gefällt ist der unregelmäßige HIGH 
Pegel. Der müsste eigentlich glatt wie ein Babypopo sein, denn DCF 
Module benötigen eine sehr glatte stabile Spannungsversorgung.

Versorge das Ding zur Gegenprobe mal mit eigenen Batterien.

von Michael M. (michaelm)


Lesenswert?

Andreas K. schrieb:
> Ich habe die DATA-LED mal gebrückt (statt 2k2 parallel), so dass der
> Datenausgang direkt über 470 Ohm auf Plus gezogen wird.

Nochmal: Bau deine Schaltung wie im gezeigten Beispiel auf!!!

So wird das nix, denn deine aufgemalte Schaltung ist einfach, wie oben 
schon beschrieben totaler Murks. Ein Fall für die Tonne...

Andreas K. schrieb:
> Unterschied im Timing: Keiner.

Wss für ein Wunder. Woher auch sollte der jetzt kommen?

: Bearbeitet durch User
von Andreas K. (andreasmc)


Angehängte Dateien:

Lesenswert?

Vielen lieben Dank an alle die geantwortet haben. Ich konnte das Problem 
schrittweise lösen:

1) Das reine DCF-Modul an den Analog-Eingängen eines Arduino-Due (3.3V) 
hat ordentliche Signale erzeugt. Mit aktiviertem internen Pullup an TCO 
eher schlechtere als ohne -> Modul OK, Pullup unnötig.

2) Ich habe auf meiner Adapter-Platine den 47k Pullup von TCO nach VCC 
entfernt und ihn stattdessen als Basiswiderstand vor den Transistor 
geschaltet (siehe aktualisierter Plan).

3) Ich habe den Transistor noch mal nachgemessen, ich hatte im 
Schaltplan den Pfeil auf der falschen Seite eingezeichnet. Korrigiert.

Damit läuft meine totaler-Murks-Schaltung jetzt eigentlich recht 
zufriedenstellend.

von Michael M. (michaelm)


Lesenswert?

Andreas K. schrieb:
> Damit läuft meine totaler-Murks-Schaltung jetzt eigentlich recht
> zufriedenstellend.

Das Schaltbild sieht zwar immer noch grausam aus, aber Schwamm drüber...

Wie sehen die Timing-Ergebnisse jetzt aus?

von Andreas K. (andreasmc)


Angehängte Dateien:

Lesenswert?

Michael M. schrieb:
>
> Wie sehen die Timing-Ergebnisse jetzt aus?

Gut. Während ca einer Stunde alle Absenkungen zwischen 90..110 oder 
190..210 ms, keine erkennbaren Bitfehler.

Beispiel-Minute:
[878+102=980][776+203=979][778+202=980][877+102=979][878+102=980][777+20 
3=980][874+103=977][777+204=981][877+102=979][778+203=981][776+201=977][ 
876+104=980][877+102=979][776+204=980][878+102=980][878+102=980][877+102 
=979][776+204=980][876+102=978][876+104=980][779+202=981][878+101=979][7 
77+202=979][777+203=980][877+102=979][876+104=980][875+103=978][878+103= 
981][877+102=979][776+204=980][877+103=980][778+201=979][877+102=979][77 
7+203=980][876+103=979][778+202=980][874+105=979][875+104=979][878+103=9 
81][876+103=979][778+202=980][876+103=979][776+203=979][875+104=979][776 
+204=980][877+102=979][877+104=981][776+203=979][875+104=979][877+103=98 
0][877+102=979][875+104=979][875+105=980][877+103=980][875+104=979][776+ 
204=980][876+103=979][877+103=980]

Die Spannung High-Pegel kräuseln sich ziemlich (vermute den 
Spannungsregler), aber das stört nicht bei der Auswertung.

von Jens M. (schuchkleisser)


Lesenswert?

Interessant das du nur etwa 800 erreichst.
Voller Pegel sollte 1023 sein, nicht viel weniger. 1000 vielleicht.
Das untere Ende ist wegen der Sättigungsspannung ok.

Überleg nochmal genau, wo der Eingang sein High herbekommt ;)
Das Rätsel hast du immer noch nicht gelöst...

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Bist du sicher dass deine 1nF Kondensatoren richtig sind? Das habe ich 
so bisher noch bei keinem Spannungsregler gesehen.

von Andreas K. (andreasmc)


Angehängte Dateien:

Lesenswert?

Es liegt nicht am Spannungsregler :-)
Nach Jens Hinweis habe ich noch mal die LED kurzgeschlossen damit es 
einen "sauberen" Pullup gibt.

Der Zeitpunkt ist im Plot gut zu sehen...

von Jens M. (schuchkleisser)


Lesenswert?

Andreas K. schrieb:
> Der Zeitpunkt ist im Plot gut zu sehen...

Wetten das du den Pegel "mit LED" sogar verschieben kannst, wenn du die 
LED beleuchtest? Am besten mit was rotem, Laser oder so, oder ein 
IR-Strahler.

Mach einfach einen echten Pullup parallel zur LED mit Widerstand, dann 
sollte das auch so mit Licht aussehen.
Oder: nutze die Software, um DI auf DO zu kopieren, dann siehst du was 
der Prozessor sieht.

von Michael M. (michaelm)


Lesenswert?

Andreas K. schrieb:
> Es liegt nicht am Spannungsregler :-)
Über die Brücke geh' ich nicht. Aber ohne Oszi wird das schwer 
herauszufinden sein.

> Nach Jens Hinweis habe ich noch mal die LED kurzgeschlossen damit es
> einen "sauberen" Pullup gibt.
Uiih, noch mehr Last !


1. Braucht die LED wirklich soviel Stromfluss, so dass du 470R da in 
Serie hast? Ich würde den mal auf min. 680R erhöhen.
2. Wieviel mA kann der Controller-Ausgang schadlos max. liefern?
3. Brauchst du die Betriebsanzeige-LED? Du siehst doch schon am Blinken, 
dass das Ding läuft.

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
Noch kein Account? Hier anmelden.