Forum: Mikrocontroller und Digitale Elektronik STK500 Port Treiber


von L0rd (Gast)


Angehängte Dateien:

Lesenswert?

Hallo !

Ich habe mir nen DA-Wandler mit R/2R-Netzwerk gebaut, als Treiber 
verwende ich
zwischen Atmega16-Port und diesen R/2R-Netzwerk nen 74HCT541N und solage 
ich die Schaltung von STK500 Betrieben habe hatte die funktioniert.

Jetzt habe ich das alles zusammen auf einer separaten Platine aufgebaut 
- Atmega16, 74HCT541N und R/2R-Netzwerk. Und das Problem ist das der 
Port an dem 74HCT541N "hängt" nicht auf "low" gehen will. Mit DDRC=0xFF; 
definiere ich ja nen Ausgang.

Also wieso geht er in meiner Schaltung nicht auf low, in STK500 aber 
schon ?
Verwende ich nen falschen Treiber ?
Ist das vielleicht ein Einschalt-Problemm ?

von Ingo (Gast)


Lesenswert?

Hi!

hast Du die JTAG-Fuse noch gesetzt? Die muss deaktiviert werden, wenn Du 
Port C normal benutzen willst.

Gruss, Ingo.

von L0rd (Gast)


Angehängte Dateien:

Lesenswert?

In AVR Studio in ISP-Mode steht kein Hacken bei JTAGEN.

in Codevision sieht es so aus s.Bild

ich habe versucht in Codevision es auf 0 zu setzen (ohne Flash neu mit 
Programm zu beschreiben) und als dann auf "0" war, hat meine Schaltung 
genau so nicht funktioniert wie am Anfang :)



von Läubi (Gast)


Lesenswert?

Hast du zufällig Eingang/Ausgangs regsiter nicht richtig gesezt, das 
Problem hatte ich auch mal mit den lustigsten Ergebnissen

von L0rd (Gast)


Lesenswert?

so
1
DDRC=0xFF;
ist das doch richtig ? :)

Kann man fuses irgendwie in WinAVR setzen ?

Wo kann man eigentlich in avrdude fuses setzen ?


von L0rd (Gast)


Lesenswert?

Da sind keine fuses schuld, denn am PortD geht das genau so nicht wie am 
PortC.

Stecke ich Atmega16 wieder ins STK500 gehen alle ports.

von Dirk (Gast)


Lesenswert?

Die Fuses setzt du am besten im Avr Studio z.B. JTAGEN = 0. Pruefe mal 
die Spannungen an VCC, AVCC, RESET.

von L0rd (Gast)


Angehängte Dateien:

Lesenswert?

Die Spannungen sind ok, d.h. 5V

Nun habe ich auch von AVR Studio ein Foto gemacht, sollte es so aussehen 
?

Diese 0xDF 0xFF bits ist das ne gekürzte fassung von allen fusebits ?


von Karl heinz B. (kbucheg)


Lesenswert?

So, so
Auf dem STK500 geht alles und auf deiner selbst
entwickelten Platine gehts nicht.

Was wird dann der logische Schluss sein?

von Winfried J. (Firma: Nisch-Aufzüge) (winne) Benutzerseite


Lesenswert?

JTAG ausschalten an ATMega32

Wenn dieses Bit null ist, ist die JTAG Schnittstelle aktiviert, wenn 
JTAGEN Fuse (Sicherungs_Bit)programmiert wird.
Wenn dieses Bit eins ist, ist die JTAG Schnittstelle abgeschaltet. Um 
unabsichtliche Abschaltung  oder Aktivierung der JTAG Schnittstelle zu 
vermeiden, muss einer getimten Sequenz gefolgt werden, um dieses Bit zu 
ändern: Die Applikationssoftware muß dieses Bit auf den gewünschten Wert 
zweimal innerhalb vier Zyklen schreiben , um seinen Wert zu ändern. Wenn 
die JTAG Schnittstelle nicht mit anderen JTAG Schaltkreisen verbunden 
ist, sollte das JTD Bit auf eins gesetzt sein. Der Grund dafür: Dieses 
soll statischen Strom am TDO Pin im JTAG Schnittstelle vermeiden .

von Läubi (Gast)


Lesenswert?

Er hat doch shcon geschrieben das mitm Anderem Port auch nicht geht...
Ich vermute mal auf dem Baord sit irgnewo murks... (Fehlender 
Masseanschluss... kalte Lötstelle...)

von L0rd (Gast)


Lesenswert?

Es geht übrigens kreuzweise, d.h.

PortC meine Schaltung nach LEDs vom STK500 geht,
PortC STK500 nach LED meine Schaltung geht auch.

Wenn ich Atmega aber rausholle und dann einschalte dann brennen die LEDs 
auch, es liegt an 74HCT541N der springt irgendwie selbst beim 
einschalten an manchen pins auf 5V (pis hängen praktisch in der luft 
ohne Atmega), deswegen brennt es. Wenn ich ne stückdraht neme und die 
dann alle auf masse "bringe" (einfach durch antipen) dann gehen LEDs 
aus.
Es passiert halt da was beim einschalten.

Die durchgänge, kalte lötstellen habe ich alle geprüft, VCC überall ist 
ok, GND auch, die Schaltung bearbeite schon seit 2 Wochen und ich bin 
kein Anfänger.


von Karl heinz B. (kbucheg)


Lesenswert?

OK. Diesmal nicht durch die Blume.

Dein Problem liegt irgendwo in deiner Schaltung begraben.
Entweder hast du einen grundsätzlichen Fehler in der Schaltung
oder du hast einen Fehler im Aufbau gemacht.


Solange du aber nichts von beidem herzeigst wird das
hier aber niemand kontrollieren können.

Damit kein Missverständnis aufkommt: die komplette Schaltung.
Also auch der µC Teil


Und nochwas: Eingänge die in der Luft hängen beweisen
gar nichts.

von L0rd (Gast)


Angehängte Dateien:

Lesenswert?

Ein Foto vom betrofenen Bereich im Anhang.

Komplette beschreibung hier als zip :)
http://www.mikrocontroller.net/attachment/20153/regelung.zip

von ... (Gast)


Lesenswert?

Benutzt Du auf Deinem STK500 auch einen 16MHz Quartz oder läuft der µC 
im STK500 mit einem anderen Takt als in Deiner Schaltung?
Wenn nicht: evtl. Timing-Problem?

von L0rd (Gast)


Lesenswert?

STK500 hat auch nen 16MHZ Quarz und der ist auch so konfiguriert (als 
extern).

Kann jemand ne alternative für 74 HCT 541 N vorschlagen ?

von Karl H. (kbuchegg)


Lesenswert?

Hmm.
Layout ist ok. Die klassischen Fehler (AGND, AVcc nicht
angeschlossen, keine Block-Kondis) sind alle nicht gemacht
worden.
Ich hab keinen 541 da, drum kann ich das nicht ausprobieren.
Ich wüsste allerdings keinen Grund, warum das nicht gehen
sollte.

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.