PC anschalten mit ATMEGA8

Gast #781962
Lesenswert?

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 #782146
Lesenswert?

@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 #782571
Lesenswert?

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

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren