Hallo! Ich möchte den Abstand zwischen zwei steigenden bzw. fallenden Flanken eines Rechtecksignals (5 Vpp 2,5V Offset) mit dem 8051 auf einer Euro_535 Karte messen! Dazu schließe ich den Signalgenerator momentan auf den Input-Pin an (ich habe mir im Moment den Pin 5.1) ausgesucht und lege dich Masse des Signalgenerators und des Mikrocontrollers zusammen. In meinem Programm soll das Ganze wie folgt ablaufen: Ich frage den Pin 5.1 per "jnb P5.1,$" oder "jb P5.1,$" ab, sobald eine steigende bzw. fallende Flanke ankommt startet dann der Timer und stoppt dementsprechend wieder. Nun zu meinem Problem: Sobald ich das Signal an den Pin 5.1 anlege bricht auf dem Oszi mein Rechtecksignal zusammen! Also hab ich keine Flanken mehr,sondern nur noch ein diffuses Signal! Kann mir jemand weiterhelfen, wie genau der Signalgenerator angeschlossen werden muss, dass mein Rechtecksignal bestehen bleibt und mein Pin 5.1 auf die Flanken reagiert??? Bin mit meinem Latein echt am Ende!!! Und muss der Pin eigentlich auf high stehen und auf low gezogen werden oder umgekehrt ?! Bin für jede Hilfe dankbar :-|
Die 8051 haben einen internen Pullup an den Eingängen, daher müssen sie niederohmig angesteuert werden, um einen Low-Pegel zu erkennen (<1kOhm). Hochohmigere Quellen können an P0 angeschlossen werden, denn die haben kein Pullups und verhalten sich daher wie echte CMOS-Eingänge. Schlechte Karten hat man dann aber bei Ur-uralt 8051-er ohne internen Flash, da diese den P0 für den Programmspeicher belegen. Peter P.S.: Das *.sch Dateien unter Windows nicht zu lesen sind, sollte eigentlich klar sein. *.png, *.gif, *.jpg, *.pdf können von jedem gelesen werden.
Genauer werden solche Sachen mit der input-capture-Funktion eines Timers, da du dann unabhängig von Programmlaufzeiten bist.
Tja dann hab ich wohl schlechte Karten, ich hab so ne Uralt-Karte! Hm, Laut dem Buch das ich hab hat der komplette Port 5 keine Pullups, was aber nicht unbedingt stimmen muss! Da steh ich nun ich armer Thor und bin so schlau als wie zuvor ;-) Trotzdem schon mal Danke für die schnelle Antwort und natürlich geb ich dir recht, ein JPG is von jedem deutlich besser zu Öffnen...deswegen mein neuer Anhang!!! Gruß Christian
Die Programmlauzeit hab ich dabei in Kauf genommen, das is nich tragisch, und die Impulsweite is auch nie größer als 65536µs deswegen reicht mein 16-bit Timer vollkommen aus, weil er nie überlaufen wird und immer wieder per Schleife auf 0 zurückgesetzt! Thx Christian
ok, das ist deine Sache, und wenn ein paar Takte Abweichung nicht stören, auch überhaupt kein Problem. Den Sieben-Segment-Dekoder brauchst du eigentlich auch nicht, die Dekodierung kannst du per Software machen.
Doch den brauch ich, jedes Segment zieht um die 20 mA ich darf die Ports aber nur mit max 2mA belasten, ansonsten wär die Dekodierung über Software kein Ding gewesen! Aber hast du nich vielleicht ne Idee zu meinem "eigentlichen" Problem??? ________________________________________________________________ ...to be continued
huch, so schlapp ist der? Ich habe schon lange nichts mehr mit 51ern gemacht. Sehe nur 3 Möglichkeiten: -du hast eine 0 ins Ausgaberegister geschrieben -der Chip ist Matsch -deine Signalquelle ist extrem hochohmig (unwahrscheinlich)
Ich hoffe, Du hast Deinen Signalgenerator so eingestellt, daß Du mit Digitalpegel auf den 8051 gehst. Oder steuerst du den armen 8051 mit +/-15V an? Dann ist jetzt wirklich der Chip Matsch. Markus_8051
Hallo, (bin der Co Bastler) wir steuern mit 0-5V Rechtecksignal an. Der Port liegt auf dem High Pegel. Wenn wir einen kurzen Masseimpuls vom Controller selbst draufgeben funktioniert das ganze...nur mit dem Rechtecksignal nicht, da wird der High Pegel lediglich verrauscht, aber nichts auf Null-Potential gezogen!
Vielleicht ist das Rechtecksignal wirklich etwas hochohmig. Leg das Rechtecksiganl doch mal über einen Transistor (z.B.: BC547 etc) auf den µC-Port. Viel Erfolg, Markus_8051
Das haben wir uns auch schon überlegt, allerdings gibt es mehrere Projekte mit gleichem Signaleingang, dort wurde der Signalgenerator überall direkt angeschlossen. Wir haben schon mehrere Signalgeneratoren und mehrere Karten ausprobiert, ich denke dass irgendwo ein "Grundlagenfehler" ist
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.