Liebe Leute, fange gerade mit Assemblerprogrammierung an und habe sofort Problem mit Attiny auf Pollin-Board. Die drei Taster sind mit jeweils 100K gegen Gnd terminiert. Wenn ich einen Tasterstatus einlesen will, dann ist dieser immer auf "1" . T offen ca. 2,7V, T geschlossen 5V. Sicher ist das ein triviales Problem, aber ich kann die Ports natürlich nicht einlesen. ist das bekannt oder verstehe ich etwas grundsätzliches nicht? Danke....
:
Verschoben durch User
Da werden die internen Pullups aktiv sein, die dann mit den 100K gegen GDN einen Spannungsteiler bilden. Schalte diese mal testweise aus.
Rainer Von römer schrieb: > dann ist dieser > immer auf "1" . Das Schaltbild des Evaluation-Boards könnte sehr nützlich sein.
mit jeweils 100k gegen GND terminiert == Widerstand gegen Masse. Wenn er drückt und 5V hat == Schalter gegen Plus. Wenn er 2.7V misst == PullUp (typ.80-120K)aktiv und 100K gegen GND. > Das Schaltbild des Evaluation-Boards könnte sehr nützlich sein. https://www.mikrocontroller.net/articles/Diskussion:Pollin_ATMEL_Evaluations-Board
der Link von axelr war sehr hilfreich. Die Beschaltung der Taster ist auch bei mir so. Leider ist das Problem aber noch nicht gelöst. Habe zwischenzeitlich 2 Dinge versucht. Habe einen PullDown Widerstand auf 10K reduziert. Das hat funktioniert. Hatte danach einen Nullpegel von 0,5V. Dies geschah in Zusammenhang mit USART-Initialisierung. Taster gedrückt - Zeichen an Terminal gesendet. Dann habe ich mich an die Ansteuerung eines LCD-Displays gemacht. Gleiche simple Überlegung. Taster gedrückt - Zeichen auf LCD ausgeben. Hat auch erst funktioniert. Da ich aber dann den 2ten Taster mit reingenommen habe und ein paar logische Fehler eingebaut hatte, bin ich erst einmal nicht auf die Taster gestossen. Messen brachte zu Tage, dass die Portpegel nun immer 0V waren. Auch das Abstellen der internen PullUps hat nichts gebracht. Nun frage ich mich, Taster oder Attiny kaputt? Muß ich noch weiter drüber nachdenken :-)
Rainer Von römer schrieb: > Nun frage ich mich, Taster oder Attiny > kaputt? Ich tippe eher auf einen Programmfehler in Zeile 42
Hi Georg, ja die verflixte 42ste Zeile. Habe aber mittlerweile das Progrämmchen so weit runtergekocht, dass eigentlich bei gedrücktem Taster nur noch eine LED aufleuchten sollte! Tut sie aber nicht, weil am Tasterport nix als 0V anliegen. Überlege schwer, ob ich nicht erst mal meinen 2ten Attiny einstecke. Aber - und ich schreibe es echt ungern - es hat ein paar mal funktioniert. Muß also weiter denken ...
Rainer Von römer schrieb: > Hi Georg, ja die verflixte 42ste Zeile. Er will Deinen Quelltext sehen. Das sollte diese verklausulierte Andeutung ausdrücken. Rainer Von römer schrieb: > Nun frage ich mich, Taster oder Attiny > kaputt? Prüfe die Taster mit dem Durchgangsprüfer, das gibt Gewissheit. Baue die Tasterei nach diesem Artikel um: http://www.mikrocontroller.net/articles/Diskussion:Pollin_ATMEL_Evaluations-Board Das erspart jede Menge Sackgang und Verdruss.
Hi, habe jetzt erst einmal die Taster des Pollin-Boards auf Aktiv-Low umgebaut. Kann ich nur jedem empfehlen, der mit dem Pollin-Board arbeiten will! (Link von axelr) Und mein Problem lag tatsächlich am defekten Taster1. Wenn ich per Prüfleitung den Eingang auf Low ziehe, dann funzt auch mein Progrämmchen. Desgleichen, wenn ich T2 oder T3 abfrage. Jetzt noch eine Frage zum Entprellen. Ich mache die Abfrage auf Low am Portpin mit [GuckObStarten: sbic pinD, Taster2 ;wenn Taster Ta2=0 gedrückt rjmp GuckObStarten] Da sollte Entprellen doch nicht nötig sein?! Danke Allen für die Antworten und wenn noch Interesse an meinem Code besteht, werde ich ihn einstellen, wenn die LCD-Ansteuerung so funzt, wie ich mir das vorgestellt habe.
Wenn Du sbic ein paar mal untereinanderschreibst. muss zumidest in der Zeit, ind er die Zeilen abgearbeitet werden der pin auf Low liegen.
1 | [code] |
2 | GuckObStarten: |
3 | sbic pinD, Taster2 ;wenn Taster Ta2=0 gedrückt |
4 | sbic pinD, Taster2 ;wenn Taster Ta2=0 gedrückt |
5 | sbic pinD, Taster2 ;wenn Taster Ta2=0 gedrückt |
6 | sbic pinD, Taster2 ;wenn Taster Ta2=0 gedrückt |
7 | sbic pinD, Taster2 ;wenn Taster Ta2=0 gedrückt |
8 | rjmp GuckObStarten |
9 | [/code] |
PS ich habe mal "[code]" stehen lassen. So ist das gemeint mit dem Syntaxt. Offenbar bist Du da durcheinander geraten? Ich habs jetzt hier zusätzlich noch mal in "[pre]..[/pre.]" gesetzt, damit man's sieht [ingrid] Eine richtige Entprellung ist das natürlich NICHT! [/ingrid]
Hi Leute und axelr, danke, und ich gebe dir,axelr, recht, dass das keine rechte Entprellung ist. Aber nach dem ersten Low muß das Programm in ein Unterprogramm gehen und etwas (viel) machen, bevor ich in die Tasterabfrage zurückgehe. Nicht so etwas wie LED an Port x-an... Zur Sicherheit warte ich nach Ende des U-Programms noch 5mS. Das funzt! Aber mittlerweile sind auch die 2 anderen Taster defekt! Hätte ich nicht erwartet und ist voll blöd! Und kann einen ganz schön Nerven kosten. Die schalten jetzt alle nur noch nach Lust und Laune! Hardware, die ich fast nie verdächtige (en mußte) aber so isses! Danke Rainer
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.