Forum: Mikrocontroller und Digitale Elektronik µc hängt sich auf bei meiner lüftersteuerung :/


von µc-mensch (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe mir folgenden kleinen Code geschrieben um nen 5v 
Miniatur-Lüfter über meinen Atmega8 anzusteuern.
1
int main(void)
2
{
3
  DDRC |= (1<<PC5); // LED as Output
4
  PORTC |= (1<<PC5); // turn LED off    
5
6
  DDRB |= (1<<PB0);  
7
8
  DDRD &=~ (1<<PD2); // BUTTON as Input
9
  PORTD |= (1<<PD2);
10
 
11
  while(1)
12
  {              
13
    if (!(PIND & 1<<PD2))
14
    {
15
      PORTC ^= (1<<PC5);  
16
      PORTB ^= (1<<PB0);  
17
      _delay_ms(300);
18
    }
19
  }           
20
}
Den kleinen Lüfter habe ich laut Anhang angeschlossen.
Das Gate hängt am PB0 Port. VCC zapfe ich vom VCC des Boards ab. GND 
stammt ebenfalls vom Board.

Wenn ich den Button drücke würde ich erwarten das der Lüfter anspringt 
und die LED leuchtet. Was aber passiert ist das der Lüfter anspringt, 
die LED NICHT anspringt & das Board sich nur noch über einen Reset 
"retten" lässt.
Es hängt sich praktisch auf.

Entweder man sollte grundsätzlich keine Last an das Board hängen oder 
die
Schaltung die ich umsetzen möchte ist noch nicht komplett.

Wäre für Ideen sehr dankbar. Links zum Verstehen & Nacharbeiten nehme 
ich auch gerne an.


mfg
µc

von µc-mensch (Gast)


Lesenswert?

kleiner Nachtrag: ich nutze das Olimex Starter Board.

von Ingo (Gast)


Lesenswert?

Nimm doch zum Testen nur die LED und lass den Lüfter mal weg

von µc-mensch (Gast)


Lesenswert?

Das habe ich bereits. Die LED geht an und aus. Es kann eigentlich nur an 
meiner Lüfter-Beschaltung liegen.

btw.
als Mosfet nehme ich das IRLZ34N.

Fehlt mir vielleicht irgendwo noch ein Widerstand oder eine DIODE?


mfg
µc

von Stefan (Gast)


Lesenswert?

Ich vermute eher, dass ein Abblock-Kondensator in der Stromversorgung 
fehlt.

von Toni (Gast)


Lesenswert?

BROWN-OUT, du Toni.

von Dominic A. (neo123)


Lesenswert?

Freilaufdiode?

von Peter (Gast)


Lesenswert?

Hi,
hänge mal eine Freilaufdiode parallel zum Motor.
Gr Peter.

von Karola (Gast)


Lesenswert?

evtl. ein paar Ferrit-Dödel mitverbauen.

von Uwe (Gast)


Lesenswert?

Abblock-Kondensator (SEHR nah an µC) + Pufferkondensator (nah an µC) + 
Entstörkondensato nah an Lüfter + Freilaufdiode an Lüfter (kann nicht 
schaden).
Ähh ... wieviel bring eigentlich dein Netzteil bzw. was steht denn auf 
dem Lüfter drauf (Spannung, Strom).

von Matze (Gast)


Lesenswert?

Hast du für die Verwendung von _delay_ms() auch F_CPU definiert?
Vielleicht stimmt da was nicht und der Controller verarbeitet nur das 
Delay zu langsam...

von µc-mensch (Gast)


Lesenswert?

1. So sieht der "Kopf" meines Codes aus:
#include <avr/io.h>
#define F_CPU 8000000
#include <util/delay.h>

2. Freilaufdiode in Form eines BYW29E habe ich nun am Lüfter hängen. > 
Hat nichts gebracht :(

3.
---
Ähh ... wieviel bring eigentlich dein Netzteil bzw. was steht denn auf
dem Lüfter drauf (Spannung, Strom).
---

> ROFL ich Anfänger. Ich habe das Board über meinen USB Port gespeist. Nachdem ich 
ein Netzteil angeschlossen hab läuft es wie ne 1.

DAAAAANKKEEEE :O) funzt alles 1a!!!


mfg
µc-mensch

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
Noch kein Account? Hier anmelden.