Irremote codes uitlezen

Arduino specifieke Software
Berichten: 1
Geregistreerd: 31 Mrt 2015, 13:14

Irremote codes uitlezen

Berichtdoor Chrisstoffel » 15 Okt 2021, 11:59

Ik ben een leek op het gebied van Arduino codering. De bedoeling is om een servo aan te sturen via remote. Er zijn veel voorbeelden te vinden om de codes uit te lezen maar geen enkele, die ik gevonden heb, "leest" de knoppen goed uit. Bv het cijfer 1 geeft telken male een andere code. Ik weet dat dit een summiere beschrijving is.
Heeft iemand een briljant idee?

Advertisement

Berichten: 68
Geregistreerd: 04 Sep 2021, 08:31

Re: Irremote codes uitlezen

Berichtdoor RobGood » 15 Okt 2021, 14:17

Zeker niet briljant, hoor. Maar ik 'scan' altijd de knoppen en andere input acties.
Stel je hebt een 5 knoppen of andere logische signalen, van een sensor of zo, die sluit ik aan op de pins A0~A5
Zet deze pins/ports als input (staan ze al in default)

Zet die 5 ports(pinnen A0~A5) high om de internal pullups er op te zetten (kan in 1 regel PORTC |=(31<<0);
Sluit daar die ingangen op aan low active dus als je ze verbind met de GND dan is de schakelaar of sensor aan.

Vervolgens maak je in de loop een timertje van bv. 20ms. (if(millis()-verstrekentijd>20) dan ....dit kan ook met een timerinterrupt, maar dat vind ik zelf altijd teveel gedoe...

Dus 1x per 20ms. Lees je de pinnen. (in 1 regel: byte stand_van_de_inputs=PINC;)
//Die 20ms merk je niet maar filtert wel perfect het bouncen van de schakelaars en sensors eruit.

Uitkomst daarvan vergelijken met de uitkomst van de voorgaande meting.
Bv.: Byte veranderingen=LaatsteMeting ^stand_van_de_inputs;
Dan ff per knop kijken:
for (byte knop=0;knop<5;knop ++){
if(veranderingen & (1<<knop){ //is knop veranderd?
if(stand_van_de_inputs & (1<<knop){ //knop is losgelaten....(low actief!)
Actieuit(knop);
}else{ //Knop is ingedrukt
Actieaan(knop);
}
}
}
LaatsteMeting=stand_van_de_inputs; //dat moet ook nog...

De verandering dus knop ingedrukt, of knop losgelaten... moet dan een void (functie, Actieaan en Actieuit ) voor komen voor het verwerken naar je gewenste actie, de servo omzetten???
Voordeel van deze methode is dat het een relatieve kleine footprint heeft, dus heb je nog lekker veel 'arduino-power' over voor de rest van het project...
Succes Rob.

Berichten: 4064
Geregistreerd: 16 Okt 2013, 14:31
Woonplaats: s hertogenbosch

Re: Irremote codes uitlezen

Berichtdoor shooter » 15 Okt 2021, 15:17

ik heb heel veel last van het ledje dat erbij zit, en van het Rx ledje op mijn nano dat komt door overspraak, maar door afplakken van de leds nu toch stabiel systeem en in een switch case de gelezen codes naar acties vertaald.
paul deelen
shooter@home.nl

Terug naar Arduino software

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 22 gasten