PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Höhere Ports (K, L etc) beim ATMega2560 nicht verwendbar?



Jaecko
03.07.2008, 09:58
Moin.

Hab soeben erfolglos versucht, bei nem ATMega2560 ein paar Pins der Ports K und L zu verwenden, was jedoch nicht klappt.
Es sollen dort z.B. Pegel verschiedener Datenleitungen abgefragt werden.
Wird das mit einem der unteren Ports probiert (A, B...) gehts; tausch ich das aus gegen z.B. L gehts nicht mehr.
Versucht mit AVRStudio + WinAVR sowie Bascom.
Ist da der ATMega defekt oder gibts da irgend ein Hindernis?
Meinte mal vor einiger Zeit was gehört zu haben, dass es bei den oberen Ports irgendwie Probleme gibt.

mfG

MeckPommER
03.07.2008, 10:37
Moin.

Probleme gibts eigentlich nicht, allerdings werden die Ports etwas anders angesprochen. Anstatt diese Ports direkt über Register anzusprechen, muss man diese als normale Speicherstelle betrachten. (hoffe, hab mich verständlich ausgedrückt ^^)

IN, OUT, SBIC, SBIS, SBI und CBI gehen also nicht und müssen über Umwege realisiert werden. Also Wert in ein Register laden (LDS Rx, PORTK), Wert manipulieren und dann wieder sichern (STS PORTK, Rx).
Bissl umständlich und ggf. auch langsamer, deshalb aufpassen, wofür man welche Register nimmt.

Bascom sollte beim compilieren eigentlich eigenständig diese Ports korrekt behandeln, jedoch natürlich nur dann, wenn man es per Bascom-Mittel realisiert.

Gruß MeckPommER

fhs
03.07.2008, 10:47
Hi,

wenn Du all Pins "Vcc" und "GND" angeschlossen hast und keine Sonderfunktionen (Datenblatt ab S. 99) von PORTL belegt hast, sehe ich keine Probleme. Mögliche Schwierigkeiten kann man beim ATmega2560 mit PORTF haben, wenn JTAG aktiviert ist.

Gruß

Fred