Detta är en servodrivrutin som jag skrev för något år sedan. Den används för att skapa styrsignal till RC-servon i mjukvara. Upplösningen är 8 bitar och det borde fungera att styra så många servon som det finns gpio-pinnar på AVR-mikrokontrollern som används ( över 80 servon med atmega1280 ).
Det finns även enklare kommandon som drivrutinen kan utföra, som exempelvis flytta servon med en bestämd hastighet. Man kan även låta drivrutinen utföra en sekvens kommandon medan man gör något annat. Ett exempel på det kan vara en gå-rutin till en hexapod som exekveras medan man behandlar värden från sensorer i sitt huvudprogram.
Drivrutinen är helt interruptstyrd och fungerar oberoende av klockfrekvensen på cpun. Den kräver inte heller mycket beräkningskraft (ca 12% av all kraft när signal för 32 servon med olika positioner genereras med cpu-klocka på 8 mhz).
Länk:
http://dl.dropbox.com/u/1026013/AVR/Servo/Servo.zip
Ställ gärna frågor om ni undrar något.
Styr MASSOR med servon från en AVR-mcu
Re: Styr MASSOR med servon från en AVR-mcu
Letade precis efter något för att styra 3-6 servon, olika utslag och hastighet. Detta låter riktigt bra. Återkommer bär jag testat.
Mats
Mats