Forum: Mikrocontroller und Digitale Elektronik PortA beim Attiny2313


von Matthias .. (chillin)


Lesenswert?

ich möchte bei einem attiny2313 PortA als I/O register nutzen. Da ich 
den internen oszillator nutzen will. und damit Xtal1 und Xtal2 als 
I/O-Port
mein problem tritt auf wenn ich nun das DDRA beschreiben will, hier 
erhalten ich im AVR Studio bei der Simulation folgende fehlermeldung:
"Undefined symbol: DDRA"

mein Befehl zum einrichen des DDRs lautet:

ldi r16, 0b00000011
out DDRA, r16

worin liegt das problem?

wie muss ich den PortA richtig ansprechen???

von John S. (linux_80)


Lesenswert?

Welche inc-Datei hast Du angegeben ?

2313def.inc oder tn2313def.inc ?

von Εrnst B. (ernst)


Lesenswert?

Wirklich erst bei der Simulation?
Compilieren/Assemblieren tuts vorher?

Dann einfach rauf auf den Chip, wird schon passen. Und in den "Known 
Bugs/Limitations" des Simulators nachschauen, ob der evtl PortA einfach 
nicht simuliert...

von Der da (Gast)


Lesenswert?

Wo ist der Porta beim Tiny2313, kenne nur b , c und d

von Holger K. (krulli) Benutzerseite


Lesenswert?

>Wo ist der Porta beim Tiny2313, kenne nur b , c und d
Pin 1, 4 und 5, anstatt Reset und XTAL
Wo ist Port C beim 2313?

von Der da (Gast)


Lesenswert?

Danke , stimmt ,hatte das Datenblatt von at90s2313 aufgeschlagen,
umgeblättert und da ist der Porta. Mein Fehler. Tschuldschung , habe
den Port aber auch noch nie benutzt , wegen fehlendem HV-Programmer.

von Matthias .. (chillin)


Lesenswert?

Nein, der Fehler tritt schon beim Compilieren/Assemblieren auf, tut mir 
leid, habe das falsch formoliert, bin noch ein Anfänger auf dem 
gebiet...

ich habe die "2313def.inc" datei verwendet

gibt es für diesen port andere befehle oder kann ich diesen genau so 
ansprechen wie die Ports D und B?

von Johannes M. (johnny-m)


Lesenswert?

Matthias P. wrote:
> ich habe die "2313def.inc" datei verwendet
Und die ist falsch. Wie oben schon von Tiny 80 angedeutet: Für den 
Tiny2313 ist die tn2313def.inc zuständig. Die 2313def.inc ist für den 
alten AT90S2313, und der hatte tatsächlich keinen Port A.

> gibt es für diesen port andere befehle oder kann ich diesen genau so
> ansprechen wie die Ports D und B?
Wenn Du die Sonderfunktionen der Port-A-Pins nicht verwendest, dann ja. 
Ein Pin ist aber z.B. im Normalfall der Reset-Pin. Wenn Du den als I/O 
verwenden willst, musst Du den RESET deaktivieren (per Fuse), was aber 
dazu führt, dass der µC nicht mehr mit ISP programmierbar ist (nur noch 
High-Voltage-Programming, was nur wenige Programmiergeräte können und 
was nicht in der Zielhardware geht).

Wenn Du als Taktquelle keinen Quarz oder externen Oszillator bzw. Takt 
verwenden willst, sondern den internen RC-Oszillator (der für viele 
Anwendungen ausreichend ist), dann kannst Du die beiden Anschlüsse XTAL1 
und XTAL2 als I/Os verwenden.

von Max (Gast)


Lesenswert?

>ich habe die "2313def.inc" datei verwendet
Falsch!

Richtig: "tn2313def.inc"

von Matthias .. (chillin)


Lesenswert?

hab jetzt die tn2313def.inc verwendet und es klappt einwandfrei!

danke für die schnelle hilfe!!!

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.