-
        
RSS-Feed anzeigen

witkatz

Steuerung des ARX-HRCH01 per IR Fernbedienung mit NEC Protokoll (PIC18F)

Bewerten
Das Testen und Basteln mit dem des ARX-HRCH01 aus der Arexx Verlosung geht in die nächste Runde.

Unter der durchsichtigen Kopfabdeckung des ARX-HRCH01 kann man gut einen Infrarot Receiver unterbringen. Die blau getönte Kunststoffschale lässt das Infrarotlicht gut durch. Ein aus Fernbedienung und Receiver bestehendes Set bekommt man für 'n kleines Euro, ich habe das billigste Set genommen, das man unter dem Begriff 'keyes ir remote' oder 'arduino ir remote' findet. Jetzt kann man dem Roboter per Fernbedienung Befehle geben.



Das NEC Protokoll ist leicht zu entschlüsseln, man findet reichlich Erklärungen und Beispiele.

Mein Roboter hat einige Tasks gleichzeitig zu erledigen also wählte ich folgende Interrupt Strategie:
- der IR-Receiver ist mit einem Interrupteingang des PIC verbunden
- ein Interrupt auf die fallende Flanke des IR-Receivers angemeldet
- die Interruptroutine schreibt Timerwerte in Ringbuffer
- die Protokollauswertung in einer langsamen 5ms Task

Meine NEC-Sources sind angefügt. Im main wird in der Interruptroutine die Flanke ausgewertet:
Code:
    if(INTCON3bits.INT1F == 1){
        INTCON3bits.INT1F = 0;
        NecTrig();
    }
und in der Hauptschleife der IR-Kommandowert
Code:
                switch (NecCmd){
                    case 0x62: // Key 'up' -> Forwards
                        MoveLeftMotorForw(150);
                        MoveRightMotorForw(150);
                        MainStep = 10;
                        break;
                    case 0xA8: // Key 'down' -> Backwards
                        MoveLeftMotorBackw(100);
                        MoveRightMotorBackw(100);
                        MainStep = 11;
                        break;
                    case 0x22: // Key 'left'
                        MoveLeftMotorBackw(80);
                        MoveRightMotorForw(80);
                        MainStep = 11;
                        break;
                    case 0xC2: // Key 'right'
                        MoveLeftMotorForw(80);
                        MoveRightMotorBackw(80);
                        MainStep = 11;
                        break;
                    case 0x02: // Key 'OK'
                        break;
                    case 0x68: // Key '1'
                        break;
                    case 0x98: // Key '2'
                        break;
                    case 0xB0: // Key '3'
                        break;
                    case 0x30: // Key '4'
                        break;
                    case 0x18: // Key '5'
                        break;
                    case 0x7A: // Key '6'
                        break;
                    case 0x10: // Key '7'
                        break;
                    case 0x38: // Key '8'
                        break;
                    case 0x5A: // Key '9'
                        break;
                    case 0x42: // Key '*'
                        break;
                    case 0x4A: // Key '0'
                        break;
                    case 0x52: // Key '#'
                        break;
                }
Miniaturansichten angehängter Grafiken Angehängte Dateien

"Steuerung des ARX-HRCH01 per IR Fernbedienung mit NEC Protokoll (PIC18F)" bei Twitter speichern "Steuerung des ARX-HRCH01 per IR Fernbedienung mit NEC Protokoll (PIC18F)" bei Facebook speichern "Steuerung des ARX-HRCH01 per IR Fernbedienung mit NEC Protokoll (PIC18F)" bei Mister Wong speichern "Steuerung des ARX-HRCH01 per IR Fernbedienung mit NEC Protokoll (PIC18F)" bei YiGG.de speichern "Steuerung des ARX-HRCH01 per IR Fernbedienung mit NEC Protokoll (PIC18F)" bei Google speichern "Steuerung des ARX-HRCH01 per IR Fernbedienung mit NEC Protokoll (PIC18F)" bei del.icio.us speichern "Steuerung des ARX-HRCH01 per IR Fernbedienung mit NEC Protokoll (PIC18F)" bei Webnews speichern "Steuerung des ARX-HRCH01 per IR Fernbedienung mit NEC Protokoll (PIC18F)" bei My Yahoo speichern

Aktualisiert: 16.03.2018 um 10:02 von witkatz

Stichworte: nec protocol, remote Stichworte bearbeiten
Kategorien
PIC Basteln

Kommentare