www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Problem mit Eingängen ATtiny15l


Autor: Küdens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hiho @ all,

nach einer Pause habe ich ein altes Projekt von mir wieder 
herausgekramt, an welchem ich vor längerer Zeit gearbeitet habe. Da ich 
mich bei diesem zuletzt ein wenig in meiner Programmierung festgefahren 
hatte, wollte ich nun anstatt den externen Interrupt zu nutzen einfach 
standardmäßig 2 Eingänge verwenden.


Ich nutze einen ATtiny15L.

Laut Datenblatt geht meiner Meinung nach hervor, das man PB0-PB5 als 
Ein/-Ausgänge nutzen kann. Mit einem kleinen Testprogramm konnte ich die 
einzelnen PINs als Ausgang ansprechen. Leider habe ich ein Problem die 
Pins als Eingänge zu verwenden.

Mein Testprogramm hierzu:
ldi r16, 0b00000001 //Vorinitialisierung des Ports-PIN 0 wird Ausgang
out DDRB, r16 //Vorinitialisierung des Ports

main:

sbis PORTB, 3 //schaue ob PIN 3(in dem Fall jetzt) gesetzt is
rjmp main //wenn "nein" springe hoch zu main
sbi PORTB, 0 //wenn "ja", setzte Pin 0 auf PORTB
rjmp main 

Ja was soll ich sagen, wenn ich auf Pin3 ein highsignal geben, bleibt 
die Ausgang low und wird nicht gesetzt.

Das Eingangssignal erzeuge ich mit einen entprelltem Taster welchen ich 
mit VCC des Mikroprozessors und mit Pin3 verbunden habe. Ich habe auch 
schon gemessen, dass bei betätigen des Tasters die 5V an Pin3 anliegen.

Weiß jemand was ich falsch mache? Oder kann man mit dem ATtiny15L gar 
nicht standardmäßig auf Eingänge zugreifen!?

Autor: AVR-User (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich zitiere aus dem Tutorial:

"Dabei ist wichtig, zur Abfrage der Eingänge nicht etwa Portregister 
PORTx zu verwenden, sondern Eingangsregister PINx. Die Abfrage der 
Pinzustände über PORTx statt PINx ist ein häufiger Fehler beim 
AVR-"Erstkontakt" "

Autor: Küdens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
werde ich gleich ma probieren, obwohl es in der Simulation so geklappt 
hat :(

Autor: Küdens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Okay, es klappt...


nunja ich habe immer mal ab und zu etwas programmiert und angenommen es 
wäre so richtig gewesen.

Ich werde mich in Zukunft zwingen Tutorials zu lesen.

Danke dir trotzem.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.