Hallo, vielleicht kann mir jemand weiterhelfen? Bei meinem Atmega88 verhält sich PORTB anders als PORTC. Mit dem PORTC steuer ich die Schaltung einer 4-stelligen 7-Segment-LED-Anzeige an. Die Schaltung mit gemeinsamer Anode wie hier auf den Seiten im Tutoral abgebildetet ist. Sobald ich die Segmente auf dem PORTB umlege und dann PORTB wie PORTC ansteuere, passiert nichts mehr. Alle PORTs habe ich als Ausgänge und gleich initialisiert. Trotz aller Bemühungen im Atmega88 Handbuch etwas über die Unterschiede oder ähnliches zu finden, habe ich bisher keine Lösung für mein Problem gefunden. Zu aller letzt habe ich auch schon den Controller gegen neue ausgetauscht (unbenutzte) und bin zur simplen Programmierung mittel cbi und sbi der einzelnen PORT-Ausgänge übergegangen. Alle nicht benötigten Programmteile abgeschaltet und nur doch statische Ansteuerungen immer wieder in verschiedenen Varianten (Bit-Muster) in den Controller eingespielt. Mit PORTB bekomme ich kein vernünftiges LOW-Signal hin, High-Pegel sind in Ordnung nur die Low-Pegel liegen irgendwo dazwischen. Programmieradapter ist dann auch nicht angeschlossen. Beim Programmieren sind aktivietäten auf der Anzeige zu sehen, was darauf hinweist, das etwas mit meinen Signalen aus dem Controller im Normalbetrieb nicht stimmt. Gibt es Unterschiede in der Hard- oder Software bei als Ausgängen geschaltete PORTB und PORTC? HIERMIT FUNKTIONIERT DIE ANZEIGE: ldi tmp, 0b11111111 ; PortB (0-Input, 1-Output) out DDRB, tmp out DDRC, tmp out DDRD, tmp sbi PORTD, 4 ; Anzeige 1 anwählen sbi PORTD, 5 ; Anzeige 2 anwählen cbi PORTD, 6 ; Anzeige 3 anwählen cbi PORTD, 7 ; Anzeige 4 anwählen cbi PORTC, 0 ; Segment a anwählen sbi PORTC, 1 ; Segment b anwählen cbi PORTC, 2 ; Segment c anwählen sbi PORTC, 3 ; Segment d anwählen cbi PORTC, 4 ; Segment e anwählen sbi PORTC, 5 ; Segment f anwählen cbi PORTC, 6 ; Segment g anwählen sbi PORTC, 7 ; Segment DP anwählen HIERMIT FUNKTIONIERT DIE ANZEIGE NICHT: ldi tmp, 0b11111111 ; PortB (0-Input, 1-Output) out DDRB, tmp out DDRC, tmp out DDRD, tmp sbi PORTD, 4 ; Anzeige 1 anwählen sbi PORTD, 5 ; Anzeige 2 anwählen cbi PORTD, 6 ; Anzeige 3 anwählen cbi PORTD, 7 ; Anzeige 4 anwählen cbi PORTB, 0 ; Segment a anwählen sbi PORTB, 1 ; Segment b anwählen cbi PORTB, 2 ; Segment c anwählen sbi PORTB, 3 ; Segment d anwählen cbi PORTB, 4 ; Segment e anwählen sbi PORTB, 5 ; Segment f anwählen cbi PORTB, 6 ; Segment g anwählen sbi PORTB, 7 ; Segment DP anwählen Irgendwie seltsam!
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.