Stap 5: Bepalen van de pennen op het bord en verbinden
Dit deel is een kwestie van voorkeur, maar als ik schrijf code, ik liever niet te onthouden welke pinnen zijn aangesloten op welke functies.
Dus heb ik gedefinieerd aan de bovenkant van de code welke functies welke pinnen zijn.
Maar, omdat soms ik haal het lint en vergeet die ging waar, ik heb ook de lint-pinnen gedefinieerd.
Dus, ik heb drie sets van #defines.
Een steekproef - hier is de code waarin de motorische functies:
Eerst definiëren ik de functies. Dit zijn de namen die ik gebruik in de code.
Ze worden gedefinieerd in termen van de pinnen op het bord.
#define MOTOR_FORWARD U1_FORWARDMOTOR
#define MOTOR_REVERSE U1_REVERSEMOTOR
Volgende definiëren ik welke pinnen op het bord Ga naar welke lint kabels:
#define U1_REVERSEMOTOR RIBBON_A_8
#define U1_FORWARDMOTOR RIBBON_A_7
Ten slotte wijst het lint aan de pinnen op de arduino board. Dit kunnen krijgen geherdefinieerd als ik steek het lint in andere delen van de Raad van bestuur:
#define RIBBON_A_7 36
#define RIBBON_A_8 38
Opmerking: Wat is er met alle RIBBON_A zaken die u vragen?
Ik brak het lint in delen, en noemde hen te houden van hen:
- RIBBON_A = groot lint - 10 pins
- RIBBON_B = kleine lint - 2 pinnen
- RIBBON_C = middellange lint - 7 pins
- RIBBON_D = kleine lint - 3 pinnen
Voor mijn setup, heb ik geregeld hen in een raster van 11 x 2 op de arduino Mega zodat ze compact.
- RIBBON_A + RIBBON_B_0
- RIBBON_C + RIBBON_D + RIBBON_B_1
Tot slot, ik definiëren waar mijn knoppen gaan. Omdat ze "negatieve logica" knoppen, die is laag wanneer ingedrukt, beginnen hun namen met 'X':
#define XBUTTON_FWD 52
#define XBUTTON_REV 53