Slaap jij nog wel Andre.... 00:54 ;-)
Wel leuk om te lezen dat ieder voordeel weer een nadeel heeft bij de Uno. Het serieel inlezen van ontvangersignalen is inderdaad een mooie optie. Maar je heb direct geen schrijf / leesmogelijkheid meer. En voor het debuggen gebruik ik heel vaak de seriële verbinding naar de computer om te controleren wat bepaalde waarden doen.
Zelf vlieg ik met Futaba en die heeft Sbus. Ongeveer hetzelfde als een Spectrum satalliet alleen dan op 100000 baud. Ik heb geprobeerd om dit signaal in te lezen via een interrupt. Maar dat lukte niet door de korte bitlengte van 2us. Vandaar dat ik toch voor de 1000 t/m 2000us signalen heb gekozen in combinatie met een interrupt.
Wat ik wel een mooie optie vind is RASST van Futaba. Dit is een seriele uitgang waarbij alle ontvangersignalen achter elkaar worden gezet. Een soort van seriele communicatie maar dan op basis van pulse lengte. Iets wat ik nu ook gebruik voor de eerste 5 kanalen. Met 1 interrupt kan je met een RASST ontvanger alle kanalen probleemloos inlezen.
Wat ik ook geprobeerd heb is de pulsen voor de esc’s uit te sturen met de Timer1 interrupt. Dit werkt prachtig en je hoeft met het uitsturen van de pulsen ook geen rekening meer te houden. Dit gebeurde volledig automatisch. Alleen was het grote nadeel dat de hardware interrupt die ik gebruik voor het inlezen van de ontvanger signalen verstoord werd. Mooie optie maar helaas niet bruikbaar.
Op dit moment zit ik op een programmageheugen van 22332 bytes. Met 32256 bytes aan totaal heb ik dus nog ruimte genoeg. Ook met het aantal gedeclareerde variabelen blijf ik mooi binnen de grens. Voor mij is tijd nu nog echt de grote boosdoener.
Ik ben inmiddels begonnen om het kompas te implementeren in het programma. Deze heb ik bij het gebruik van een gps zeker nodig. En heb ik ook geen last meer van het driften van de yaw gyro
