Forum: Mikrocontroller und Digitale Elektronik Probleme mit neuem STK500


von Zi P. (zippo)


Lesenswert?

Hi,
ich bin gerade dabei in die Welt der Microcontroller ein zu steigen.
Ich habe mit ein STK500 bestellt. Dazu gibt es ja einen ATMEGA8515L 8PU.
Nun habe ich etwas mit Bascom Experimentiert. Dabei ist mir aufgefallen 
das der Pin 1 vom Register D nicht funktioniert. Ich wollte den als 
Taster benutzen. Doch wenn ich ihn drücke passiert nichts. Alle anderen 
Reagieren! Um weiter zu testen habe ich mal die Flachbandkabel von D und 
B vertauscht. Also Register D auf Ausgang gelegt und B auf Eingang. Nun 
haben alle Taster funtioniert aber bei den LED´s gehen die Pin-Nummern 0 
und 1 nicht. Eh ich jetzt das Board zurück schicke wollte ich mal euch 
fragen ob ich da was falsch gemacht haben könnte?

Und kann mir jemand sagen in welchen Sockel ich einen ATMEGA32 stecken 
kann? Ich habe dazu nix gefunden was auf welchen Steckplatz soll!

Gruss
Zippo

Bearb:
Ich habe gerade noch einmal bei Reichelt nachgelesen, mein Board sollte 
eigentlich mit einem AT90S8515 ausgeliefert werden aber auf meinem steht 
komischer weise ATMEGA8515L 8PU!!

von Der Ich (Gast)


Lesenswert?

Wo in welchen Sockel was gehört, steht in der Hilfe vom AVR-Studio.

von Der Ich (Gast)


Lesenswert?

>ATMEGA8515L 8PU!!
ist der Nachfolger

von Zi P. (zippo)


Lesenswert?

thanks,
ne idee zu meinem Anderen Problem?

von Zi P. (zippo)


Lesenswert?

so, ich habe noch ein bisschen getestet.
Ich kann an jedem Port die Taster verwenden nur mit Port D gibts 
Probleme. Ich verstehe auch nicht warum ich den D.0 als Eingang 
funktioniert und als Ausgang (also auf LED´s gesteckt) nicht!
Kann das mit dieser UART Schnittstelle zusammen hängen? Im Datenblatt 
steht da für PD0 RXD und für PD1 TXD (also wenn ich das richtig sehe 
Read und Text). Muss ich da irgendwas umstellen oder kann ich die D 
Ports nicht einfach so wie ich will verwenden?

Sind warscheinlich alles Anfängerfragen...

von Der Ich (Gast)


Lesenswert?

Port D0 & D1 wird auch als Ser. Schnittstelle verwendet.
Vielleicht ist D1 als Tx out geschaltet?

von Der Ich (Gast)


Lesenswert?

Schönes Wochenende

Der Ich macht Feierabend und läßt sich von seinem Frauchen verwöhnen.
Mit allem was dazugehört.

Gruß

von Zi P. (zippo)


Lesenswert?

Wie schon erwähnt fange ich geade erst an mit Programmierung. Ich habe 
auch gelesen dass die Ports D0 und D1 als Ser.Schnittstelle benutzt 
werden können. Nur wie kann ich das feststellen??? Ist so was intern im 
Chip festgeschrieben oder leg ich das in meinem Programm fest?
Im Programm habe ich beide als anders festgelegt gehabt.

Grus

von Jean P. (fubu1000)


Lesenswert?

Hi,
zeig mal Code her.

Gruß

von STK500-Besitzer (Gast)


Lesenswert?

>Ich habe auch gelesen dass die Ports D0 und D1 als Ser.Schnittstelle benutzt
>werden können.
>Nur wie kann ich das feststellen???
Das wird unter "alternative Portfunctions" im Datenblatt erklärt.

>Ist so was intern im Chip festgeschrieben oder leg ich das in meinem >Programm 
fest?
Dass diese Portpins auch von der seriellen Schnittstelle verwendet 
werden, ist in Hardware "gegossen". Man kann die Portpins aber auch als 
normale Ein- und Ausgänge benutzen.

>Im Programm habe ich beide als anders festgelegt gehabt.
Zeig mal dein Programm!

von Zi P. (zippo)


Lesenswert?

hier das Programm:

$regfile = "m8515.dat "
$framesize = 24
$swstack = 8
$hwstack = 32
$crystal = 3680000
$baud = 115200

Ddrd = &B11111111

Portd = &B00000000


End

ich denke mal an Primitivität nicht zu übertreffen ;-)

von Paul Baumann (Gast)


Lesenswert?

>$baud = 115200

Diese Zeile ist dafür verantwortlich, daß die serielle Schnittstelle
in Gang gesetzt wird. Schmeiß die mal raus, dann müssten alle 8 
Leuchtidioten an Port D freudig strahlen, wenn sie mit ihren Kathoden
an den Portpins und mit den Anoden an +Ub liegen.

(Ich kenne das STK 500 nicht aus eigenem Erleben und weiß nicht, ob
respektive wie die LED's verdrahtet sind)

MfG Paul

von Hubert G. (hubertg)


Lesenswert?

Wird mit $baud = 115200
nicht automatisch der UART aktiviert?

von Paul Baumann (Gast)


Lesenswert?

> PD0 RXD und für PD1 TXD (also wenn ich das richtig sehe
>Read und Text)

Nein, RXD bedeutet "Receive" d.h. Empfang und TXD "Transmit" d.h. Senden

Also, wenn Du (später dann) etwas über die serielle Schnittstelle 
senden/
empfangen willst, dann kommt an TXD das "Sendesignal" aus dem Kontroller
heraus und an RXD das Sendesignal der Gegenstelle hinein.

MfG Paul

von Thilo M. (Gast)


Lesenswert?

Hubert G. wrote:
> Wird mit $baud = 115200
> nicht automatisch der UART aktiviert?

Bascom rules! /:

von Zi P. (zippo)


Lesenswert?

was habe ich da nochmal geschrieben?? "an Enfachheit nicht zu 
übertreffen"?
Tja aber ein Noopie kann auch das einfachste Prog zur Stolperfalle 
werden! Habt vielen Dank! Die $baud raus geschmissen und schon ist es 
hell wie am Tage!

Schönes WE!!
Zippo

von Paul Baumann (Gast)


Lesenswert?

Na, da geht's ja, wenn's geht! ;-)

Freu Dich nicht zu früh, der Kompiler wird noch etliche Male husten und 
spucken. :-)

Paul

von Zi P. (zippo)


Lesenswert?

> Freu Dich nicht zu früh, der Kompiler wird noch etliche Male husten und
> spucken. :-)
glaub ich dir!!!! :D

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.