Babbletron - en interaktiv utforskning av datorn genererade tal (10 / 11 steg)
Steg 10: buld knappen karta
Om du vill utföra den här åtgärden, måste du först ta reda på vad knappkod genereras när varje knapp trycks. Detta kan göras genom att lägga till denna linje till loop() koden i Z_Main källfilen:
Läs knappanelen för en ny ingång
int newButton = buts.update(); denna linje är redan i filen
Serial.println (newButton); denna linje har lagts till att skriva ut Alternativknappens värde
När programmet körs nu, ser du värdet av knappen intryckt visas i displayen. Använda ett kalkylblad som ingår här, kan du mappa värdena till motsvarande knapp på panelen. Så till exempel i denna ledningar läsa exempel när "a"-knappen trycktes på panelen utskriften "3". Gör detta för varje knapp, att notera att om ledningarna är korrekt varje knapp har sin egen unika värde från 1 till antalet knappar du har.
Det sista steget att starta kartläggningen är att ändra tabellen märkta but2Allophone [] i källfilen Z_Main. Den aktuella filen ser ut så här:
byte but2Allophone [] = {_HO _DE, _IE, _A, _I, _DO, _HE, _AA, _PE, Triton,
_TS, _UE, _OR, _U, _PO, _V, _AIR, _BO, _AE, _OB,
_AU, _EB, _BE, _CH, _SE, _SH, PLY, _TH, REC, SOFIA,
_SO, _THH, _E, _ER, _ED, _GE, _OD, _F, _EE, _GO,
_OI, _OU, _OE, _M, _LE, _LO, _OO, _NE, NΣGRA, _KE,
_NGO, _EK, _NGE, _KO, _J, _OK, _Z, _PITCHUP, _W, _PA1,
_Y, _PITCHDN, _ZH, _FD2};
Den här tabellen kartor knappen värdet till fonem som ska spelas. Den första punkten i den här tabellen är exempelvis _HO, som mappar till knappen zeroth i tabellen knappen enligt diagrammet. För att bygga upp denna tabell, börja med en tom array, och gå in en vara en av knappen värde och ange motsvarande fonem i vektorn.