-
          
	
		
		
	
	
	
	
	
		
			
- 
	
	
		
			
			
				Neuer Benutzer
			
			
				Öfters hier
			
			
			
			 
			
				
				
				
				
				
					    
				
			
		 
		
			
				
				
				
					Suche Sleep-Instruction C-Code für ICCtiny 6.11A Compiler
				
				
						
							
							
						
						
				
					
						
							Hallo Leute, 
ich möchte einen ATtiny15l in den "Power-down"-Sleep-mode schalten. Nur klappt das irgendwie nicht? Im datasheet steht, dass der Sleep-Befehl ausgeführt werden muß. Nur wie geht das im C-Compiler ICCtiny 6.11A von imagecraft???? Wie sieht der sleep-Befehl aus im C-Code? Bitte helft mir..... 
Danke Euch. 
Gruß 
Lalupa
						
					 
					
				 
			 
			
			
		 
	 
		
	
 
- 
	
	
		
		
			
				
				
						
						
				
					
						
							Hei,
Ich kenn zwar den ICCtiny-Compiler nicht, aber lt. Datenblatt habe ich im MCUCR-Register folgendes gefunden:
Bit SM1 und SM0 : Hier kann man den Sleep-Mode einstellen.
Lt. Tabelle kann man zwischen folgenden wählen: Idle Mode (warten aber abarbeiten verschiedener Interrupts wie Timer...), ADC noise Reduction Mode (für Analogeingänge: Rauschfrei halten), Power-Down-Mode (abschalten bis zu einem ext. Interrupt).
Für den Power-Down-Mode muss man SM0 auf 0 und SM1 auf 1 setzen: Du musst also in diesem Register Bit 4 setzen und Bit 3 löschen.
Setzt man jetzt Bit 5 (Sleep Enable), so wird der Controller in den eingestellten sleep-Mode gehen.
char mcuReg = MCUCR;
mcuReg |= 0x10; //Bit 4 setzen
mcuReg &= ~0x08; // Bit 3 löschen
//einschalten des Sleep-Mode:
mcuReg |= 0x20; // Bit 5 setzen
MCUCR = mcureg; // ins Register eintragen
Schöne Grüße,
Alex
						
					 
					
				 
			 
			
			
		 
	 
		
	
 
- 
	
	
		
			
			
				Neuer Benutzer
			
			
				Öfters hier
			
			
			
			 
			
				
				
				
				
				
					    
				
			
		 
		
			
				
				
						
						
							
						
				
					
						
							Hallo,
nach nervigen Probieren hab ich es dann so hingekriegt:
MCUCR = 0x30; // Enable Sleep-Mode (Power-down-Mode)
asm("sleep"); // Schalte in Power-down-Mode
Das Setzen der Bits im MCUCR-Register kann den Sleep-Mode nur "Enablen" aber nicht starten. Das macht dann der assembler-Befehl "sleep".
Am Ende dann doch ganz simpel, wenn man mal drauf gekommen ist 
)
Trotzdem Danke für Deine Hilfe!!!!!!
						
					 
					
				 
			 
			
			
		 
	 
		
	
 
		
		
		
	
 
	
	
	
	
	
	
	
	
	
	
	
	
		
		
		
		
			
				
				Berechtigungen
			
			
				
	
		- Neue Themen erstellen: Nein
 
		- Themen beantworten: Nein
 
		- Anhänge hochladen: Nein
 
		- Beiträge bearbeiten: Nein
 
		-  
 
	
	
	Foren-Regeln
 
			 
		 
	 
 
  
 
  
 
Lesezeichen