Hallo Wissende,

ich habe ein Problem beim Einlesen der Pins beim ATmega16. Ich habe ein kleines Testprogramm mit Bascom geschrieben, bei dem ich den Port C als INPUT declariere und die Pull-up-Widerstände auf allen Pins einschalte. Die Pins sind in der Schaltung offen. Wenn ich nun mit dem Pinc-Befehl die einzelnen Pins auslese und auf einem LCD-Display ausgebe (das ist auf Port B angeschlossen) sind die Bits 0, 1, 6 und 7 auf log.1 und die Bits 2, 3, 4 und 5 auf log.0. Eigentlich sollten alle auf log.1 sein!
Wenn ich nun die Pins in der Schaltung mit 0 verbinde reagieren nur die Bits 0 und 1. Die anderen lassen sich nicht beeindrucken.
Ich habe diese Phänomen mit 4 ATmega16 ausprobiert. Immer mit dem gleichen Ergebnis.
Schreibe ich das Programm um auf Port D oder Port A funktioniert alles wies soll.
Wo liegt also der Fehler?
Im Simulator von Bascom läuft alles ganz normal wie es gewollt ist.

Hat jemand schon mal ähnliches erlebt?

Viele Grüße
Michael