-
          
	
		
		
	
	
	
	
		
	
	
		
			
- 
	
	
		
			
			
				Erfahrener Benutzer
			
			
				Robotik Visionär
			
			
			
			
			
				
			
			 
			
				
				
				
				
				
					    
				
			
		 
		
			
				
				
						
						
				
					
						
							[Hi, HeSt,
quote="HeSt"]update:
3 NOPs vor und nach dem SEI in MLOOP bringen keine änderung des symptoms.
anfänglich hat es so ausgesehen, als ob damit das problem der kurzen impulse gelöst wäre, aber nach gut 5 durchläufen das selbe verhalten wieder. egal ob ich dann mal durch abschalten wieder von vorne angefangen hab ...[/quote]
-------------------------------------------------------
Schade dass Di nop´s nicht helfen 
.
Du verwendest den Sekundentimer SCNT offenbar für mehrere Routinen, kann da ein/der Fehler liegen? Der Wert wird doch möglicherweise von der einen Routinen gerade benutzt, und dann kommt die Interruptgeschicht - die das Wait auch benutzt. Wäre dumm.
Ausserdem wird SCNT im WAIT mit TSEC verglichen, und TSEC kann sowohl den Wert 5 haben - in CLSLATCH und OPNDOOR - als auch den Wert 1 - in DOORIMP. Da werden sich über kurz oder lang die Interrupts sicher in die Quere kommen. Mögliche Abhilfe:
In der ISR vor dem rcall wait ein push tsec machen und vor dem reti ein pop tsec ? ?
Aber bestimmt unschön ist es in STRTMR den Interrupt generell zu erlauben - "sei". Dann bekommst Du (wie schon erwähnt) nested interrupts - eine hübsche Geschichte die mit äusserster Vorsicht programmiert werden sollte/kann/muss. Sonst geht das schief  
						
					 
					
				 
			 
			
			
			
			
		 
	 
		
	
 
		
		
		
	
 
	
	
	
	
	
	
	
	
	
	
	
	
		
		
		
		
			
				
				Berechtigungen
			
			
				
	
		- Neue Themen erstellen: Nein
 
		- Themen beantworten: Nein
 
		- Anhänge hochladen: Nein
 
		- Beiträge bearbeiten: Nein
 
		-  
 
	
	
	Foren-Regeln
 
			 
		 
	 
 
  
 
  
 
Lesezeichen