Forum: Mikrocontroller und Digitale Elektronik ATMega8515 & I/O Ports


von Markus Müller (Gast)


Lesenswert?

Hallo,
mein Problem ist (hoffentlich?) einfach zu lösen.
Ich habe einen AT Mega 8515 und würde nun gern die I/O Ports A und C
benutzten, nur leider tut sich überhaupt nichts wenn ich daraaf
schreibe. Ich nehme an, dass das mit dem externen RAM Interface vom AVR
zusammenhängt... aber ist das denn standartmäßig aktiviert...wenn ja..
wie bekomm ichs aus ;) ?

mfg
Markus

von thkais (Gast)


Lesenswert?

Das externe RAM-Interface ist meines Wissens nicht eingeschaltet, es
wird nur bei bestimmten Befehlen benutzt.
Hast Du an das Datenrichtungs-Register gedacht? Sind alle GND und VCC
angeschlossen ?

von Markus Müller (Gast)


Lesenswert?

Datenrichtung sollte stimmen. Und GND & VCC gibts ja nur jeweils einmal,
oder täusch ich mich da?

------ Code --------

ldi r16, 0xff
out DDRA, r16
ldi r16, 0xff
out PORTA, r16

------ Code --------

Das sollte ja reichen... oder?

von Jens Renner (Gast)


Lesenswert?

Also zumindest Port A benötigt eine Versorgungsspannung an AVCC und
AGND. Die solltest Du mal anschließen.
Aber Port C sollte eigentlich auch so funktionieren.

von Markus Müller (Gast)


Lesenswert?

Öhm... wo hat denn der Mega8515 AVCC und AGND ?

von Jens Renner (Gast)


Lesenswert?

Stimmt, Kommando zurück. Hab ihn doch ganz fix mit dem 8535 verwechselt.
Sorry dafür.

von Markus Müller (Gast)


Lesenswert?

Jo, kein Problem, aber das ganze ist doch schon mysteriös.

von Jens Renner (Gast)


Lesenswert?

Du hattest noch gefragt, wie man den ext. RAM deaktivieren kann... im
Datenblatt steht, dass man SRE (Bit 7) im MCUCR disablen (0) soll.
Wobei es mich wundern würde, wenn das Interface standardmäßig aktiviert
wäre.

von Markus Müller (Gast)


Lesenswert?

Ja, das würde mich auch wundern... Aber wie soll ich mir sonst erklären,
warum ich nichts mit den I/O Ports machen kann, aber der UART z.b.
funktioniert einwandfrei.....ich hab echt keine Ahnung worans liegen
könnte...

von ThomasB (Gast)


Lesenswert?

Hallo Markus:
Versuchs mal mit einem kleinen testprogramm
das "schalterport" ist PORTC,das "anzeigeport"ist PORTA
hier das kleine Testprogramm
         ser r16
         out DDRA,r16
         out PORTA,r16
loop:    in r17,PINC
         out PORTA,r17
         rjmp loop
beim drücken eines tasters an portc,leuchtet eine LED an PORTA auf,
zb.taste PINC.1=Gedrückt,leuchtet LED an PORTA.1 auf.

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
Noch kein Account? Hier anmelden.