Stap 4: Eerste Program: het lezen van de ontvanger
Eerst, schrijf uw help-bestand laten weten wat het programma is voor u, welke Raad u gebruikt, houden een logboek van de verandering van de kleine en alledaagse of grote toevoeging/wijziging een nieuw gedateerd bestand maken. Ik opsla een bestand elke dag ik werk op de software en houd een aparte veranderingslogboek. Dit lijkt een pijn, maar wanneer u hulp nodig hebt maakt het gemakkelijk om gewoon uw bestanden indienen en vragen.
Ten tweede, maken uw constante pin locatie variabelen en hun pinMode staat in de instellingen.
Ten derde, maak de variabelen en de functies van de pulseIn om te lezen en de ontvanger van de RC-waarden opslaan.
Ten vierde, het commentaar van uw code als u nog niet!
Ten vijfde, nu de serial baud-rate in het setup-blok setup en toevoegen uw afdrukfuncties in het terminalvenster wilt weergeven.
Ten zesde, bespaar het!
Laat nu aansluiten van de hardware, was ik met behulp van een Mega2560 voor deze eerste testen omdat het nieuw was en ik wilde om te testen het uit een beetje. Als u een Uno zojuist de pin locatie variabelen wijzigen. Alle 8 kanalen waren verbonden via mannelijke en vrouwelijke dupont kabels aan op de digitale pennen op de Arduino. Toen ik de 5V en ground aangesloten op hun gerespecteerde locaties. De ontvanger was al gebonden aan de zender, dus na het aanzetten van de zender, Arduino, upload de schets, en we zijn klaar om te zien van de waarden in het terminalvenster. Zie mijn onderstaande code. Ik heb ook zeer minimale commentaar dus voel je vrij om vragen als je het nodig.
Dit zal zal schetsen Lees alle 8 kanalen van een RC reciever en input van de waarden via seriële monitor.
Geprogrammeerd voor de Arduino MEGA 2560!!!
Variabelen definiëren:
Const int chA = 22; Constante variabelen met betrekking tot pin locaties
Const int chB = 24;
Const int chC = 26;
Const int chD = 28;
Const int chE = 30;
Const int chF = 32;
Const int chG = 34;
Const int chH = 36;
int ch1; Variabelen opslaan en weergeven van de waarden van elk kanaal
int ch2;
int ch3;
int ch4;
int H5;
int H6;
int H7;
int ch8;
de setup-routine wordt uitgevoerd zodra wanneer u drukt op reset:
VOID Setup {}
Initialiseer seriële communicatie met 9600 bits per seconde:
Serial.begin(115200);
Set input pinnen
pinMode (chA, INPUT);
pinMode(chB,INPUT);
pinMode(chC,INPUT);
pinMode(chD,INPUT);
pinMode(chE,INPUT);
pinMode(chF,INPUT);
pinMode(chG,INPUT);
pinMode(chH,INPUT);
}
Hoofdprogramma
void loop {}
Lees de ingangskanalen
CH1 = pulseIn (chA, hoge); Lezen en opslaan van kanaal 1
Serial.Print ("Ch1:"); Tekenreeks op seriële Monitor te onderscheiden van variabelen weergeven
Serial.Print (ch1); Afdrukken in de waarde van kanaal 1
Serial.Print ("|");
CH2 = pulseIn (chB, hoge);
Serial.Print ("Ch2:");
Serial.Print (ch2);
Serial.Print ("|");
H3 = pulseIn (chC, hoge);
Serial.Print ("Ch3:");
Serial.Print (ch3);
Serial.Print ("|");
CH4 = pulseIn (chD, hoge);
Serial.Print ("Ch4:");
Serial.Print (ch4);
Serial.Print ("|");
H5 = pulseIn (chE, hoge);
Serial.Print ("H5:");
Serial.Print (H5);
Serial.Print ("|");
H6 = pulseIn (chF, hoge);
Serial.Print ("H6:");
Serial.Print (H6);
Serial.Print ("|");
H7 = pulseIn (chG, hoge);
Serial.Print ("H7:");
Serial.Print (H7);
Serial.Print ("|");
ch8 = pulseIn (chH, hoge);
Serial.Print ("Ch8:");
Serial.println (ch8);
}