Stap 3: Montage en codering
Zodra u hebt voltooid montage van onderdelen komt er het grootste deel dat is programming.start met het initialiseren als volgens uw pincode uit de arduino bord met nRF en h-bridge.don't vergeten toe te voegen de bibliotheek voor nRF.The dll-bestand is gekoppeld.
- #include
- #include "nRF24L01.h"
- #include "RF24.h"
- Const uint64_t pijpen [2] = {0xF0F0F0F0D2LL, 0xF0F0F0F0E1LL};
- 13 is SCK op nRF
- 12 is MISO op de nRF
- 11 is MOSI op nRF
- 10 is CSN op nRF
- RF24 radio(9,10); 9 is CE op nRF
Nadat de initialisatie er is een pijpleiding tussen twee arduino van moet het hetzelfde zijn op zowel de zender als de ontvanger. nu het initialiseren van de radio en het zal beginnen het gesprek tussen de twee pijpleidingen.
- void setup(void)
- {Serial.begin(9600);
- radio_initialize();
- Serial.println ("RADIO BEGON");}
Nu in functie van de lus wordt gecontroleerd als ontvangt seriële zal beschikbaar dan beginnen met het verzenden gegevens.
- char [data] = "1";
- void loop
- {if(millis()%1000==0)
- {gegevens [0] ++;
- Serial.Print ("verzenden:");
- Serial.Print(data[0],DEC);
- BOOL ok = radio.write (gegevens, 2);
- Als (ok) Serial.println("ok\n\r");
- anders Serial.println("failed\n\r");
- if(data[0]=='6') gegevens [0] = '1'; } }
- VOID radio_initialize(void)
- {radio.begin();
- radio.openWritingPipe(pipes[1]);
- radio.openReadingPipe(1,pipes[0]);
- radio.startListening(); }
Ontvangen (RX)
Beginnen met het initialiseren van motor pinnen in het ontvangen van deel.
- RF24 radio(0,10);
- Const uint64_t pijpen [2] = {0xF0F0F0F0D2LL, 0xF0F0F0F0E1LL};
- int m1e = 3;
- int m11 = A2;
- int m12 = A3;
- int m2e = 5;
- int m21 = A4;
- int m22 = A5;
- int m3e = 6;
- int m31 = 7;
- int m32 = 8;
- int m4e = 9;
- int m41 = a1 worden verkregen;
- int m42 = A0;
- ongeldig setup(void) {}
- pinMode (m1e, OUTPUT);
- pinMode (m11, OUTPUT);
- pinMode (m12, OUTPUT);
- pinMode (m2e, OUTPUT);
- pinMode (m21, OUTPUT);
- pinMode (m22, OUTPUT);
- pinMode (m3e, OUTPUT);
- pinMode (m31, OUTPUT);
- pinMode (m32, OUTPUT);
- pinMode (m4e, OUTPUT);
- pinMode (m41, OUTPUT);
- pinMode (m42, OUTPUT);
- Serial.begin(9600); radio_initialize();
- Serial.println ("RADIO BEGON");
- }
De pin-m1e is de pin inschakelen van motor 1 en als het is voor andere 3 motoren.
nu is start met radio Lees opdracht de seriële zal lezen en als het ontvangen dan het zal overbrengen naar de function.here de code voor enige vooruit functie.
- char gegevens [1] = "";
- ongeldig loop(void) {}
- if(radio.available()) {radio.read (gegevens, 1);
- Serial.Print ("ontvangen =");
- Serial.println(data[0]);
- if(data[0]=='1') {Serial.print("Came");
- vooruit();
- VOID radio_initialize(void) {radio.begin();
- radio.openWritingPipe(pipes[1]);
- radio.openReadingPipe(1,pipes[0]); radio.startListening(); }
- VOID vooruit()
- {analogWrite(m1e,230);
- digitalWrite (m11, laag); Motor2
- digitalWrite (m12, hoge);
- analogWrite(m2e,250);
- digitalWrite (m21, laag); Motor 3
- digitalWrite (m22, hoge);
- analogWrite(m3e,250);
- digitalWrite (m31, laag); motor1
- digitalWrite (m32, hoge);
- analogWrite(m4e,230);
- digitalWrite (m41, hoge); motor4
- digitalWrite (m42, laag);
- }
Niet gewoon kopiëren en verleden .it zal alleen werken volgens uw connections.i hoop dat u zult begrijpen de code eenvoudig als u over de adruino van coding.here weet is de code van de steekproef voor beide Tx en Rx.now de seriële monitor in zowel Tx en Rx kant open en 1 van Tx en het verzenden ontvangt op Rx seriële monitor window.as is het ander getal initialiseren we 1 in de code voor voorwaartse functie nu initialiseren 2 voor rug en zo verder.