PC anschalten mit ATMEGA8

Gast #781962
Hallo,

versuche per ATMEGA8 meinen PC anzuschalten. Als Pin auf dem PC 
Motherboard benutze ich den Power-On Eingang, der normalerweise vom 
Taster an der Frontplatte auf Ground gezugen wird um den PC zu starten. 
Die Verkabelung in etwa wie folgt:
1
  M8 Vcc  ----------------> PC +5 V suspend
2

3
  M8 PD7  ------ 1k ------> PC Pwr-on
4

5
  M8 GND  ----------------> GND PC

Im Code (AVR GCC) schalte ich erst den Pin auf Ausgang:
1
DDRD |= (1<<PD7);

und später im Programm möchte ich den Ausgang kurzzeitig auf Low ziehen:
1
PORTD &= ~(1<<PD7);
2
_delay_ms(10);
3
PORTD |= (1<<PD7);

Leider schaltet der PC nicht an. Verbinde ich in obiger Schaltung 
allerdings kurzzeitig PD7 am ATMEGA und GND mit einem Stück Draht, so 
springt der PC sofort an. Der 1k Widerstand als Schutzwiderstand scheint 
nicht zu hoch zu sein.

Hat irgendjemand vielleicht eine Idee wo der Fehler liegt?

Gerhard
Gast
@Niels:
Wie gesagt, wenn ich an PD7 mit einem Stück Draht kurz auf Masse ziehe 
(an der Stelle, die ja auch der uC auf Masse ziehen sollte), bootet der 
PC sofort. Dann bin ich auch vor dem 1K Widerstand. Das mit der Diode 
ist sicher keine schlechte Idee.

@Jörg:
hatte auch schon ein deutlich längeres Delay drin, nutzt nichts.

Der Pin am PC hat 3.6 Volt. So wie oben beschrieben sollte doch der Pin 
floaten und nur beim Schalten den Ausgang auf Masse ziehen, richtig?

Ich sollte evtl. sicherheitshalber den Pin am ATMEGA auf Eingang lassen 
(wegen des hohen Eingangswiderstands) und nur im Bedarfsfall auf Ausgang 
umschalten, auf GND ziehen und wieder zurück auf Eingang schalten. Ist 
aber sicher nicht der Grund, warum es nicht funktioniert.

Gerhard
Gast
Hallo und Danke für die Tips,

nur zur Vollständigkeit:

Das Anschalten des PCs funktioniert wie ganz oben beschrieben, hatte 
allerdings den Code zum Initialisieren der Pins in einer eigenen Init 
Routine die ich blöderweise vergessen habe, am Anfang der Main Funktion 
aufzurufen. So was blödes!

Gerhard

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.