| 
          
          
          
          
           Neil 
          99.9% harmless nerd 
           Administrator 
          
            
          
          Registriert seit: Aug 2000 
          Wohnort: Delft 
          Verein: SOLARIS 
          Beiträge: 7776 
          Status: Offline 
         | 
        
          
           
          
           
          
            Hi,
  das man mit einem AVR ein Servo ansteuern kann ist mir schon etwas länger bekannt, aber wie sieht es aus mit dem einlesen eines Servosignals? Nehmen wir z.B. ein handelsüblichen Empfänger wo man Servos anschließen kann. Anstatt eines Servos klemmt man einen Eingang eines AVR ans. Was muss man alles beachten und gibt es schon eine fertige Softwareroutine die mir aus der Pulsfolge einen 8Bit Wert liefert? Kann man auch mehr als einen Servokanal einlesen? Mein Ansatz wäre den internen Zähler zu verwenden. Mit der steigenden Flanke resete ich den Zähler. Mit fallender Flanke entnehme ich den Zählerstand. Bei der nächsten steigenden Flanke wird wieder resetet.
  Gruß
  Neil
            
           
          
          
          
          
 
          Die Erde ist eine Scheibe. Egal in welche Richtung sich die Menschheit bewegt, sie geht immer auf einen Abgrund zu.  
           
          
          
         | 
      
      
      
        | 
          
          
          
          
           TheSmartGerman 
          PU-Meister 
          
          
            
          
          Registriert seit: Jun 2007 
          Wohnort: Schwabenland 
          Verein:  
          Beiträge: 245 
          Status: Offline 
         | 
        
          
           
          
           
          
            Hallo Neil,
  also das sollte das kein Problem sein. Du hast dir die Lösung ja schon vorgelegt. Also einfach einen Timer laufen lass und dann auf die Flanken triggern. 
  Anstatt den Timer zu reseten könnte man auch einfach die Timer stände speichern und dann subtraieren aber das sind Feinheiten.
  Benedikt
            
           
          
          
          
          
 
          Schrauben-sägen-löten-kleben, so vergeht viel Zeit im Leben! TheSmartGerman
           
          
          
         | 
      
      
      
        | 
          
          
          
          
           Neil 
          99.9% harmless nerd 
           Administrator 
          
            
          
          Registriert seit: Aug 2000 
          Wohnort: Delft 
          Verein: SOLARIS 
          Beiträge: 7776 
          Status: Offline 
         | 
        
          
           
          
           
          
            Hi,
  spannend wird es dann wenn man mehrere Kanäle abfragen will. Hat dann jeder Kanal seinen Timer?
  Gruß
  Neil
            
           
          
          
          
          
 
          Die Erde ist eine Scheibe. Egal in welche Richtung sich die Menschheit bewegt, sie geht immer auf einen Abgrund zu.  
           
          
          
         | 
      
      
      
        | 
          
          
          
          
           Lschreyer 
          Grand Master of Rocketry 
          
          
            
          
          Registriert seit: Nov 2006 
          Wohnort: Zeven 
          Verein: AGM, L3 
          Beiträge: 2035 
          Status: Offline 
         | 
        
          
           
          
           
          
            Hat nicht Uli beim Magier einen Eingang für ein Fernsteuerkanal vorgesehen? Vielleicht kann er dazu etwas sagen? Uli? 
  Louis
            
           
          
          
          
            
          Always keep the pointy side up! 
          
          
          
         | 
      
      
      
        | 
          
          
          
          
           Reinhard 
          Überflieger 
          
          
            
          
          Registriert seit: Sep 2003 
          Wohnort: Österreich 
          Verein: TRA #10691, AGM 
          Beiträge: 1187 
          Status: Offline 
         | 
        
          
           
          
           
          
            Hi, um das Thema nochmals aufzuwärmen. Für das einlesen mehrerer Servokanäle muss man etwas Arbeit in die Software stecken, da einem die Hardware (im Gegensatz zur Servoansteuerung) nicht alles abnimmt. Es gibt nur wenige Timer (z.B. 3 in einem Atmega8). Am einfachsten ist es bei beiden Flanken die Timerwerte zu speichern (ev. über externen IRQ getriggert) und sie danach zu subtrahieren. Der mögliche Timerüberlauf muss dabei natürlich berücksichtigt werden. Es gibt eine Input Capture Funktion die diese Tätigkeit geringfügig vereinfacht, aber sie ist oft nur einkanalig vorhanden und erfordert nach wie vor die "manuelle" Weiterverarbeitung jeder einzelnen Flanke. Gruß Reinhard
            
            
             Geändert von Reinhard am 28. Juni 2009 um 22:09 
            
           
          
          
          
         | 
      
      
      
			| 
				
				
				
				
				
			 |