www.mikrocontroller.net

Forum: Compiler & IDEs Eingänge funktionieren nicht


Autor: Dieter Winter (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich bin dabei mich mit C in CodeVision und die programmierung von AVRs
einzuarbeiten.
Im moment arbeite ich mit einem 90S4433. Die Ausgänge ( bei mir PORTB
)
zu setzten mit Delayfunktionien etc. ist kein Problem.
Doch irgendwie wollen meine Eingänge nicht !
Ich möchte einfach einmal hinbekommen meinem Controller zu sagen, "
wenn ich Taster S1 drücke ( PORTD.0 ) dann soll LED1 an ( PORTB.0 )
angehen.
Dies wollte ich einfach mit der "if" funktion machen.
Doch wieso geht das nicht?
Ich bekomme beim assemblern immer folgende Meldung:
"WARNING: possibly incorrect assignment" in der Zeile :
"if (PORTD.0 = 0)".
Kann mir da jemand helfen? Quelltext im anhang !

Vielen Dank

Autor: bla (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
= :Zuweisung
== :Vergleich

Autor: Dieter Winter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke, okay keine Warnung mehr. Hääte mir elber auffallen können.
Doch leider Leuchtet nun die LED konsequent und reagiert auf meinen
Tastendruck überhaupt nicht.

Gruß.

Autor: bla (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich sehe gerade:

Zum einlesen musst du PIND nehmen!!

Autor: Dieter Winter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also nun hab ich es so versucht :
PORTB = 0xFF;   // alle LEDs abschalten

     if (PIND.0 == 0)
         PORTB.0 = 1;

Doch leider Leuchten hier alle LEDs ständig und der 4433 wird sehr sehr
heiß :)
Hatte ich schonmal. Er geht aber noch ! glück gehabt :)
Kann doch nicht so schwer sein das hinzukriegen.

Gruß

Autor: Walter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
du solltest die Abfrage in einer Schleife machen,
so rennst du nur ein Mal durch, da kommst du mit Tastendrücken gar
nicht hinterher

Walter

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.