hier möchte ich euch mal mein Projekt vorstellen. Ich hatte immer das Problem, dass der Kühlkörper relativ heiß wurde. Da habe ich einen Lüfter eingebaut, der lief aber immer mit ein und der selben Geschwindigkeit und das nervt mich. Ich habe mich hingesetzt und überlegt, wie ich das Problem löse und es auch für andere zugänglich mache. Da ist mir die Idee gekommen mit dem ATtiny13 und seiner PWM Steuerung, die Herausforderung lag darin, das so wenig wie möglich bzw. am besten keine Störungen entstehen und das ganze über die PTT Funktion gesteuert wird. Ich habe mir den ATtiny13 genommen und eine PWM Steuerung programmiert und für meine MAAS DX-5000 optimiert. Dabei habe ich einen Transistor ( NPN ) als zweites Hauptbauteil genommen und daraus eine Steuerung gebastelt. Anbei hänge ich den Code und die Bilder der Schaltung bzw. des Boards ran. Wer will kann auch direkt von mir die Eagle Dateien haben und auch die Main.c Datei. Der Widerstand R3 und die Diode D1 haben bei mir die Störungen der Lüfter entfernt. Ich habe die Software so geschrieben, dass der Lüfter beim drücken der PTT Taste hochfährt und beim loslassen langsam wieder herunterfährt. Jeder der will kann die Main.c Datei sich so anpassen wie er möchte. So jetzt die beiden Bilder und der Code.
Mfg
Andy
Code: Alles auswählen
#define F_CPU 8000000
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#define LED PB0
#define TASTER PB3
int main(void){
TCCR0A = (1 << WGM00) | (1 << COM0A1);
TCCR0B = ((1<<CS01) | (1<<CS00));
DDRB |= (1 << LED);
DDRB &= ~ (1 << TASTER);
PORTB |= (1<<TASTER);
sei();
while(1)
{
while ( PINB & ( 1<<TASTER ) );
for (int i=0; i<=255; i++)
{
OCR0A = i;
_delay_ms(5);
}
while (!(PINB & ( 1<<TASTER )));
for (int i=255; i>=0; i--)
{
OCR0A = i;
_delay_ms(20);
}
}
}