www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik attiny 13 will nicht


Autor: Olli (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

nachdem ich den Mega8 und Mega 16 erfolgreich programiert habe
wiedersetzt sich der attiny 13.

Ich habe eine STK500, der Tiny 13 läst sich ansprechen und programieren
nur leider funzt mein Code nicht.

Was ist falsch?

oder liegt es an den fuse bits?

Gesetzt sind:

Int. RC Osc 9.6 MHz; Start up Time 14CK + 64 ms

CKDIV8

SPIEN (hier zeigt AVR Studio ein Häckchen und ein rotes Fragezeichen)

Autor: kutscher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann nicht funzen, weil er nichts anderes macht als

while(1);

oder?

Autor: Oliver Henrichsen (olli_henri)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hm, stimmt da fehlten Klammern..

jetzt sind sie da, aber alle Ausgänge bleiben auf LOW

Autor: MWS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wird das jetzt raten, statt programmieren ? :D

Nimm das Semikolon raus.

Autor: Oliver Henrichsen (olli_henri)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry,

manchmal ist man einfach Blind...

Habe daran schon zuviel rumprobiert...

Das Semikolon ist weg aber weiter bleibt alles auf LOW

habe ich noch mehr blinde Fehler eingebaut?

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die LEDs sind verkehrt herum.

Autor: Oliver Henrichsen (olli_henri)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Richtig, das habe ich aber leider nur in meiner Zeichnung verdreht, auf 
meinem Steckbrett sind sie richtig eingebaut. Mein Logic Tester sagt 
alles Low und auch kein Puls. Wobei wenn das mit den 500 ms hinhaut 
müste man es doch das flackern sehen können? oder stimmt was mit den 
delay Befehlen nicht?

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum liegt Pin 1 eigentlich auf VCC? Reset hat einen internen Pullup, 
der braucht das nicht. Stimmt das Schaltbild bis auf die LEDs wirklich?

Autor: Oliver Henrichsen (olli_henri)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Reset habe ich auf High gelegt weil ich an anderer Stelle gelesen habe, 
das dass notwendig ist und schaden kann es doch nicht? der Reset wird 
doch wohl auf LOW ausgelöst.
Die Vorwiederstände des LEDs haben 220 Ohm. Ansonsten steht das alles so 
auf meinem Steckbord... aus frust habe ich den Aufbau schon drei bis 
fünf mal gecheckt :-(

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oliver Henrichsen schrieb:

> Reset habe ich auf High gelegt weil ich an anderer Stelle gelesen habe,
> das dass notwendig ist und schaden kann es doch nicht?

Notwendig ist es nicht, stört aber massivst beim Programmieren in der 
Schalung.

Kondensator 100nF zwischen VCC und GND?

Autor: MWS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für die delay Funktionen muss der Compiler die Systemclockfrequenz 
wissen, hast Du die angegeben ? Ansonsten der einfachste Test: Portpin 
setzen und dann in eine while Schleife laufen lassen. PB4 sollte immer 
leuchten, da nach dem Löschen kein Delay kommt, und PB4 damit sofort 
wieder gesetzt wird.

Autor: Oliver Henrichsen (olli_henri)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So, 100nF sind jetzt auch drin, das hat auch nicht geholfen.
Ich hebe den tiny immer aus der Schaltung in die STK500 zum 
programieren, so stört der Reset auf HIGH nicht.
Die frequenz 9600000 steht doch im Make oder muß die noch wo eingetragen 
werden?
Ich setze jetzt mal PB3 auf high und schicke ihn danach in die while 
Schleife...

Autor: Vlad Tepesch (vlad_tepesch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
poste nochmal deinen aktellen code

Autor: MWS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn die DIV8 Fuse gesetzt ist, dann rennt er nur mit 1,2MHz, die Delays 
dauern dann mit angegebenen 9600000 acht mal  so lang. Trotzdem wäre 
nach 4 Sekunden ein Blinken zu sehen.

Autor: Oliver Henrichsen (olli_henri)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
So, habe jetzt nur PB3 auf HIGH gesetzt und dann endlos while(1); das 
Funktioniert!

Also ist nichts kaputt.

Das waren jetzt wohl genug Babyschritte :-)) jetzt geht auf einmal alles

Blinkt wie verrückt.

Vieleicht kann trotzdem einer was an meinem Frust lernen... und das 
ganze war zu was nutze

vielen Dank an Alle, Oliver

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.