
Så jag försöker göra ett program som är så enkelt som möjligt. Programmet kör en loop och använder PulseIn-funktionen (http://www.arduino.cc/en/Reference/PulseIn) för att mäta hur länge ingången är hög (i mikrosekunder). Är ingången hög mellan 400 till 480 uS är det en godkänd puls. Samma sak om den är mellan 1349 och 1450 uS. Dessa värden har jag testat fram. Varje godkänd puls stegar upp en räknare, kommer det en puls utanför dessa gränser nollas räknaren, värdet på pulslängden och hur många pulser som godkänts innan skrivs ut på serieporten.
Med dessa intervall återstår bara problemet att pulseIn ibland rapporterar en tid på 0 mS. Filtreras dessa bort går det att få fram en sekvens av 25 godkända pulser. Men det mesta är nollor, inget som kan avkodas.
Jag får mycket störningar på rf-mottagaren, antar att det är här problemet finns. För hur ska mitt program veta var en sändning startar när det konstant kommer pulser som matchar den korta pulsen?