Autor |
|
|
|
BID = 84378
E-P-S Neu hier
Beiträge: 32 Wohnort: Neuruppin
|
|
Hallo zusammen,
ich versuche gerade mich in die Thematik der Mikroprozessoren einzuarbeiten und habe mir einen simplen Programmer (SP12) aufgebaut. Als Proz. benutze ich einen ATtiny 12L.
Als ersten Test habe ich an PortB 0 eine LED drangemacht und diese sollte leuchten. Das hat auch funktioniert. Dann hatte ich (zur Sicherheit) das Programm so geändert das die LED nicht leuchtet - hat auch funktioniert.
Nun habe ich das Programm so geändert das die LED blinkt. Das Prog sieht so aus (ich verwende BASCOM):
$regfile = "at12def.dat"
$crystal = 4000000
Ddrb = &B00000001
Do
Portb = &B00000001
Wait 1
Portb = &B00000000
Wait 1
Loop
End
Komischerweise funktioniert das aber nicht. Nach Anschließen der Spannung leuchtet die LED eine gewisse Zeit (zwischen 6 - 12 Sekunden) und geht dann aus, geht allerdings nicht wieder an.
Frage: Wieso? Das Programm ist doch eigentlich narrensicher...oder bin ich so blöde...?
Die Zeit haut nicht hin, die LED geht nicht an??? Bitte helft mir...
Vielen Dank |
|
BID = 84402
Midnight Stammposter
Beiträge: 256
|
|
Also was eigentlich immer funktionieren sollte wäre:
(ich lass mal regfile usw. weg)
config portb = output
do
set pinb.1
wait 1
reset pinb.1
wait 1
loop
Gruß
Simon |
|
BID = 84406
Midnight Stammposter
Beiträge: 256
|
zählen sollte man können :-(
pin b.0...
|
BID = 84408
E-P-S Neu hier
Beiträge: 32 Wohnort: Neuruppin
|
Hab's grad getestet...geht nicht.
Irgendwie ist das komisch. Ist an meiner Hardware vielleicht was nicht in Ordnung?
ich hab die Schaltung nach folgender Vorlage gebaut:
http://www.rowalt.de/mc/avr/progd.htm
(die Schaltung unter SP12). Ich hab auch peinlichst darauf geachtet die richtigen PIN's zu benutzen (Datasheet direkt von ATMEL). Hab auch alles 2 mal kontrolliert und sogar einen zweiten Prozessor getestet.
Bin etwas ratlos...
Edit: Den Fehler hatte ich bemerkt.
[ Diese Nachricht wurde geändert von: E-P-S am 19 Jul 2004 22:53 ]
|
BID = 84413
perl Ehrenmitglied
Beiträge: 11110,1 Wohnort: Rheinbach
|
Ist der Watchdog abgeschaltet ?
_________________
Haftungsausschluß:
Bei obigem Beitrag handelt es sich um meine private Meinung.
Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.
Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !
|
BID = 84415
E-P-S Neu hier
Beiträge: 32 Wohnort: Neuruppin
|
was ist der "Watchdog"?
|
BID = 84421
perl Ehrenmitglied
Beiträge: 11110,1 Wohnort: Rheinbach
|
Ein vom Programm völlig unabhängiger Hardwaretimer, der das laufende Programm abwürgen kann + soll, wenn man sich nicht um ihn kümmert.
Siehe Datenblatt.
_________________
Haftungsausschluß:
Bei obigem Beitrag handelt es sich um meine private Meinung.
Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.
Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !
|
BID = 84425
E-P-S Neu hier
Beiträge: 32 Wohnort: Neuruppin
|
Aha...mmhmmm,
wenn ich das richtig verstehe müssen da entsprechende Bits gesetzt werden, damit der Proz. weis das er von aussen getaktet wird. Aber wie bitte setze ich denn diese BIT's mit BASCOM?
|
BID = 84453
Midnight Stammposter
Beiträge: 256
|
Kannst Du im Bascom Programmer unter Lock- und Fusebits.
Gruß
Simon
|
BID = 84668
E-P-S Neu hier
Beiträge: 32 Wohnort: Neuruppin
|
aha, unter "Manuell"...
mal ne andere Frage. Mittlerweile kann ich gar nicht mehr durchführen was ich eigentlich wollte...nämlich das setzen, bzw. prüfen dieser BIT's...BASCOM erkennt nämlich einfach nicht mehr die Prozessoren (beide).
Ich hab es auch mal mit TwinAVR probiert, aber auch das kann keine Verbindung herstellen. Hab ich mir jetzt möglicherweise die Prozessoren gekillt bzw. unbewusst irgend welche falschen BIT's reingeschrieben?
Am Anfang ging zumindest das Beschreiben immer noch, auch wenn ich meist zwei Anläufe brauchte bis der Prozessor erkannt wurde.
Vielen Dank nochmals für eure Hilfe
|
BID = 84677
Jornbyte Moderator
Beiträge: 7178
|
Hast du auch einen externen Takt an den Proz gelegt?
_________________
mfg Jornbyte
Es handelt sich bei dem Tipp nicht um eine Rechtsverbindliche Auskunft und
wer Tippfehler findet, kann sie behalten.
|
BID = 84776
E-P-S Neu hier
Beiträge: 32 Wohnort: Neuruppin
|
Ja hab ich. Wie oben schon gesagt habe ich exakt den SP12 Brenner nachgebaut und auch die angegebene Schaltung verwendet. Ich nutze also einen 4MHz Quarz. Der einzige Unterschied bei meiner Schaltung sind die 7 Widerstände die in der Schaltung mit 220Ohm angegeben sind. Hier habe ich 240 Ohm verwendet - hatte grad nix anderes.
Insgesamt kommt mir die Schaltung aber dennoch etwas komisch vor. Ich verstehe z.B. nicht warum ein Widerstand (10K) von VCC zum Reset Eingang geht. Vielleicht kann mir das ja mal jemand erklären.
Hier mal ein Bild des Aufbaus. Ich habe natürlich den ATtiny 12L eingebaut.
[ Diese Nachricht wurde geändert von: E-P-S am 21 Jul 2004 11:51 ]
|
BID = 84837
Jornbyte Moderator
Beiträge: 7178
|
Wie lang ist das Kabel vom Para-Port bis zum Programmer?
Hast du an den Bioseinstellungen was geändert (EPP / ECP)?
_________________
mfg Jornbyte
Es handelt sich bei dem Tipp nicht um eine Rechtsverbindliche Auskunft und
wer Tippfehler findet, kann sie behalten.
|
BID = 84840
E-P-S Neu hier
Beiträge: 32 Wohnort: Neuruppin
|
Das Kabel (1m) geht vom Parallelport zu einer Parallelumschaltbox. Von dort ca. 15cm zu meiner Platine.
Ich hab aber auch schon versucht die Platine mit dem 15cm langen Kabel direkt an die Schnittstelle zu hängen. Mit gleichem Erfolg - bzw. Misserfolg.
An den BIOS Einstellungen hab ich nichts geändert.
|
BID = 84940
Jornbyte Moderator
Beiträge: 7178
|
Da haste nun die Fuse so verstellt das er nur noch Parallel zu proggen geht. Dazu brauchste ein STK500.
_________________
mfg Jornbyte
Es handelt sich bei dem Tipp nicht um eine Rechtsverbindliche Auskunft und
wer Tippfehler findet, kann sie behalten.
|