- SF800 Solar Speicher Tutorial         
Ergebnis 1 bis 10 von 14

Thema: PWM am ATMEGA16 tut nix

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #14
    Neuer Benutzer Öfters hier
    Registriert seit
    19.02.2006
    Beiträge
    6
    Also das PWM macht mich fertig . Der code geht so weit, deswegen auch schon mal DANKE!!!

    Wenn ich aber folgenden Code laufen lasse:
    Code:
    #include <avr/io.h>
    #include <avr/interrupt.h>
    #include <avr/delay.h> 
    #include <stdint.h>
    #include <avr/delay.h>
    #include <avr/signal.h>
    
    static void io_init(void)
    {
    
    	PORTA =0x0;		//ausgängn
    	DDRA = 0xff;
    	// PortB
    	PORTB = 0x0;	//ausgänge
    	DDRB = 0xff;
    	// PortC
    	PORTC = 0x0;	//ausgänge
    	DDRC = 0xff;	
    	// PortD
    	PORTD = 0x0;	//ausgänge
    	DDRD = 0xff;
    	ACSR = 0x80;
    }
    
    void aktPWM(){
       OCR0=20;
       OCR1A=20;
       OCR1B=20;
       DDRB=0xff;
       DDRD=0xff;
       TCCR0=(1<<WGM00)|(1<<COM01)|(1<<CS01);
       TCCR1A = (1<<WGM10)|(1<<COM1A1)|(1<<COM1B1);
       TCCR1B = (1<<CS10);
    }
    
    int main(void)
    {
    	io_init();
    	aktPWM();
    	int counter  =  0;
    	int counter1 = 50;
    	int counter2 = 68;
    	char up = 1;
    	while(1)
    	
    	{
    	
    		if(counter == 10){
    			up = 1;
    		}
    		if(counter == 100){
    			up = 0;
    		}
    		if(up == 1){
    			counter++;
    		}
    		else{
    			counter--;
    		}
    		OCR0 = counter;
    		_delay_ms(16);
    		_delay_ms(16);
    		_delay_ms(16);
    		_delay_ms(16);
    		_delay_ms(16);
    		_delay_ms(16);
    	
    	}
    	return(0);
    }
    Dann läuft das manchmal, manchmal aber nicht!?! Was kann das sein? Ich schalte mein Netzteil ein, dann wird die eine LED heller, dunkler, und immer so weiter. Die anderen beiden bleiben gleich hell.
    Und auf einmal bleibt die heller/dunkler werdende einfach stehen, oder flackert, und die anderen gehen aus, oder es gehen alle aus.

    Also ganz komisch.
    Wenn ich meinen atmega auf 1Mhz laufen lasse, also der auslieferung-einstellung, was die FUSE_Bits angeht, dann funzt es. Wenn ich den dann aber wieder auf 16Mhz mit externem Quarz laufen lasse, dann geht es nicht mehr!

    Jm. eine Idee, was das sein kann???

    DANKE!

    Ach ja, FUSE-Bits hab ich folgendes eingestellt:
    Siehe Screenshot im Anhang.
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken config.jpg  

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen