Hallo, ich habe ein ganz merkwürdigen Fehler der Pin 0 an meinem PortB meines Atmega8 scheint irgend wie defekt zu sein oder ich stehe auf dem Schlauch? Folgendes Testprogramm: #include <stdint.h> #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> int main(void) { DDRB = 0xFF; while (1) { PORTB = 0xFF; _delay_ms(1); PORTB = 0x00; _delay_ms(1); } return 0; } Sinn des Programm naja jede Millisekunde den Ausgang an PortB togglen. Ja das funktioniert auch ganz schick an PortB nur nicht beim ersten Pin? Der ist dauerhaft auf high. Es liegt auch nicht an der Schaltung, habe auch direkt am Beinchen des MCU gemessen.Ich habe die DIL 28 Variante es sollte das Beinchen unten links sein wenn man von oben drauf blickt. :D Hat da jemand einen Tipp, oder habe ich den einfach irgend wie geschrottet? Vielen Dank toffer
Hi, habe auch ein Atmega 8 und dein Programm mal aufgespielt. Bei mir kommt an allen Pin^s das Rechtecksignal. Von daher würde ich schon fast sagen, dass bei deinem Atemga Pin 0 an Port B defekt ist. grüße
Das wäre ja echt blöd, bin nen relativer noob noch inm embedded bereich, aber passiert sowas oft? bzw wodurch kann sowas passieren? Gruß toffer
Passieren kann sowas wenn eine zu große Last an den Pin gehängt wird, also wenn mal mehr als 40mA drüber fließen oder einfach Fertigungsfehler was aber eher unwahrscheinlich ist. Aber zuvor würde ich jetzt mal das Programm explizit für Pin 0 schreiben und mal nur dort das Signal ausgeben. grüße
So etwas habe ich auch schon hingekommen. Bei mir durch zurückinduzierte negative Spannung. PWM mit 16kHz. Bist du dir sicher, dass das alles ist? Nicht irgendwo noch einen timer initialisiert? i2c o.ä.?
Ja das ist ganz sicher alles, habe extra nen neues Projekt in Eclipse aufgemacht, da ich im eigentlichen Programm halt diesen Fehler hatte. Ist wirklich nur eine C-Datei mit dem obigen Inhalt. Gruß toffer
Guten Morgen, ja ist DIP gesockelt, ich habe aber mit dem Oszi direkt am Beinchen gemessen, also von oben sozusagen und auch an der Stelle wo ich den Port rausführe, es ist an beiden Stellen gleich. Die Verbindung ist auch direkt und von mir auch schon 200mal durchgemessen, da ich erst dachte dort liegt der fehler. Aber wie gesagt ich habe halt auch direkt das Signal am Beinchen gemessen. Gruß Toffer
Hallo. Hatte ich auch schon am Mega8, Ausgang ging, aber Eingang nicht, hatte den Eingang ein wenig mit 12V gebrutzelt, gefällt dem µC natürlich überhaupt nicht. Nimm nen anderen Port, das behebt das Problem. CU Bernd
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.