Hallo ,

Ich hab diesen Code geschrieben , am anfang gings mit dem PWM Signal aber jetzt kommt nur 0V von PD5 woran kann es liegen dh es gibt kein PWM signal mehr??

MErci
Code:
#include <avr/io.h>
#include <inttypes.h>
#include <stdlib.h>






#define F_CPU       4433618UL                       //Oscillator-frequenz in Hz
#define BAUD        19200UL
#define UBRR_BAUD   ((F_CPU/(16UL*BAUD))-1)


/* LED */

#define LED 4                                       //PIN 5 vom PORTA als LED nennen
#define LED_ON PORTA |= (1 << LED )                 //PIN5 HIGH

void init_led (void)
                    {
                      DDRA |= (1 << LED);         //PIN5 von DDRA als ausgang
                    }





/* ADC */
#define ADC_PIN 0                                      //PIN 0 vom PORTA als ADC nennen

void adc_init(void) 
{
DDRA &= ~(1 << ADC_PIN);                               //PIN 0 vom PORTA als Eingang
ADMUX = ADC_PIN;                                         //AD-Wandlerkanal 0 (ADC0) auswählen
ADMUX |= (1<<REFS0);                              //AVCC als Referenzspannung
ADCSRA = (1<<ADEN)|(1<<ADPS2)|(1<<ADPS0);        //AD-Wandler einschalten und Prescaler = 32 einstellen
}

#define start_a2d ADCSRA |= (1<<ADSC)              //Wandlung starten


/* PWM */

// PORT AND PIN CONFIGURATION


#define PWM_PIN 5


void pwm_init(void)
{
    DDRD |= (1 << PWM_PIN);
	// normale 10-bit Fast PWM aktivieren (nicht invertiert),
    TCCR1A = (1<<COM1A0)|(1<<WGM11)|(1<<WGM10);

    // Einstellen der PWM-Frequenz auf 4 kHz (Prescaler = 1024)
    TCCR1B = (1<< CS12)  | (1<<CS10) |(1<<WGM12);

    // Interrupts für Timer1 deaktivieren
    
    TIMSK &= ~0x3c;
}



int main(void) {
    uint16_t adc_result;
	
	uint16_t z;
	uint32_t y;
    init_led();
	adc_init();
	pwm_init();
   

     while(1)
              {
                LED_ON;
				start_a2d;
				while ( !(ADCSRA & (1<<ADIF)));   //Warten bis die AD-Wandlung abgeschloßen ist
				
				adc_result = ADCL | (ADCH<<8) ;    //AD-Wert auslesen
				
				y = adc_result/1024 ;


				z= ((y*1023)/716)*1024;
				
				OCR1A = z;
		                 

              }


 }