Hi, bin neu hier im forum und in der mikrocontrollertechnik. also hab einen atmega8l8. doch leider geht nichts was ich programmiere, keine ahnung warum das nicht funktioniert. also ich muss sagen, dass ich den mal falschrum geolpt habe, der war schon relativ heiß. kann das sein das der dadurxch schon kaputt ist? kann man das irgendwie testen ob ein mc noch funktinoert?
>kann man das irgendwie testen ob ein mc noch funktinoert?
Wie schaut es denn mit dem Takt aus, hast du ein Quarz verwendet? Prüfe
mal, ob der schwingt.
>kann das sein das der dadurxch schon kaputt ist? Joh. >kann man das irgendwie testen ob ein mc noch funktinoert? Richtig rum reinstecken und programmieren ;)
nee, quarz hab ich nicht verwendet. wie will ichn das prüfen ob der schwingt? (hab noch nie ein quarz in der hand gehabt)
> wie will ichn das prüfen ob der schwingt?
Ok, mach erst mal was anderes. Steck den µC richtig rein und gucke mal,
wieviel Strom der zieht.
ich würd einfach davon ausgehen das er ausgelitten hat und nen Neuen nehmen. Selbst wenn er es noch nicht komplett aufgegeben hat sind Schäden mehr als wahrscheinlich und wer will sich schon mit einem halbseidenen Controller rumärgern? bye Frank
na der strom (oder besser gesagt ich hab die spannung gemessen läuft noch überall durch, wo sie vorher auch durch ist er zieht ungefähr 4mA
4 mA - das sieht doch aus, als sei er im Großen und Ganzen noch gut, und der Oszillator scheint zu laufen. Ich würd auch einen neuen nehmen. Einen krummgeschlagenen Nagel wirfst Du ja auch weg.
naja ich hab aber keinen neuen.müsste da erst wieder neu bestellen. und wenn ich einen anderen nehmen würde müsste ich ja wieder alles uimlöten
;******************************************************** .include "m8def.inc" ;******************************************************** ldi r16, 0xFF ;0xFF ins Arbeitsregister r16 laden out DDRB, r16 ;Inhalt von r16 ins IO-Register DDRB ausgeben ldi r16, 0b00000000 ;0b11111100 in r16 laden out PORTD, r16 ;r16 ins IO-Register PORTB ausgeben ende: rjmp ende ;Sprung zur Marke "ende" -> Endlosschleife so sieht mein programm aus. ist da was falsch dran?
Martin K. wrote:
> ist da was falsch dran?
Komm drauf an, was es machen soll...
Du setzt die Port-Direction von PortB und setzt dann die Datenbytes von PortD, das kann nicht gut sein. und in der 3. Codezeile stimmt der Kommentar nicht mit dem Code überein :-)
ja hab ich ganz vergessen. also die led an prot d soll leuchten
Dann solltest du auch PORTD als Ausgang einstellen. Leuchten wird es, wenn die LED von VCC zum Port geschaltet sind.
Wie gegen plus geschaltet? achso: ich denke der müsste noch gehen weil ich den programmspeicher ja noch auslesen kann
Martin K. wrote: > Wie gegen plus geschaltet? > > achso: > > ich denke der müsste noch gehen weil ich den programmspeicher ja noch > auslesen kann Haaaalllooo Guckguck! Dein Code ist Müll! Du setzt die Datenrichtung von PORTB, aber das Datenregister von PORTD. Das ist ein Unterschied. Aller Wahrscheinlichkeit nach, läuft das Dingen noch. "Gegen Plus geschaltet" heißt, dass die LED mit einer Seite an + hängt, und mit der andern am Mikrocontroller. Irgendwo sitzt dann noch ein Vorwiderstand.
eigentlich hängt sie mit dem plus am mc das mit dem port b da hab ich mich verschrieben. ich meine schon d
Assembliere mal das Programm im Anhang und schieb' das mal in Deinen Mega8. Damit sollten alle Ausgänge irgenwie "klappern", jeder mit einer anderen Frequenz, teils im Hörbereich, teils im Blinkbereich. Kannst Dir ja aus LED und Widerstand eine Art "Prüfstift" basteln und damit alle Ausgänge auf Signale prüfen. Auch ein Kleinlautsprecher mit in Reihe geschaltetem Elko 100µF könnte als Testwerkzeug helfen. ...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.